arm64: cpufeatures: Restrict NV support to FEAT_NV2
authorMarc Zyngier <maz@kernel.org>
Thu, 9 Nov 2023 15:47:49 +0000 (15:47 +0000)
committerMarc Zyngier <maz@kernel.org>
Tue, 19 Dec 2023 09:50:18 +0000 (09:50 +0000)
commit2bfc654b89c4dd1c372bb2cbba6b5a0eb578d214
tree486ae0eb72ae9bd0bc68b0b08ef7503f519d13ec
parent2cc14f52aeb78ce3f29677c2de1f06c0e91471ab
arm64: cpufeatures: Restrict NV support to FEAT_NV2

To anyone who has played with FEAT_NV, it is obvious that the level
of performance is rather low due to the trap amplification that it
imposes on the host hypervisor. FEAT_NV2 solves a number of the
problems that FEAT_NV had.

It also turns out that all the existing hardware that has FEAT_NV
also has FEAT_NV2. Finally, it is now allowed by the architecture
to build FEAT_NV2 *only* (as denoted by ID_AA64MMFR4_EL1.NV_frac),
which effectively seals the fate of FEAT_NV.

Restrict the NV support to NV2, and be done with it. Nobody will
cry over the old crap. NV_frac will eventually be supported once
the intrastructure is ready.

Reviewed-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Marc Zyngier <maz@kernel.org>
arch/arm64/kernel/cpufeature.c