• Will Deacon's avatar
    KVM: arm64: Indicate SYSTEM_RESET2 in kvm_run::system_event flags field · 34739fd9
    Will Deacon authored
    When handling reset and power-off PSCI calls from the guest, we
    initialise X0 to PSCI_RET_INTERNAL_FAILURE in case the VMM tries to
    re-run the vCPU after issuing the call.
    
    Unfortunately, this also means that the VMM cannot see which PSCI call
    was issued and therefore cannot distinguish between PSCI SYSTEM_RESET
    and SYSTEM_RESET2 calls, which is necessary in order to determine the
    validity of the "reset_type" in X1.
    
    Allocate bit 0 of the previously unused 'flags' field of the
    system_event structure so that we can indicate the PSCI call used to
    initiate the reset.
    
    Cc: Marc Zyngier <maz@kernel.org>
    Cc: James Morse <james.morse@arm.com>
    Cc: Alexandru Elisei <alexandru.elisei@arm.com>
    Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
    Signed-off-by: default avatarWill Deacon <will@kernel.org>
    Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
    Link: https://lore.kernel.org/r/20220221153524.15397-4-will@kernel.org
    34739fd9
psci.c 15 KB