mirror of
https://github.com/torvalds/linux.git
synced 2024-11-08 05:01:48 +00:00
x86: mce: Disable preemption when calling raise_local()
raise_mce() has a code path which does not disable preemption when the raise_local() is called. The per cpu variable access in raise_local() depends on preemption being disabled to be functional. So that code path was either never tested or never tested with CONFIG_DEBUG_PREEMPT enabled. Add the missing preempt_disable/enable() pair around the call. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Chen Gong <gong.chen@linux.intel.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
parent
0d7614f09c
commit
ea22571c8f
@ -194,7 +194,11 @@ static void raise_mce(struct mce *m)
|
||||
put_online_cpus();
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
preempt_disable();
|
||||
raise_local();
|
||||
preempt_enable();
|
||||
}
|
||||
}
|
||||
|
||||
/* Error injection interface */
|
||||
|
Loading…
Reference in New Issue
Block a user