• Joerg Roedel's avatar
    iommu/amd: Add kernel parameters to limit V1 page-sizes · f0295913
    Joerg Roedel authored
    Add two new kernel command line parameters to limit the page-sizes
    used for v1 page-tables:
    
    	nohugepages     - Limits page-sizes to 4KiB
    
    	v2_pgsizes_only - Limits page-sizes to 4Kib/2Mib/1GiB; The
    	                  same as the sizes used with v2 page-tables
    
    This is needed for multiple scenarios. When assigning devices to
    SEV-SNP guests the IOMMU page-sizes need to match the sizes in the RMP
    table, otherwise the device will not be able to access all shared
    memory.
    
    Also, some ATS devices do not work properly with arbitrary IO
    page-sizes as supported by AMD-Vi, so limiting the sizes used by the
    driver is a suitable workaround.
    
    All-in-all, these parameters are only workarounds until the IOMMU core
    and related APIs gather the ability to negotiate the page-sizes in a
    better way.
    Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
    Reviewed-by: default avatarVasant Hegde <vasant.hegde@amd.com>
    Link: https://lore.kernel.org/r/20240905072240.253313-1-joro@8bytes.org
    f0295913
amd_iommu.h 5.7 KB