lkml.org 
[lkml]   [2013]   [Jul]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [tip:timers/core] hrtimers: Support resuming with two or more CPUs online (but stopped)
On 05/07/13 11:25, Thomas Gleixner wrote:
> On Fri, 5 Jul 2013, David Vrabel wrote:
>
> You failed to CC Artem :(
>
>> On 05/07/13 10:30, Artem Savkov wrote:
>>> This commit brings up a warning about a potential deadlock in
>>> smp_call_function_many() discussed previously:
>>> https://lkml.org/lkml/2013/4/18/546
>>
>> Can we just avoid the wait in clock_was_set()? Something like this?
>>
>> 8<------------------------------------------------------
>> hrtimers: do not wait for other CPUs in clock_was_set()
>>
>> Calling on_each_cpu() and waiting in a softirq causes a WARNing about
>> a potential deadlock.
>>
>> Because hrtimers are per-CPU, it is sufficient to ensure that all
>> other CPUs' timers are reprogrammed as soon as possible and before the
>> next softirq on that CPU. There is no need to wait for this to be
>> complete on all CPUs.

Unfortunately this doesn't look sufficient. on_each_cpu(..., 0) may
still wait for other calls to complete before queuing the calls due to
the use of a single set of per-CPU csd data.

David


\
 
 \ /
  Last update: 2013-07-05 16:41    [W:0.152 / U:0.504 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site