aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/gcc-plugins/cyc_complexity_plugin.c
diff options
context:
space:
mode:
authorThomas Gleixner <[email protected]>2019-04-14 17:51:06 +0000
committerThomas Gleixner <[email protected]>2019-04-14 21:05:52 +0000
commit2f5fb19341883bb6e37da351bc3700489d8506a7 (patch)
tree7773a842ba67a344b4b4da5aff530404f140571d /scripts/gcc-plugins/cyc_complexity_plugin.c
parentx86/resctrl: Do not repeat rdtgroup mode initialization (diff)
downloadkernel-2f5fb19341883bb6e37da351bc3700489d8506a7.tar.gz
kernel-2f5fb19341883bb6e37da351bc3700489d8506a7.zip
x86/speculation: Prevent deadlock on ssb_state::lock
Mikhail reported a lockdep splat related to the AMD specific ssb_state lock: CPU0 CPU1 lock(&st->lock); local_irq_disable(); lock(&(&sighand->siglock)->rlock); lock(&st->lock); <Interrupt> lock(&(&sighand->siglock)->rlock); *** DEADLOCK *** The connection between sighand->siglock and st->lock comes through seccomp, which takes st->lock while holding sighand->siglock. Make sure interrupts are disabled when __speculation_ctrl_update() is invoked via prctl() -> speculation_ctrl_update(). Add a lockdep assert to catch future offenders. Fixes: 1f50ddb4f418 ("x86/speculation: Handle HT correctly on AMD") Reported-by: Mikhail Gavrilov <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Tested-by: Mikhail Gavrilov <[email protected]> Cc: Thomas Lendacky <[email protected]> Cc: [email protected] Link: https://lkml.kernel.org/r/[email protected]
Diffstat (limited to 'scripts/gcc-plugins/cyc_complexity_plugin.c')
0 files changed, 0 insertions, 0 deletions