ANDROID: KVM: arm64: Use PSCI MEM_PROTECT to zap guest pages on reset
If a malicious/compromised host issues a PSCI SYSTEM_RESET call in the presence of guest-owned pages then the contents of those pages may be susceptible to cold-reboot attacks. Use the PSCI MEM_PROTECT call to ensure that volatile memory is wiped by the firmware if a SYSTEM_RESET occurs while unpoisoned guest pages exist in the system. Since this call does not offer protection for a "warm" reset initiated by SYSTEM_RESET2, detect this case in the PSCI relay and repaint the call to a standard SYSTEM_RESET instead. Signed-off-by: Will Deacon <will@kernel.org> Bug: 254821051 Change-Id: I5c3dd93bc83ebcd0b6cea2ec734f6e3a77f0064e Signed-off-by: Will Deacon <willdeacon@google.com>
This commit is contained in:
@@ -55,6 +55,8 @@
|
||||
#define PSCI_1_0_FN64_SYSTEM_SUSPEND PSCI_0_2_FN64(14)
|
||||
#define PSCI_1_1_FN64_SYSTEM_RESET2 PSCI_0_2_FN64(18)
|
||||
|
||||
#define PSCI_1_1_FN64_MEM_PROTECT PSCI_0_2_FN64(19)
|
||||
|
||||
/* PSCI v0.2 power state encoding for CPU_SUSPEND function */
|
||||
#define PSCI_0_2_POWER_STATE_ID_MASK 0xffff
|
||||
#define PSCI_0_2_POWER_STATE_ID_SHIFT 0
|
||||
|
||||
Reference in New Issue
Block a user