These are follow-up patches on this discussion: https://lore.kernel.org/linux-iommu/BN9PR11MB5276E84229B5BD952D78E9598C639@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx I just summarized the ideas and code into a real patch series. Please help to review and merge. Change log: v3: - Rename "requires_direct" to "require_direct". - Refine some comments. - Rebase on the top of iommu next branch. v2: https://lore.kernel.org/linux-iommu/20230713043248.41315-1-baolu.lu@xxxxxxxxxxxxxxx/ - Move "pg_size == 0" check out of the loop. - Rebase on the top of v6.5-rc1. v1: https://lore.kernel.org/linux-iommu/20230607035145.343698-1-baolu.lu@xxxxxxxxxxxxxxx/ Lu Baolu (2): iommu: Prevent RESV_DIRECT devices from blocking domains iommu/vt-d: Remove rmrr check in domain attaching device path include/linux/iommu.h | 2 ++ drivers/iommu/intel/iommu.c | 58 ------------------------------------- drivers/iommu/iommu.c | 37 ++++++++++++++++------- 3 files changed, 29 insertions(+), 68 deletions(-) -- 2.34.1