Message ID | 20231220134346.22430-1-roger.pau@citrix.com (mailing list archive) |
---|---|
Headers | show |
Series | x86/iommu: improve setup time of hwdom IOMMU | expand |
On 20.12.2023 14:43, Roger Pau Monne wrote: > Hello, > > The aim of the series is to reduce boot time setup of IOMMU page tables > for dom0. > > First and second patches are a pre-req, as further patches can end up > attempting to create maps above the max RAM address, and hence without > properly setting the IOMMU page tables levels those attempts to map > would fail. > > Last 4 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 5/6 for performance figures. > > Thanks, Roger. > > Roger Pau Monne (6): > x86/p2m: move and rename paging_max_paddr_bits() > amd-vi: set IOMMU page table levels based on guest reported paddr > width > x86/iommu: introduce a rangeset to perform hwdom IOMMU setup > x86/iommu: remove regions not to be mapped > x86/iommu: switch hwdom IOMMU to use a rangeset > x86/iommu: cleanup unused functions > > xen/arch/x86/cpu-policy.c | 2 +- > xen/arch/x86/domain.c | 21 ++ > xen/arch/x86/hvm/io.c | 15 +- Paul, for the changes to this file, any chance of an ack for patches 4 and 6? Thanks, Jan > xen/arch/x86/include/asm/domain.h | 3 + > xen/arch/x86/include/asm/hvm/io.h | 4 +- > xen/arch/x86/include/asm/paging.h | 22 -- > xen/arch/x86/include/asm/setup.h | 2 +- > xen/arch/x86/setup.c | 81 +++--- > xen/arch/x86/tboot.c | 2 +- > xen/drivers/passthrough/amd/pci_amd_iommu.c | 20 +- > xen/drivers/passthrough/x86/iommu.c | 271 +++++++++++++------- > 11 files changed, 262 insertions(+), 181 deletions(-) >