netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 0/6] *** net: fec: Enable Software TSO to improve the tx performance ***
@ 2014-05-30  2:05 Fugang Duan
  2014-05-30  2:05 ` [PATCH v1 1/6] net: fec: Factorize the .xmit transmit function Fugang Duan
                   ` (5 more replies)
  0 siblings, 6 replies; 28+ messages in thread
From: Fugang Duan @ 2014-05-30  2:05 UTC (permalink / raw)
  To: b20596, davem
  Cc: ezequiel.garcia, netdev, shawn.guo, bhutchings, b38611, stephen

Add SG and software TSO support for FEC.
This feature allows to improve outbound throughput performance.
Tested on imx6dl sabresd board, running iperf tcp tests shows:
	* 82% improvement comparing with NO SG & TSO patch

$ ethtool -K eth0 sg on
$ ethtool -K eth0 tso on
 [  3] local 10.192.242.108 port 35388 connected with 10.192.242.167 port 5001
 [ ID] Interval       Transfer     Bandwidth
 [  3]  0.0- 3.0 sec   181 MBytes   506 Mbits/sec

$ ethtool -K eth0 sg off
$ ethtool -K eth0 tso off
[  3] local 10.192.242.108 port 52618 connected with 10.192.242.167 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 3.0 sec  99.5 MBytes   278 Mbits/sec

FEC HW support IP header and TCP/UDP hw checksum, support multi buffer descriptor transfer
one frame, but don't support HW TSO, so FEC bandwidth is limited to this.

The patch set just enable TSO feature.  Test on imx6dl sabresd board, there have 82% improvement.
The software TSO also tested on imx6sx platform, the cpu loading reduce from 100% to 52% with the
same Bandwidth, later, i will send some patch let FEC support imx6sx platform.


Fugang Duan (6):
  net: fec: Factorize the .xmit transmit function
  net: fec: Enable IP header hardware checksum
  net: fec: Factorize feature setting
  net: fec: Increase buffer descriptor entry number
  net: fec: Add Scatter/gather support
  net: fec: Add software TSO support

 drivers/net/ethernet/freescale/fec.h      |   12 +-
 drivers/net/ethernet/freescale/fec_main.c |  510 +++++++++++++++++++++++-----
 2 files changed, 427 insertions(+), 95 deletions(-)

-- 
1.7.8

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2014-06-01  2:25 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-30  2:05 [PATCH v1 0/6] *** net: fec: Enable Software TSO to improve the tx performance *** Fugang Duan
2014-05-30  2:05 ` [PATCH v1 1/6] net: fec: Factorize the .xmit transmit function Fugang Duan
2014-05-30  2:05 ` [PATCH v1 2/6] net: fec: Enable IP header hardware checksum Fugang Duan
2014-05-30  2:05 ` [PATCH v1 3/6] net: fec: Factorize feature setting Fugang Duan
2014-05-30  2:05 ` [PATCH v1 4/6] net: fec: Increase buffer descriptor entry number Fugang Duan
2014-05-30  9:10   ` David Laight
2014-05-30  9:42     ` fugang.duan
2014-05-30 13:13       ` Eric Dumazet
2014-05-30 14:01         ` ezequiel.garcia
2014-05-30 14:54           ` Eric Dumazet
2014-05-30 15:08             ` fugang.duan
2014-05-30 15:34               ` David Laight
2014-05-30 15:52                 ` fugang.duan
2014-05-30 15:58                 ` Eric Dumazet
2014-05-30 16:35                   ` ezequiel.garcia
2014-05-30 15:40               ` Eric Dumazet
2014-05-30 15:46                 ` fugang.duan
2014-05-30  2:05 ` [PATCH v1 5/6] net: fec: Add Scatter/gather support Fugang Duan
2014-05-30  4:37   ` Eric Dumazet
2014-05-30  4:48     ` fugang.duan
2014-05-30 14:26   ` Frank.Li
2014-05-30  2:05 ` [PATCH v1 6/6] net: fec: Add software TSO support Fugang Duan
2014-05-30  6:30   ` Eric Dumazet
2014-05-30  7:16     ` fugang.duan
2014-05-30 16:21       ` Eric Dumazet
2014-06-01  0:55         ` fugang.duan
2014-06-01  1:39           ` Eric Dumazet
2014-06-01  2:25             ` fugang.duan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).