• Zenghui Yu's avatar
    KVM: arm64: selftest: Add the missing .guest_prepare() · beaf35b4
    Zenghui Yu authored
    Running page_fault_test on a Cortex A72 fails with
    
    Test: ro_memslot_no_syndrome_guest_cas
    Testing guest mode: PA-bits:40,  VA-bits:48,  4K pages
    Testing memory backing src type: anonymous
    ==== Test Assertion Failure ====
      aarch64/page_fault_test.c:117: guest_check_lse()
      pid=1944087 tid=1944087 errno=4 - Interrupted system call
         1	0x00000000004028b3: vcpu_run_loop at page_fault_test.c:682
         2	0x0000000000402d93: run_test at page_fault_test.c:731
         3	0x0000000000403957: for_each_guest_mode at guest_modes.c:100
         4	0x00000000004019f3: for_each_test_and_guest_mode at page_fault_test.c:1108
         5	 (inlined by) main at page_fault_test.c:1134
         6	0x0000ffff868e503b: ?? ??:0
         7	0x0000ffff868e5113: ?? ??:0
         8	0x0000000000401aaf: _start at ??:?
      guest_check_lse()
    
    because we don't have a guest_prepare stage to check the presence of
    FEAT_LSE and skip the related guest_cas testing, and we end-up failing in
    GUEST_ASSERT(guest_check_lse()).
    
    Add the missing .guest_prepare() where it's indeed required.
    Signed-off-by: default avatarZenghui Yu <yuzenghui@huawei.com>
    Acked-by: default avatarMarc Zyngier <maz@kernel.org>
    Link: https://lore.kernel.org/r/20231007124043.626-1-yuzenghui@huawei.comSigned-off-by: default avatarOliver Upton <oliver.upton@linux.dev>
    beaf35b4
page_fault_test.c 33.8 KB