mbox series

[net-next,0/7] dpaa2-eth: add support for software TSO

Message ID 20220209092335.3064731-1-ioana.ciornei@nxp.com (mailing list archive)
Headers show
Series dpaa2-eth: add support for software TSO | expand

Message

Ioana Ciornei Feb. 9, 2022, 9:23 a.m. UTC
This series adds support for driver level TSO in the dpaa2-eth driver.

The first 5 patches lay the ground work for the actual feature:
rearrange some variable declaration, cleaning up the interraction with
the S/G Table buffer cache etc.

The 6th patch adds the actual driver level software TSO support by using
the usual tso_build_hdr()/tso_build_data() APIs and creates the S/G FDs.

With this patch set we can see the following improvement in a TCP flow
running on a single A72@2.2GHz of the LX2160A SoC:

before: 6.38Gbit/s
after:  8.48Gbit/s

Ioana Ciornei (7):
  dpaa2-eth: rearrange variable declaration in __dpaa2_eth_tx
  dpaa2-eth: allocate a fragment already aligned
  dpaa2-eth: extract the S/G table buffer cache interaction into
    functions
  dpaa2-eth: use the S/G table cache also for the normal S/G path
  dpaa2-eth: work with an array of FDs
  dpaa2-eth: add support for software TSO
  soc: fsl: dpio: read the consumer index from the cache inhibited area

 .../net/ethernet/freescale/dpaa2/dpaa2-eth.c  | 343 ++++++++++++++----
 .../net/ethernet/freescale/dpaa2/dpaa2-eth.h  |  18 +
 .../ethernet/freescale/dpaa2/dpaa2-ethtool.c  |   2 +
 drivers/soc/fsl/dpio/qbman-portal.c           |   8 +-
 4 files changed, 301 insertions(+), 70 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Feb. 9, 2022, 1:30 p.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (master)
by David S. Miller <davem@davemloft.net>:

On Wed,  9 Feb 2022 11:23:28 +0200 you wrote:
> This series adds support for driver level TSO in the dpaa2-eth driver.
> 
> The first 5 patches lay the ground work for the actual feature:
> rearrange some variable declaration, cleaning up the interraction with
> the S/G Table buffer cache etc.
> 
> The 6th patch adds the actual driver level software TSO support by using
> the usual tso_build_hdr()/tso_build_data() APIs and creates the S/G FDs.
> 
> [...]

Here is the summary with links:
  - [net-next,1/7] dpaa2-eth: rearrange variable declaration in __dpaa2_eth_tx
    https://git.kernel.org/netdev/net-next/c/035dd64de948
  - [net-next,2/7] dpaa2-eth: allocate a fragment already aligned
    https://git.kernel.org/netdev/net-next/c/8378a7910d14
  - [net-next,3/7] dpaa2-eth: extract the S/G table buffer cache interaction into functions
    https://git.kernel.org/netdev/net-next/c/ae3b08177529
  - [net-next,4/7] dpaa2-eth: use the S/G table cache also for the normal S/G path
    https://git.kernel.org/netdev/net-next/c/a4218aef7c86
  - [net-next,5/7] dpaa2-eth: work with an array of FDs
    https://git.kernel.org/netdev/net-next/c/a4ca448e8bfe
  - [net-next,6/7] dpaa2-eth: add support for software TSO
    https://git.kernel.org/netdev/net-next/c/3dc709e0cd47
  - [net-next,7/7] soc: fsl: dpio: read the consumer index from the cache inhibited area
    https://git.kernel.org/netdev/net-next/c/86ec882f59a0

You are awesome, thank you!