lkml.org 
[lkml]   [2007]   [Jul]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] NTP: remove clock_was_set() call to prevent deadlock

* Thomas Gleixner <tglx@linutronix.de> wrote:

> The clock_was_set() call in seconds_overflow() which happens only when
> leap seconds are inserted / deleted is wrong in two aspects:
>
> 1. it results in a call to on_each_cpu() with interrupts disabled
> 2. it is potential deadlock source vs. call_lock in smp_call_function()
>
> The only possible side effect of the removal might be, that an
> absolute CLOCK_REALTIME timer fires 1 second too late, in the rare
> case of leap second deletion and an absolute CLOCK_REALTIME timer
> which expires in the affected time frame. It will never fire too
> early.
>
> This was probably observed by the reporter of a June 30th -> July 1st
> hang: http://lkml.org/lkml/2007/7/3/
>
> A similar problem was observed by Dave Jones, who provided a screen
> shot with a lockdep back trace, which allowed to analyse the problem.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

looks good to me.

Acked-by: Ingo Molnar <mingo@elte.hu>

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-07-03 21:45    [W:0.052 / U:1.504 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site