Messages in this thread | | | From | "Tian, Kevin" <> | Subject | RE: [PATCH V10 04/11] iommu/vt-d: Use helper function to skip agaw for SL | Date | Fri, 27 Mar 2020 11:55:09 +0000 |
| |
> From: Jacob Pan <jacob.jun.pan@linux.intel.com> > Sent: Saturday, March 21, 2020 7:28 AM > > Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com> > --- > drivers/iommu/intel-pasid.c | 14 ++++---------- > 1 file changed, 4 insertions(+), 10 deletions(-) > > diff --git a/drivers/iommu/intel-pasid.c b/drivers/iommu/intel-pasid.c > index 191508c7c03e..9bdb7ee228b6 100644 > --- a/drivers/iommu/intel-pasid.c > +++ b/drivers/iommu/intel-pasid.c > @@ -544,17 +544,11 @@ int intel_pasid_setup_second_level(struct > intel_iommu *iommu, > return -EINVAL; > } > > - /* > - * Skip top levels of page tables for iommu which has less agaw > - * than default. Unnecessary for PT mode. > - */ > pgd = domain->pgd; > - for (agaw = domain->agaw; agaw > iommu->agaw; agaw--) { > - pgd = phys_to_virt(dma_pte_addr(pgd)); > - if (!dma_pte_present(pgd)) { > - dev_err(dev, "Invalid domain page table\n"); > - return -EINVAL; > - } > + agaw = iommu_skip_agaw(domain, iommu, &pgd); > + if (agaw < 0) { > + dev_err(dev, "Invalid domain page table\n"); > + return -EINVAL; > }
ok, I see how it is used. possibly combine last and this one together since it's mostly moving code...
> > pgd_val = virt_to_phys(pgd); > -- > 2.7.4
| |