aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/vxge
diff options
context:
space:
mode:
authorBenjamin LaHaise <ben.lahaise@neterion.com>2009-08-04 06:21:21 -0400
committerDavid S. Miller <davem@davemloft.net>2009-08-05 16:10:44 -0400
commitff1b974cf30b282f90993ab658e59b73c152c0b8 (patch)
tree688bfaa372fbaa1cf7f7a2e18de970efbfb4c034 /drivers/net/vxge
parentff67df55f6bde9de5e508bf1f09509c843accd54 (diff)
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>
Diffstat (limited to 'drivers/net/vxge')
-rw-r--r--drivers/net/vxge/vxge-traffic.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/vxge/vxge-traffic.c b/drivers/net/vxge/vxge-traffic.c
index c249cd25a5d0..0efb769894ef 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,
1070 VXGE_HW_NODBW_GET_NO_SNOOP(no_snoop), 1070 VXGE_HW_NODBW_GET_NO_SNOOP(no_snoop),
1071 &fifo->nofl_db->control_0); 1071 &fifo->nofl_db->control_0);
1072 1072
1073 wmb(); 1073 mmiowb();
1074 1074
1075 writeq(txdl_ptr, &fifo->nofl_db->txdl_ptr); 1075 writeq(txdl_ptr, &fifo->nofl_db->txdl_ptr);
1076 wmb();
1077 1076
1077 mmiowb();
1078} 1078}
1079 1079
1080/** 1080/**