lkml.org 
[lkml]   [2014]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [tip:x86/urgent] x86/mce: Fix CMCI preemption bugs
On Thu, Apr 17, 2014 at 12:09:44PM +0200, Peter Zijlstra wrote:
> On Thu, Apr 17, 2014 at 02:57:54AM -0700, tip-bot for Ingo Molnar wrote:
> > Commit-ID: ea431643d6c38728195e2c456801c3ef66bb9991
> > Gitweb: http://git.kernel.org/tip/ea431643d6c38728195e2c456801c3ef66bb9991
> > Author: Ingo Molnar <mingo@kernel.org>
> > AuthorDate: Thu, 17 Apr 2014 10:25:53 +0200
> > Committer: Ingo Molnar <mingo@kernel.org>
> > CommitDate: Thu, 17 Apr 2014 10:28:42 +0200
> >
> > x86/mce: Fix CMCI preemption bugs
> >
> > The following commit:
> >
> > 27f6c573e0f7 ("x86, CMCI: Add proper detection of end of CMCI storms")
> >
> > Added two preemption bugs:
> >
> > - machine_check_poll() does a get_cpu_var() without a matching
> > put_cpu_var(), which causes preemption imbalance and crashes upon
> > bootup.
> >
> > - it does percpu ops without disabling preemption. Preemption is not
> > disabled due to the mistaken use of a raw spinlock.
>
> it is arch_spinlock that doesn't disable preemption. raw_spinlock
> disables preemption just fine.

Hohum, __raw_spin_lock_irqsave does preempt_disable(). And
machine_check_poll should be running in irq context so why would the
original issue happen?

> kernel: [ 7.341085] BUG: using __this_cpu_write() in preemptible [00000000] code: modprobe/546

Unfortunately, I have only one line in a mail CCed to me.

Color me confused.

--
Regards/Gruss,
Boris.

Sent from a fat crate under my desk. Formatting is fine.
--


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