summaryrefslogtreecommitdiffstats
path: root/drivers/pci/iova.h
diff options
context:
space:
mode:
authormark gross <mgross@linux.intel.com>2008-04-18 22:53:58 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2008-04-21 06:47:13 +0200
commit80b20dd853a2b00802e6254dc9f690f0da1a925c (patch)
tree38f7718fab83b9892aa76be5d782571a3abdd43a /drivers/pci/iova.h
parentPCI: pci_setup_bridge() mustn't be __devinit (diff)
downloadlinux-80b20dd853a2b00802e6254dc9f690f0da1a925c.tar.xz
linux-80b20dd853a2b00802e6254dc9f690f0da1a925c.zip
PCI: pci-iommu-iotlb-flushing-speedup
The following patch is an update to use an array instead of a list of IOVA's in the implementation of defered iotlb flushes. It takes inspiration from sba_iommu.c I like this implementation better as it encapsulates the batch process within intel-iommu.c, and no longer touches iova.h (which is shared) Performance data: Netperf 32byte UDP streaming 2.6.25-rc3-mm1: IOMMU-strict : 58Mps @ 62% cpu NO-IOMMU : 71Mbs @ 41% cpu List-based IOMMU-default-batched-IOTLB flush: 66Mbps @ 57% cpu with this patch: IOMMU-strict : 73Mps @ 75% cpu NO-IOMMU : 74Mbs @ 42% cpu Array-based IOMMU-default-batched-IOTLB flush: 72Mbps @ 62% cpu Signed-off-by: <mgross@linux.intel.com> Cc: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to '')
-rw-r--r--drivers/pci/iova.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/pci/iova.h b/drivers/pci/iova.h
index 2f1317801b20..228f6c94b69c 100644
--- a/drivers/pci/iova.h
+++ b/drivers/pci/iova.h
@@ -24,8 +24,6 @@ struct iova {
struct rb_node node;
unsigned long pfn_hi; /* IOMMU dish out addr hi */
unsigned long pfn_lo; /* IOMMU dish out addr lo */
- struct list_head list;
- void *dmar;
};
/* holds all the iova translations for a domain */