linux/drivers/pci
Alex Williamson 9b4554b21e intel-iommu: Only unlink device domains from iommu
Commit a97590e5 added unlinking domains from iommus to reciprocate the
iommu from domains unlinking that was already done.  We actually want
to only do this for device domains and never for the static
identity map domain or VM domains.  The SI domain is special and
never freed, while VM domain->id lives in their own special address
space, separate from iommu->domain_ids.

In the current code, a VM can get domain->id zero, then mark that
domain unused when unbound from pci-stub.  This leads to DMAR
write faults when the device is re-bound to the host driver.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Cc: stable@kernel.org
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2011-06-01 12:47:29 +01:00
..
hotplug Fix common misspellings 2011-03-31 11:26:23 -03:00
pcie Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-03-25 21:01:43 -07:00
.gitignore
access.c PCI: output FW warning in pci_read/write_vpd 2010-05-18 15:00:25 -07:00
bus.c Revert "PCI: allocate bus resources from the top down" 2010-12-17 10:00:54 -08:00
dmar.c intel-iommu: Remove obsolete comment from detect_intel_iommu 2011-05-24 13:08:31 +01:00
hotplug-pci.c
hotplug.c
htirq.c drivers: Final irq namespace conversion 2011-03-29 14:48:19 +02:00
intel-iommu.c intel-iommu: Only unlink device domains from iommu 2011-06-01 12:47:29 +01:00
intr_remapping.c Fix common misspellings 2011-03-31 11:26:23 -03:00
intr_remapping.h intr-remap: generic support for remapping HPET MSIs 2009-08-27 23:33:20 +02:00
ioapic.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
iov.c PCI: fix pci_resource_alignment prototype 2010-09-09 13:41:25 -07:00
iova.c Fix common misspellings 2011-03-31 11:26:23 -03:00
irq.c
Kconfig PCI: pci-label: Fix build failure when CONFIG_NLS is set to 'm' by allmodconfig 2011-04-12 08:39:02 -07:00
Makefile PCI: pci-label: Fix build failure when CONFIG_NLS is set to 'm' by allmodconfig 2011-04-12 08:39:02 -07:00
msi.c drivers: Final irq namespace conversion 2011-03-29 14:48:19 +02:00
msi.h PCI: MSI: Move MSI-X entry definition to pci_regs.h 2010-12-23 12:53:07 -08:00
pci-acpi.c ACPI: Remove the wakeup.run_wake_count device field 2011-02-24 19:58:53 +01:00
pci-driver.c PM / Hibernate: Introduce CONFIG_HIBERNATE_CALLBACKS 2011-04-11 22:54:42 +02:00
pci-label.c PCI: label: remove #include of ACPI header to avoid warnings 2011-03-16 10:24:34 -07:00
pci-stub.c PCI: pci-stub: ignore zero-length id parameters 2010-12-23 12:53:52 -08:00
pci-sysfs.c Fix common misspellings 2011-03-31 11:26:23 -03:00
pci.c PCI: PCIe links may not get configured for ASPM under POWERSAVE mode 2011-03-21 09:40:43 -07:00
pci.h PCI: Export ACPI _DSM provided firmware instance number and string name to sysfs 2011-03-04 10:41:56 -08:00
probe.c PCI: Avoid potential NULL pointer dereference in pci_scan_bridge 2011-02-08 13:08:05 -08:00
proc.c BKL: remove extraneous #include <smp_lock.h> 2010-11-17 08:59:32 -08:00
quirks.c Fix common misspellings 2011-03-31 11:26:23 -03:00
remove.c PCI: eliminate redundant pci_stop_dev() call from pci_destroy_dev() 2009-06-11 12:04:19 -07:00
rom.c
search.c PCI: use for_each_pci_dev() 2010-07-30 09:47:22 -07:00
setup-bus.c PCI: Clear bridge resource flags if requested size is 0 2011-05-16 18:33:35 -07:00
setup-irq.c PCI: use for_each_pci_dev() 2010-07-30 09:47:22 -07:00
setup-res.c PCI: fix message typo 2010-10-17 20:03:05 -07:00
slot.c PCI: bus speed strings should be const 2010-08-31 15:28:00 -07:00
syscall.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
vpd.c pci: Add helper to search for VPD keywords 2010-02-28 00:43:33 -08:00
xen-pcifront.c pci/xen: Cleanup: convert int** to int[] 2011-02-18 12:41:49 -05:00