summaryrefslogtreecommitdiffstats
path: root/mm/mmzone.c
diff options
context:
space:
mode:
authormark gross <mgross@linux.intel.com>2008-03-04 15:22:08 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2008-04-20 21:47:07 -0700
commit5e0d2a6fc094a9b5047998deefeb1254c66856ee (patch)
treeeb4f5bfbd1b5f937685c1f980ca83fc21c377fea /mm/mmzone.c
parent0255f543d9888fb5c5fbcd265ca2eee2d6ecff6a (diff)
downloadop-kernel-dev-5e0d2a6fc094a9b5047998deefeb1254c66856ee.zip
op-kernel-dev-5e0d2a6fc094a9b5047998deefeb1254c66856ee.tar.gz
PCI: iommu: iotlb flushing
This patch is for batching up the flushing of the IOTLB for the DMAR implementation found in the Intel VT-d hardware. It works by building a list of to be flushed IOTLB entries and a bitmap list of which DMAR engine they are from. After either a high water mark (250 accessible via debugfs) or 10ms the list of iova's will be reclaimed and the DMAR engines associated are IOTLB-flushed. This approach recovers 15 to 20% of the performance lost when using the IOMMU for my netperf udp stream benchmark with small packets. It can be disabled with a kernel boot parameter "intel_iommu=strict". Its use does weaken the IOMMU protections a bit. Signed-off-by: Mark Gross <mgross@linux.intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'mm/mmzone.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud