summaryrefslogtreecommitdiffstats
path: root/kernel/async.c
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2021-08-07 09:20:57 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2021-08-12 22:31:41 +1000
commitcbc06f051c524dcfe52ef0d1f30647828e226d30 (patch)
tree57abf82dc04848a192f4d14be44bc401d70398f7 /kernel/async.c
parent01fcac8e4dfc112f420dcaeb70056a74e326cacf (diff)
downloadlinux-stable-cbc06f051c524dcfe52ef0d1f30647828e226d30.tar.gz
linux-stable-cbc06f051c524dcfe52ef0d1f30647828e226d30.tar.bz2
linux-stable-cbc06f051c524dcfe52ef0d1f30647828e226d30.zip
powerpc/xive: Do not skip CPU-less nodes when creating the IPIs
On PowerVM, CPU-less nodes can be populated with hot-plugged CPUs at runtime. Today, the IPI is not created for such nodes, and hot-plugged CPUs use a bogus IPI, which leads to soft lockups. We can not directly allocate and request the IPI on demand because bringup_up() is called under the IRQ sparse lock. The alternative is to allocate the IPIs for all possible nodes at startup and to request the mapping on demand when the first CPU of a node is brought up. Fixes: 7dcc37b3eff9 ("powerpc/xive: Map one IPI interrupt per node") Cc: stable@vger.kernel.org # v5.13 Reported-by: Geetika Moolchandani <Geetika.Moolchandani1@ibm.com> Signed-off-by: Cédric Le Goater <clg@kaod.org> Tested-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com> Tested-by: Laurent Vivier <lvivier@redhat.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20210807072057.184698-1-clg@kaod.org
Diffstat (limited to 'kernel/async.c')
0 files changed, 0 insertions, 0 deletions