]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
powerpc/xive: Fix trying to "push" an already active pool VP
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 11 Apr 2018 05:17:59 +0000 (15:17 +1000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Apr 2018 07:43:08 +0000 (09:43 +0200)
commit37a712b4ddf012dec426b3dd2a13d5a17dd3820f
tree662c1242ac9e984fcb76069c5018d2b62a20d23d
parent0b883271af504a02da964a5edba0126a089befdb
powerpc/xive: Fix trying to "push" an already active pool VP

commit b32e56e5a87a1f9243db92bc7a5df0ffb4627cfb upstream.

When setting up a CPU, we "push" (activate) a pool VP for it.

However it's an error to do so if it already has an active
pool VP.

This happens when doing soft CPU hotplug on powernv since we
don't tear down the CPU on unplug. The HW flags the error which
gets captured by the diagnostics.

Fix this by making sure to "pull" out any already active pool
first.

Fixes: 243e25112d06 ("powerpc/xive: Native exploitation of the XIVE interrupt controller")
Cc: stable@vger.kernel.org # v4.12+
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/powerpc/sysdev/xive/native.c