I have observed the IOMMU using the page size for the next level instead of the current level for hugepages, e.g. using 4K for what should be 2M pages.
The issue can be observed under Linux, but only with specific settings as Linux tends to set NextLevel=7, which directly sets the page size after the walk. David Hoppenbrouwers (2): hw/i386/amd_iommu.c: trace page walk in fetch_pte() hw/i386/amd_iommu.c: fix incorrect page_size for hugepages hw/i386/amd_iommu.c | 21 ++++++++++++++++++--- hw/i386/trace-events | 4 ++++ 2 files changed, 22 insertions(+), 3 deletions(-) -- 2.52.0
