linux/arch/arm64
Jean-Philippe Brucker 373beef00f KVM: arm64: nvhe: Ignore SVE hint in SMCCC function ID
When SVE is enabled, the host may set bit 16 in SMCCC function IDs, a
hint that indicates an unused SVE state. At the moment NVHE doesn't
account for this bit when inspecting the function ID, and rejects most
calls. Clear the hint bit before comparing function IDs.

About version compatibility: the host's PSCI driver initially probes the
firmware for a SMCCC version number. If the firmware implements a
protocol recent enough (1.3), subsequent SMCCC calls have the hint bit
set. Since the hint bit was reserved in earlier versions of the
protocol, clearing it is fine regardless of the version in use.

When a new hint is added to the protocol in the future, it will be added
to ARM_SMCCC_CALL_HINTS and NVHE will handle it straight away. This
patch only clears known hints and leaves reserved bits as is, because
future SMCCC versions could use reserved bits as modifiers for the
function ID, rather than hints.

Fixes: cfa7ff959a ("arm64: smccc: Support SMCCC v1.3 SVE register saving hint")
Reported-by: Ben Horgan <ben.horgan@arm.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230911145254.934414-4-jean-philippe@linaro.org
2023-09-12 13:07:37 +01:00
..
boot Char/Misc driver changes for 6.6-rc1 2023-09-01 09:53:54 -07:00
configs Kbuild updates for v6.6 2023-09-05 11:01:47 -07:00
crypto crypto: arm64/aes - remove Makefile hack 2023-08-11 19:19:27 +08:00
hyperv arm64/hyperv: Use CPUHP_AP_HYPERV_ONLINE state to fix CPU online sequencing 2023-06-17 23:09:47 +00:00
include KVM: arm64: nvhe: Ignore SVE hint in SMCCC function ID 2023-09-12 13:07:37 +01:00
kernel arm64 fixes for -rc1 2023-09-08 12:48:37 -07:00
kvm KVM: arm64: nvhe: Ignore SVE hint in SMCCC function ID 2023-09-12 13:07:37 +01:00
lib arm64 fixes for -rc1 2023-09-08 12:48:37 -07:00
mm Add x86 shadow stack support 2023-08-31 12:20:12 -07:00
net bpf, arm64: Support signed div/mod instructions 2023-08-18 15:46:35 +02:00
tools arm64: Add feature detection for fine grained traps 2023-08-17 10:00:27 +01:00
xen
Kbuild
Kconfig - An extensive rework of kexec and crash Kconfig from Eric DeVolder 2023-08-29 14:53:51 -07:00
Kconfig.debug
Kconfig.platforms STM32 STM32MP25 for v6.5, round 1 2023-06-20 22:28:44 +02:00
Makefile