]> www.infradead.org Git - users/dwmw2/qemu.git/commit
target/arm: change default pauth algorithm to impdef
authorPierrick Bouvier <pierrick.bouvier@linaro.org>
Mon, 13 Jan 2025 12:35:34 +0000 (12:35 +0000)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 13 Jan 2025 12:35:34 +0000 (12:35 +0000)
commit132f8ec799cea261ad6b60ac8ae86f17cc98b9a1
tree09fbf258c6cdf3e7d67fa27b9ab045a960da548a
parent39d70016d9abe15967f7051741dd5621c659b1f4
target/arm: change default pauth algorithm to impdef

Pointer authentication on aarch64 is pretty expensive (up to 50% of
execution time) when running a virtual machine with tcg and -cpu max
(which enables pauth=on).

The advice is always: use pauth-impdef=on.
Our documentation even mentions it "by default" in
docs/system/introduction.rst.

Thus, we change the default to use impdef by default. This does not
affect kvm or hvf acceleration, since pauth algorithm used is the one
from host cpu.

This change is retro compatible, in terms of cli, with previous
versions, as the semantic of using -cpu max,pauth-impdef=on, and -cpu
max,pauth-qarma3=on is preserved.
The new option introduced in previous patch and matching old default is
-cpu max,pauth-qarma5=on.
It is retro compatible with migration as well, by defining a backcompat
property, that will use qarma5 by default for virt machine <= 9.2.
Tested by saving and restoring a vm from qemu 9.2.0 into qemu-master
(10.0) for cpus neoverse-n2 and max.

Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20241219183211.3493974-3-pierrick.bouvier@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
docs/system/arm/cpu-features.rst
docs/system/introduction.rst
hw/core/machine.c
target/arm/cpu.c
target/arm/cpu.h
target/arm/cpu64.c