Re: [Question]: try to fix contention between expire_timers and try_to_del_timer_sync

From: qiaozhou
Date: Thu Aug 03 2017 - 23:15:47 EST




On 2017å08æ04æ 07:32, Vikram Mulukutla wrote:

Hi Qiao,


On 2017-08-01 00:37, qiaozhou wrote:
On 2017å07æ31æ 19:20, qiaozhou wrote:



<snip>

=====================================================
Also apply Vikram's patch and have a test.

cpu2: a53, 832MHz, cpu7: a73, 1.75Hz
Without cpu_relax bodging patch
=====================================================
cpu2 time | cpu2 counter | cpu7 time | cpu7 counter |
==========|==============|===========|==============|
16505| 5243| 2| 12487322|
16494| 5619| 1| 12013291|
16498| 5276| 2| 11706824|
16494| 7123| 1| 12532355|
16470| 7208| 2| 11784617|
=====================================================

cpu2: a53, 832MHz, cpu7: a73, 1.75Hz
With cpu_relax bodging patch:
=====================================================
cpu2 time | cpu2 counter | cpu7 time | cpu7 counter |
==========|==============|===========|==============|
3991| 140714| 1| 11430528|
4018| 144371| 1| 11430528|
4034| 143250| 1| 11427011|
4330| 147345| 1| 11423583|
4752| 138273| 1| 11433241|
=====================================================

It has some improvements, but not so good as Vikram's data. The big
core still has much more chance to acquire lock.

Thanks,
Vikram


Thanks for your data! I'll check on one of our other platforms to see
if I see similar behavior. This may have something to do with the
event-stream on your platform or the A53 revision as Sudeep pointed
out here [1] - something to check I suppose...
Thanks for the reminder. Our HW IP has already fixed the bug Sudeep mentioned. I'm also checking the global exclusive monitor implementation on our platform with our ASIC guys, and it might be related with snoop transaction, or implement details in global exclusive monitor.

Thanks a lot.
Qiao

Thanks,
Vikram

[1] - https://lkml.org/lkml/2016/11/21/458