Thanks to a recent gcc update, the VMREAD/VMWRITE #PF tests are now failing due to gcc-12 optimizing away a non-volatile flag that it thinks can't possibly change. Avoid the volatile shenanigans entirely by switching to ASM_TRY(), and dedup the two tests. Sean Christopherson (3): x86: Handle all known exceptions with ASM_TRY() nVMX: Use ASM_TRY() for VMREAD and VMWRITE page fault tests nVMX: Dedup the bulk of the VMREAD/VMWRITE #PF tests lib/x86/desc.c | 10 ++-- x86/vmx.c | 158 ++++++++++++++----------------------------------- 2 files changed, 49 insertions(+), 119 deletions(-) base-commit: d8a4f9e5e8d69d4ef257b40d6cd666bd2f63494e -- 2.38.0.rc1.362.ged0d419d3c-goog