summaryrefslogtreecommitdiffstats
path: root/virt
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2016-10-24 11:41:56 +0200
committerThomas Gleixner <tglx@linutronix.de>2016-10-25 16:27:39 +0200
commitb831275a3553c32091222ac619cfddd73a5553fb (patch)
tree83869391da1625c235e75b4584dfcff9b0b189ca /virt
parentLinux 4.9-rc2 (diff)
downloadlinux-b831275a3553c32091222ac619cfddd73a5553fb.tar.xz
linux-b831275a3553c32091222ac619cfddd73a5553fb.zip
timers: Plug locking race vs. timer migration
Linus noticed that lock_timer_base() lacks a READ_ONCE() for accessing the timer flags. As a consequence the compiler is allowed to reload the flags between the initial check for TIMER_MIGRATION and the following timer base computation and the spin lock of the base. While this has not been observed (yet), we need to make sure that it never happens. Fixes: 0eeda71bc30d ("timer: Replace timer base by a cpu index") Reported-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/alpine.DEB.2.20.1610241711220.4983@nanos Cc: stable@vger.kernel.org Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org>
Diffstat (limited to 'virt')
0 files changed, 0 insertions, 0 deletions