cxgb4: Add low latency socket busy_poll support
authorHariprasad Shenai <hariprasad@chelsio.com>
Wed, 4 Feb 2015 10:02:52 +0000 (15:32 +0530)
committerDavid S. Miller <davem@davemloft.net>
Thu, 5 Feb 2015 07:55:58 +0000 (23:55 -0800)
commit3a336cb17183b29827fdffaffb5e62f8912f5ca1
tree0ca09203cd1f8ace3496ad697e85679c658f0861
parent3fcf9011188755c883f377764c463b4271d594a2
cxgb4: Add low latency socket busy_poll support

cxgb_busy_poll, corresponding to ndo_busy_poll, gets called by the socket
waiting for data.

With busy_poll enabled, improvement is seen in latency numbers as observed by
collecting netperf TCP_RR numbers.
Below are latency number, with and without busy-poll, in a switched environment
for a particular msg size:
netperf command: netperf -4 -H <ip> -l 30 -t TCP_RR -- -r1,1
Latency without busy-poll: ~16.25 us
Latency with busy-poll   : ~08.79 us

Based on original work by Kumar Sanghvi <kumaras@chelsio.com>

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/cxgb4.h
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
drivers/net/ethernet/chelsio/cxgb4/sge.c
drivers/net/ethernet/chelsio/cxgb4/t4_values.h