intel-iommu: Clean up handling of "caching mode" vs. IOTLB flushing.
authorDavid Woodhouse <David.Woodhouse@intel.com>
Sun, 10 May 2009 18:58:49 +0000 (19:58 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Sun, 10 May 2009 18:58:49 +0000 (19:58 +0100)
commit1f0ef2aa18802a8ce7eb5a5164aaaf4d59073801
tree953fd29f1853b0773e9dcd72ab1ecb3231c6b457
parent4c25a2c1b90bf785fc2e2f0f0c74a80b3e070d39
intel-iommu: Clean up handling of "caching mode" vs. IOTLB flushing.

As we just did for context cache flushing, clean up the logic around
whether we need to flush the iotlb or just the write-buffer, depending
on caching mode.

Fix the same bug in qi_flush_iotlb() that qi_flush_context() had -- it
isn't supposed to be returning an error; it's supposed to be returning a
flag which triggers a write-buffer flush.

Remove some superfluous conditional write-buffer flushes which could
never have happened because they weren't for non-present-to-present
mapping changes anyway.

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