mbox series

[net,v2,0/3] dpaa_eth: A050385 erratum workaround fixes under XDP

Message ID cover.1612456902.git.camelia.groza@nxp.com (mailing list archive)
Headers show
Series dpaa_eth: A050385 erratum workaround fixes under XDP | expand

Message

Camelia Alexandra Groza Feb. 4, 2021, 4:49 p.m. UTC
This series addresses issue with the current workaround for the A050385
erratum in XDP scenarios.

The first patch makes sure the xdp_frame structure stored at the start of
new buffers isn't overwritten.

The second patch decreases the required data alignment value, thus
preventing unnecessary realignments.

The third patch moves the data in place to align it, instead of allocating
a new buffer for each frame that breaks the alignment rules, thus bringing
an up to 40% performance increase. With this change, the impact of the
erratum workaround is reduced in many cases to a single digit decrease, and
to lower double digits in single flow scenarios.

Changes in v2:
- guarantee enough tailroom is available for the shared_info in 1/3

Camelia Groza (3):
  dpaa_eth: reserve space for the xdp_frame under the A050385 erratum
  dpaa_eth: reduce data alignment requirements for the A050385 erratum
  dpaa_eth: try to move the data in place for the A050385 erratum

 .../net/ethernet/freescale/dpaa/dpaa_eth.c    | 42 +++++++++++++++++--
 1 file changed, 38 insertions(+), 4 deletions(-)

--
2.17.1

Comments

Maciej Fijalkowski Feb. 4, 2021, 6:54 p.m. UTC | #1
On Thu, Feb 04, 2021 at 06:49:25PM +0200, Camelia Groza wrote:
> This series addresses issue with the current workaround for the A050385
> erratum in XDP scenarios.
> 
> The first patch makes sure the xdp_frame structure stored at the start of
> new buffers isn't overwritten.
> 
> The second patch decreases the required data alignment value, thus
> preventing unnecessary realignments.
> 
> The third patch moves the data in place to align it, instead of allocating
> a new buffer for each frame that breaks the alignment rules, thus bringing
> an up to 40% performance increase. With this change, the impact of the
> erratum workaround is reduced in many cases to a single digit decrease, and
> to lower double digits in single flow scenarios.
> 

For series:
Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>

> Changes in v2:
> - guarantee enough tailroom is available for the shared_info in 1/3
> 
> Camelia Groza (3):
>   dpaa_eth: reserve space for the xdp_frame under the A050385 erratum
>   dpaa_eth: reduce data alignment requirements for the A050385 erratum
>   dpaa_eth: try to move the data in place for the A050385 erratum
> 
>  .../net/ethernet/freescale/dpaa/dpaa_eth.c    | 42 +++++++++++++++++--
>  1 file changed, 38 insertions(+), 4 deletions(-)
> 
> --
> 2.17.1
>
Madalin Bucur (OSS) Feb. 5, 2021, 8:29 a.m. UTC | #2
> -----Original Message-----
> From: Camelia Alexandra Groza <camelia.groza@nxp.com>
> Sent: 04 February 2021 18:49
> To: kuba@kernel.org; davem@davemloft.net; maciej.fijalkowski@intel.com
> Cc: Madalin Bucur (OSS) <madalin.bucur@oss.nxp.com>;
> netdev@vger.kernel.org; Camelia Alexandra Groza <camelia.groza@nxp.com>
> Subject: [PATCH net v2 0/3] dpaa_eth: A050385 erratum workaround fixes
> under XDP
> 
> This series addresses issue with the current workaround for the A050385
> erratum in XDP scenarios.
> 
> The first patch makes sure the xdp_frame structure stored at the start of
> new buffers isn't overwritten.
> 
> The second patch decreases the required data alignment value, thus
> preventing unnecessary realignments.
> 
> The third patch moves the data in place to align it, instead of allocating
> a new buffer for each frame that breaks the alignment rules, thus bringing
> an up to 40% performance increase. With this change, the impact of the
> erratum workaround is reduced in many cases to a single digit decrease,
> and
> to lower double digits in single flow scenarios.
> 
> Changes in v2:
> - guarantee enough tailroom is available for the shared_info in 1/3
> 
> Camelia Groza (3):
>   dpaa_eth: reserve space for the xdp_frame under the A050385 erratum
>   dpaa_eth: reduce data alignment requirements for the A050385 erratum
>   dpaa_eth: try to move the data in place for the A050385 erratum
> 
>  .../net/ethernet/freescale/dpaa/dpaa_eth.c    | 42 +++++++++++++++++--
>  1 file changed, 38 insertions(+), 4 deletions(-)
> 
> --
> 2.17.1

For the series,

Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Jakub Kicinski Feb. 6, 2021, 5:48 p.m. UTC | #3
On Thu,  4 Feb 2021 18:49:25 +0200 Camelia Groza wrote:
> This series addresses issue with the current workaround for the A050385
> erratum in XDP scenarios.
> 
> The first patch makes sure the xdp_frame structure stored at the start of
> new buffers isn't overwritten.
> 
> The second patch decreases the required data alignment value, thus
> preventing unnecessary realignments.
> 
> The third patch moves the data in place to align it, instead of allocating
> a new buffer for each frame that breaks the alignment rules, thus bringing
> an up to 40% performance increase. With this change, the impact of the
> erratum workaround is reduced in many cases to a single digit decrease, and
> to lower double digits in single flow scenarios.

Looks like reply bot got moody.

Applied, thanks everyone!