diff options
author | Benjamin LaHaise <ben.lahaise@neterion.com> | 2009-08-04 10:21:21 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-08-05 13:10:44 -0700 |
commit | ff1b974cf30b282f90993ab658e59b73c152c0b8 (patch) | |
tree | 688bfaa372fbaa1cf7f7a2e18de970efbfb4c034 | |
parent | ff67df55f6bde9de5e508bf1f09509c843accd54 (diff) | |
download | linux-3.10-ff1b974cf30b282f90993ab658e59b73c152c0b8.tar.gz linux-3.10-ff1b974cf30b282f90993ab658e59b73c152c0b8.tar.bz2 linux-3.10-ff1b974cf30b282f90993ab658e59b73c152c0b8.zip |
vxge: improve tx performance by using mmiowb() instead of wmb()
wmb() is extremely heavy on x86. The semantics required in the driver are
provided by mmiowb(), so use that and improve tx performance on P4 Xeons by
5-10%.
Signed-off-by: Benjamin LaHaise <ben.lahaise@neterion.com>
Signed-off-by: Sreenivasa Honnur <sreenivasa.honnur@neterion.com>
Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/vxge/vxge-traffic.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/vxge/vxge-traffic.c b/drivers/net/vxge/vxge-traffic.c index c249cd25a5d..0efb769894e 100644 --- a/drivers/net/vxge/vxge-traffic.c +++ b/drivers/net/vxge/vxge-traffic.c @@ -1070,11 +1070,11 @@ static void __vxge_hw_non_offload_db_post(struct __vxge_hw_fifo *fifo, VXGE_HW_NODBW_GET_NO_SNOOP(no_snoop), &fifo->nofl_db->control_0); - wmb(); + mmiowb(); writeq(txdl_ptr, &fifo->nofl_db->txdl_ptr); - wmb(); + mmiowb(); } /** |