Re: [PATCH] KVM: arm64: Allow PSCI SYSTEM_OFF/RESET to return

From: Marc Zyngier
Date: Wed Dec 30 2020 - 05:07:50 EST


On 2020-12-29 17:04, Russell King - ARM Linux admin wrote:
On Tue, Dec 29, 2020 at 04:00:59PM +0000, David Brazdil wrote:
The KVM/arm64 PSCI relay assumes that SYSTEM_OFF and SYSTEM_RESET should
not return, as dictated by the PSCI spec. However, there is firmware out
there which breaks this assumption, leading to a hyp panic. Make KVM
more robust to broken firmware by allowing these to return.

Are you sure you should just return?

We've had issues in the past with Linux reboot(2) that returns
to userspace, allowing on 32-bit ARM for example watchdogs to
unexpectedly continue being serviced.

I don't think this changes anything compared to the case where
the PSCI relay isn't enabled. The EL1 part of the kernel would
see the SYSTEM_RESET call return, and handle it accordingly
(stay in a while(1) loop).

This is consistent with the PSCI relay design goal of being
invisible to the EL1 kernel.

Thanks,

M.
--
Jazz is not dead. It just smells funny...