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

Configure Feed

Select the types of activity you want to include in your feed.

Merge git://git.infradead.org/intel-iommu

Pull Intel IOMMU fix from David Woodhouse:
"This fixes an oops when attempting to enable 1:1 passthrough mode for
devices on which VT-d translation was disabled anyway.

It's actually a long-standing bug but recent changes (commit
18436afdc11a: "iommu/vt-d: Allow RMRR on graphics devices too") have
made it much easier to trigger with 'iommu=pt intel_iommu=igfx_off' on
the command line"

* git://git.infradead.org/intel-iommu:
iommu/vt-d: Fix passthrough mode with translation-disabled devices

+8 -5
+8 -5
drivers/iommu/intel-iommu.c
··· 696 696 return &context[devfn]; 697 697 } 698 698 699 + static int iommu_dummy(struct device *dev) 700 + { 701 + return dev->archdata.iommu == DUMMY_DEVICE_DOMAIN_INFO; 702 + } 703 + 699 704 static struct intel_iommu *device_to_iommu(struct device *dev, u8 *bus, u8 *devfn) 700 705 { 701 706 struct dmar_drhd_unit *drhd = NULL; ··· 709 704 struct pci_dev *ptmp, *pdev = NULL; 710 705 u16 segment = 0; 711 706 int i; 707 + 708 + if (iommu_dummy(dev)) 709 + return NULL; 712 710 713 711 if (dev_is_pci(dev)) { 714 712 pdev = to_pci_dev(dev); ··· 2975 2967 return info->domain; 2976 2968 2977 2969 return __get_valid_domain_for_dev(dev); 2978 - } 2979 - 2980 - static int iommu_dummy(struct device *dev) 2981 - { 2982 - return dev->archdata.iommu == DUMMY_DEVICE_DOMAIN_INFO; 2983 2970 } 2984 2971 2985 2972 /* Check if the dev needs to go through non-identity map and unmap process.*/