Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iommu/vt-d: Drop pasid requirement for prq initialization

PASID support within the IOMMU is not required to enable the Page
Request Queue, only the PRS capability.

Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Joel Granados <joel.granados@kernel.org>
Link: https://lore.kernel.org/r/20241015-jag-iopfv8-v4-5-b696ca89ba29@kernel.org
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>

authored by

Klaus Jensen and committed by
Joerg Roedel
9baed1c2 cbeb1b7e

+4 -6
+4 -6
drivers/iommu/intel/iommu.c
··· 1329 1329 /* free context mapping */ 1330 1330 free_context_table(iommu); 1331 1331 1332 - if (pasid_supported(iommu)) { 1333 - if (ecap_prs(iommu->ecap)) 1334 - intel_iommu_finish_prq(iommu); 1335 - } 1332 + if (ecap_prs(iommu->ecap)) 1333 + intel_iommu_finish_prq(iommu); 1336 1334 } 1337 1335 1338 1336 /* ··· 2190 2192 2191 2193 iommu_flush_write_buffer(iommu); 2192 2194 2193 - if (pasid_supported(iommu) && ecap_prs(iommu->ecap)) { 2195 + if (ecap_prs(iommu->ecap)) { 2194 2196 /* 2195 2197 * Call dmar_alloc_hwirq() with dmar_global_lock held, 2196 2198 * could cause possible lock race condition. ··· 2614 2616 intel_iommu_init_qi(iommu); 2615 2617 iommu_flush_write_buffer(iommu); 2616 2618 2617 - if (pasid_supported(iommu) && ecap_prs(iommu->ecap)) { 2619 + if (ecap_prs(iommu->ecap)) { 2618 2620 ret = intel_iommu_enable_prq(iommu); 2619 2621 if (ret) 2620 2622 goto disable_iommu;