mirror of https://github.com/torvalds/linux.git
iommu/amd: Update iommu_ignore_device
Start using per PCI segment device table instead of global device table. Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com> Signed-off-by: Vasant Hegde <vasant.hegde@amd.com> Link: https://lore.kernel.org/r/20220706113825.25582-23-vasant.hegde@amd.com Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
54625ef1db
commit
ccbb091f3f
|
|
@ -413,15 +413,15 @@ static int iommu_init_device(struct amd_iommu *iommu, struct device *dev)
|
|||
static void iommu_ignore_device(struct amd_iommu *iommu, struct device *dev)
|
||||
{
|
||||
struct amd_iommu_pci_seg *pci_seg = iommu->pci_seg;
|
||||
struct dev_table_entry *dev_table = get_dev_table(iommu);
|
||||
int devid;
|
||||
|
||||
devid = get_device_id(dev);
|
||||
devid = (get_device_id(dev)) & 0xffff;
|
||||
if (devid < 0)
|
||||
return;
|
||||
|
||||
|
||||
pci_seg->rlookup_table[devid] = NULL;
|
||||
memset(&amd_iommu_dev_table[devid], 0, sizeof(struct dev_table_entry));
|
||||
memset(&dev_table[devid], 0, sizeof(struct dev_table_entry));
|
||||
|
||||
setup_aliases(iommu, dev);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue