powerpc/ps3: Fix kexec shutdown hang
authorGeoff Levand <geoff@infradead.org>
Sat, 9 May 2020 18:58:32 +0000 (18:58 +0000)
committerSasha Levin <sashal@kernel.org>
Tue, 30 Jun 2020 19:38:25 +0000 (15:38 -0400)
commit73ce7f36a9ac3128b6529a9a9c899534aab02fa2
treeb11991bd3b37872320e50198e00f3c49566ae1d3
parentd0627bd8fc5b443e516474004535657defcdf469
powerpc/ps3: Fix kexec shutdown hang

[ Upstream commit 126554465d93b10662742128918a5fc338cda4aa ]

The ps3_mm_region_destroy() and ps3_mm_vas_destroy() routines
are called very late in the shutdown via kexec's mmu_cleanup_all
routine.  By the time mmu_cleanup_all runs it is too late to use
udbg_printf, and calling it will cause PS3 systems to hang.

Remove all debugging statements from ps3_mm_region_destroy() and
ps3_mm_vas_destroy() and replace any error reporting with calls
to lv1_panic.

With this change builds with 'DEBUG' defined will not cause kexec
reboots to hang, and builds with 'DEBUG' defined or not will end
in lv1_panic if an error is encountered.

Signed-off-by: Geoff Levand <geoff@infradead.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/7325c4af2b4c989c19d6a26b90b1fec9c0615ddf.1589049250.git.geoff@infradead.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/powerpc/platforms/ps3/mm.c