mbox series

[v5,0/3] x86/iommu: improve setup time of hwdom IOMMU

Message ID 20240124172953.29814-1-roger.pau@citrix.com (mailing list archive)
Headers show
Series x86/iommu: improve setup time of hwdom IOMMU | expand

Message

Roger Pau Monné Jan. 24, 2024, 5:29 p.m. UTC
Hello,

The aim of the series is to reduce boot time setup of IOMMU page tables
for dom0.

This patches rework the hardware domain IOMMU setup to use a rangeset
instead of iterating over all addresses up to the max RAM page.  See
patch 2/3 for performance figures.

Jan: I've kept your RB in patch 1 with the off-by-one adjustments, and
dropped it for patch 2 with the addition of the default label in the
switch over the e820 ranges.  Such default label is required to continue
to deal equally with the  ACPI and NVS ranges.

Thanks, Roger.

Roger Pau Monne (3):
  x86/iommu: remove regions not to be mapped
  x86/iommu: switch hwdom IOMMU to use a rangeset
  x86/iommu: cleanup unused functions

 CHANGELOG.md                        |   2 +
 xen/arch/x86/hvm/io.c               |  15 ++-
 xen/arch/x86/include/asm/hvm/io.h   |   4 +-
 xen/arch/x86/include/asm/setup.h    |   2 +-
 xen/arch/x86/setup.c                |  81 ++++++------
 xen/arch/x86/tboot.c                |   2 +-
 xen/drivers/passthrough/x86/iommu.c | 196 ++++++++++++----------------
 7 files changed, 146 insertions(+), 156 deletions(-)