• Christoffer Dall's avatar
    KVM: arm64: Rewrite system register accessors to read/write functions · 8d404c4c
    Christoffer Dall authored
    Currently we access the system registers array via the vcpu_sys_reg()
    macro.  However, we are about to change the behavior to some times
    modify the register file directly, so let's change this to two
    primitives:
    
     * Accessor macros vcpu_write_sys_reg() and vcpu_read_sys_reg()
     * Direct array access macro __vcpu_sys_reg()
    
    The accessor macros should be used in places where the code needs to
    access the currently loaded VCPU's state as observed by the guest.  For
    example, when trapping on cache related registers, a write to a system
    register should go directly to the VCPU version of the register.
    
    The direct array access macro can be used in places where the VCPU is
    known to never be running (for example userspace access) or for
    registers which are never context switched (for example all the PMU
    system registers).
    
    This rewrites all users of vcpu_sys_regs to one of the macros described
    above.
    
    No functional change.
    Acked-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
    Reviewed-by: default avatarAndrew Jones <drjones@redhat.com>
    Signed-off-by: default avatarChristoffer Dall <cdall@cs.columbia.edu>
    Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
    8d404c4c
sys_regs_generic_v8.c 2.94 KB