Re: [tip:x86/urgent] x86/mce: Fix CMCI preemption bugs

From: Peter Zijlstra
Date: Thu Apr 17 2014 - 06:10:17 EST


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@xxxxxxxxxx>
> AuthorDate: Thu, 17 Apr 2014 10:25:53 +0200
> Committer: Ingo Molnar <mingo@xxxxxxxxxx>
> 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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/