We observed failing WXN tests in our OS which we tracked down to missing WXN handling in qemu.
The problem was in that short descriptor format walker did not respect WXN bit. To fix it, make it possible to call get_S1prot() from get_phys_addr_v6(). Tested localy that all permission-related tests in our OS passed on following platforms: - arm64-virt - arm-vexpress (v7) - arm-virt (v7) Changes from v1: - Fix style errors - Add cover letter - Use get_S1prot() instead of open-coded checks v1: https://lore.kernel.org/qemu-devel/20241114165900.6399-1-paskrip...@gmail.com/ Pavel Skripkin (2): arm/ptw: make get_S1prot accept decoded AP arm/ptw: use get_S1prot in get_phys_addr_v6 target/arm/ptw.c | 54 +++++++++++++++++++++--------------------------- 1 file changed, 24 insertions(+), 30 deletions(-) -- 2.46.0