Ranges checked by iomem_access_permitted() are inclusive; to permit a mapping there's no need for access to also have been granted for the subsequent page.
Fixes: 80f9c3167084 ("xen/arm: acpi: Map MMIO on fault in stage-2 page table for the hardware domain") Signed-off-by: Jan Beulich <jbeul...@suse.com> --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -1893,7 +1893,7 @@ static bool try_map_mmio(gfn_t gfn) return false; /* The hardware domain can only map permitted MMIO regions */ - if ( !iomem_access_permitted(d, mfn_x(mfn), mfn_x(mfn) + 1) ) + if ( !iomem_access_permitted(d, mfn_x(mfn), mfn_x(mfn)) ) return false; return !map_regions_p2mt(d, gfn, 1, mfn, p2m_mmio_direct_c);