VT-d: handle Invalidation Queue Error to avoid system hang
authorYu Zhao <yu.zhao@intel.com>
Sun, 4 Jan 2009 08:28:52 +0000 (16:28 +0800)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Mon, 9 Feb 2009 11:03:17 +0000 (11:03 +0000)
commit704126ad81b8cb7d3d70adb9ecb143f4d3fb38af
treee73c4d595799661757b7505cd67833addef0635e
parent43f7392ba9e2585bf34f21399b1ed78692b5d437
VT-d: handle Invalidation Queue Error to avoid system hang

When hardware detects any error with a descriptor from the invalidation
queue, it stops fetching new descriptors from the queue until software
clears the Invalidation Queue Error bit in the Fault Status register.
Following fix handles the IQE so the kernel won't be trapped in an
infinite loop.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/pci/dmar.c
drivers/pci/intr_remapping.c
include/linux/intel-iommu.h