[PATCH v6 5/7] KVM: arm64: Add a macro for creating filtered sys_reg_descs entries

Marc Zyngier maz at kernel.org
Thu Oct 31 06:10:37 PDT 2024


On Wed, 30 Oct 2024 16:03:15 +0000,
Joey Gouly <joey.gouly at arm.com> wrote:
> 
> From: James Morse <james.morse at arm.com>
> 
> The sys_reg_descs array holds function pointers and reset value for
> managing the user-space and guest view of system registers. These
> are mostly created by a set of macro's as only some combinations
> of behaviour are needed.
> 
> If a register needs special treatment, its sys_reg_descs entry is
> open-coded. This is true of some id registers where the value provided
> by user-space is validated by some helpers.
> 
> Before adding another one of these, add a helper that covers the
> existing special cases. 'ID_FILTERED' expects helpers to set the
> user-space value, and retrieve the modified reset value.
> 
> Like ID_WRITABLE() this uses id_visibility(), which should have no functional
> change for the registers converted to use ID_FILTERED().
> 
> read_sanitised_id_aa64dfr0_el1() and read_sanitised_id_aa64pfr0_el1() have been
> refactored to be called kvm_read_sanitised_id_reg(), to try be consistent with

nit: called *from*?

> ID_WRITABLE().
> 
> Signed-off-by: James Morse <james.morse at arm.com>
> Signed-off-by: Joey Gouly <joey.gouly at arm.com>
> Reviewed-by: Gavin Shan <gshan at redhat.com>
> Tested-by: Shameer Kolothum <shameerali.kolothum.thodi at huawei.com>

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list