]> www.infradead.org Git - users/jedix/linux-maple.git/commit
genirq: Revert sparse irq locking around __cpu_up() and move it to x86 for now
authorThomas Gleixner <tglx@linutronix.de>
Tue, 14 Jul 2015 20:03:57 +0000 (22:03 +0200)
committerEthan Zhao <ethan.zhao@oracle.com>
Thu, 7 Sep 2017 23:09:10 +0000 (07:09 +0800)
commit6648c5211619325ed5169181c238e6ce38f7311b
treeb60db8da908291ec6a88f15f6198861683730ac5
parentf664e67047249428bec719b5f4a2b33813243e3a
genirq: Revert sparse irq locking around __cpu_up() and move it to x86 for now

Boris reported that the sparse_irq protection around __cpu_up() in the
generic code causes a regression on Xen. Xen allocates interrupts and
some more in the xen_cpu_up() function, so it deadlocks on the
sparse_irq_lock.

There is no simple fix for this and we really should have the
protection for all architectures, but for now the only solution is to
move it to x86 where actual wreckage due to the lack of protection has
been observed.

Reported-and-tested-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Fixes: a89941816726 'hotplug: Prevent alloc/free of irq descriptors during cpu up/down'
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: xiao jin <jin.xiao@intel.com>
Cc: Joerg Roedel <jroedel@suse.de>
Cc: Borislav Petkov <bp@suse.de>
Cc: Yanmin Zhang <yanmin_zhang@linux.intel.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>
(cherry picked from commit ce0d3c0a6fb1422101498ef378c0851dabbbf67f)

Orabug: 25671838

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
Reviewed-by: Brian Maly <brian.maly@oracle.com>
arch/x86/kernel/smpboot.c
kernel/cpu.c