[PATCH net-next 1/1] net: stmmac: enhance XDP ZC driver level switching performance

Kurt Kanzenbach kurt at linutronix.de
Sun Nov 14 07:11:41 PST 2021


On Thu Nov 11 2021, Ong Boon Leong wrote:
> The previous stmmac_xdp_set_prog() implementation uses stmmac_release()
> and stmmac_open() which tear down the PHY device and causes undesirable
> autonegotiation which causes a delay whenever AFXDP ZC is setup.
>
> This patch introduces two new functions that just sufficiently tear
> down DMA descriptors, buffer, NAPI process, and IRQs and reestablish
> them accordingly in both stmmac_xdp_release() and stammac_xdp_open().
>
> As the results of this enhancement, we get rid of transient state
> introduced by the link auto-negotiation:
>
> $ ./xdpsock -i eth0 -t -z
>
>  sock0 at eth0:0 txonly xdp-drv
>                    pps            pkts           1.00
> rx                 0              0
> tx                 634444         634560
>
>  sock0 at eth0:0 txonly xdp-drv
>                    pps            pkts           1.00
> rx                 0              0
> tx                 632330         1267072
>
>  sock0 at eth0:0 txonly xdp-drv
>                    pps            pkts           1.00
> rx                 0              0
> tx                 632438         1899584
>
>  sock0 at eth0:0 txonly xdp-drv
>                    pps            pkts           1.00
> rx                 0              0
> tx                 632502         2532160
>
> Reported-by: Kurt Kanzenbach <kurt at linutronix.de>
> Signed-off-by: Ong Boon Leong <boon.leong.ong at intel.com>

Tested-by: Kurt Kanzenbach <kurt at linutronix.de>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 861 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20211114/ed421fd6/attachment.sig>


More information about the linux-arm-kernel mailing list