lkml.org 
[lkml]   [2014]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRace condition in HR timers that cause double insertion and hard lockup -- all latest versions
Date
Hi,

I opened a bug in https://bugzilla.kernel.org/show_bug.cgi?id=83601 for this subject with full description.
There is also a short fix patch for kernel/hrtimer.c file.
Even if this bug occurs rary, however it resolves system hard lockup option.

I suspect that it was targeted by mistake to not active list (timers_realtime-clock@kernel-bugs.osdl.org).
Following is the fix patch based on kernel 3.16.1 (just simple):
diff -uNr a/kernel/hrtimer.c b/kernel/hrtimer.c
--- a/kernel/hrtimer.c 2014-08-31 20:59:52.177452123 +0300
+++ b/kernel/hrtimer.c 2014-08-31 21:02:14.972166540 +0300
@@ -941,7 +941,7 @@
if (!timerqueue_getnext(&base->active))
base->cpu_base->active_bases &= ~(1 << base->index);
out:
- timer->state = newstate;
+ timer->state = (newstate | (timer_state & HRTIMER_STATE_CALLBACK));
}

/*

Is there a chance for this patch fix to insert into next kernel release?

Thanks

Itzcak Pechtalt


\
 
 \ /
  Last update: 2014-09-02 18:41    [W:0.712 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site