netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Fugang Duan <b38611@freescale.com>
To: <b20596@freescale.com>, <davem@davemloft.net>
Cc: <ezequiel.garcia@free-electrons.com>, <netdev@vger.kernel.org>,
	<shawn.guo@linaro.org>, <bhutchings@solarflare.com>,
	<b38611@freescale.com>, <stephen@networkplumber.org>
Subject: [PATCH v1 0/6] *** net: fec: Enable Software TSO to improve the tx performance ***
Date: Fri, 30 May 2014 10:05:46 +0800	[thread overview]
Message-ID: <1401415552-2263-1-git-send-email-b38611@freescale.com> (raw)

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

             reply	other threads:[~2014-05-30  3:27 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-30  2:05 Fugang Duan [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1401415552-2263-1-git-send-email-b38611@freescale.com \
    --to=b38611@freescale.com \
    --cc=b20596@freescale.com \
    --cc=bhutchings@solarflare.com \
    --cc=davem@davemloft.net \
    --cc=ezequiel.garcia@free-electrons.com \
    --cc=netdev@vger.kernel.org \
    --cc=shawn.guo@linaro.org \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).