RE: [PATCH net-next v3 0/6] stmmac: Add XDP support

From: Ong, Boon Leong
Date: Wed Mar 31 2021 - 11:34:08 EST


Pls ignore this. I will resend the real v3. Sorry for glitch on my part.

>-----Original Message-----
>From: Ong, Boon Leong <boon.leong.ong@xxxxxxxxx>
>Sent: Wednesday, March 31, 2021 11:36 PM
>To: Giuseppe Cavallaro <peppe.cavallaro@xxxxxx>; Alexandre Torgue
><alexandre.torgue@xxxxxx>; Jose Abreu <joabreu@xxxxxxxxxxxx>; David S .
>Miller <davem@xxxxxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>; Alexei
>Starovoitov <ast@xxxxxxxxxx>; Daniel Borkmann <daniel@xxxxxxxxxxxxx>;
>Jesper Dangaard Brouer <hawk@xxxxxxxxxx>; John Fastabend
><john.fastabend@xxxxxxxxx>
>Cc: Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx>; Andrii Nakryiko
><andrii@xxxxxxxxxx>; Martin KaFai Lau <kafai@xxxxxx>; Song Liu
><songliubraving@xxxxxx>; Yonghong Song <yhs@xxxxxx>; KP Singh
><kpsingh@xxxxxxxxxx>; netdev@xxxxxxxxxxxxxxx; linux-stm32@st-md-
>mailman.stormreply.com; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-
>kernel@xxxxxxxxxxxxxxx; bpf@xxxxxxxxxxxxxxx; Ong, Boon Leong
><boon.leong.ong@xxxxxxxxx>
>Subject: [PATCH net-next v3 0/6] stmmac: Add XDP support
>
>Hi,
>
>This is the v3 patch series for adding XDP support to stmmac driver.
>
>Summary of the changes in v3 (per feedback from Jakub Kicinski):-
>
>4/6: Factor in XDP buffer header and tail adjustment by XDP prog.
>
>5/6: Added 'nq->trans_start = jiffies' to avoid TX time-out for XDP_TX.
>
>6/6: Added 'nq->trans_start = jiffies' to avoid TX time-out for
> ndo_xdp_xmit.
>
>I retested this patch series on all the test steps listed in v1 and the
>results look good as expected. I also used xdp_adjust_tail test app in
>samples/bpf for checking out XDP head and tail adjustment introduced in
>4/6 and the result below looks correct too.
>
>
>###########################################################
>#############
>
>DUT > root@intel-corei7-64:~ $ ./xdp_adjust_tail -i eth0 -P 400 -N
>==========================
>icmp "packet too big" sent: 0 pkts
>icmp "packet too big" sent: 0 pkts
>icmp "packet too big" sent: 0 pkts
>icmp "packet too big" sent: 0 pkts
>icmp "packet too big" sent: 1 pkts
>icmp "packet too big" sent: 1 pkts
>icmp "packet too big" sent: 1 pkts
>icmp "packet too big" sent: 2 pkts
>icmp "packet too big" sent: 4 pkts
>icmp "packet too big" sent: 6 pkts
>icmp "packet too big" sent: 8 pkts
>icmp "packet too big" sent: 9 pkts
>icmp "packet too big" sent: 10 pkts
>icmp "packet too big" sent: 10 pkts
>
>LP > root@intel-corei7-64:~# ping 169.254.1.11 -s 300
>PING 169.254.1.11 (169.254.1.11) 300(328) bytes of data.
>308 bytes from 169.254.1.11: icmp_seq=1 ttl=64 time=1.17 ms
>308 bytes from 169.254.1.11: icmp_seq=2 ttl=64 time=0.575 ms
>308 bytes from 169.254.1.11: icmp_seq=3 ttl=64 time=0.582 ms
>308 bytes from 169.254.1.11: icmp_seq=4 ttl=64 time=0.595 ms
>308 bytes from 169.254.1.11: icmp_seq=5 ttl=64 time=0.585 ms
>308 bytes from 169.254.1.11: icmp_seq=6 ttl=64 time=0.591 ms
>308 bytes from 169.254.1.11: icmp_seq=7 ttl=64 time=0.599 ms
>^C
>--- 169.254.1.11 ping statistics ---
>7 packets transmitted, 7 received, 0% packet loss, time 6103ms
>rtt min/avg/max/mdev = 0.575/0.670/1.166/0.202 ms
>
>LP > root@intel-corei7-64:~# ping 169.254.1.11 -s 500
>PING 169.254.1.11 (169.254.1.11) 500(528) bytes of data.
>From 169.254.1.11 icmp_seq=1 Frag needed and DF set (mtu = 436)
>From 169.254.1.11 icmp_seq=2 Frag needed and DF set (mtu = 436)
>From 169.254.1.11 icmp_seq=3 Frag needed and DF set (mtu = 436)
>From 169.254.1.11 icmp_seq=4 Frag needed and DF set (mtu = 436)
>From 169.254.1.11 icmp_seq=5 Frag needed and DF set (mtu = 436)
>From 169.254.1.11 icmp_seq=6 Frag needed and DF set (mtu = 436)
>
>
>###########################################################
>#############
>
>History of the previous patch series:
>
>v2: https://patchwork.kernel.org/project/netdevbpf/list/?series=457757
>v1: https://patchwork.kernel.org/project/netdevbpf/list/?series=457139
>
>It will be great if community can help to test or review the v3 patch
>series on your platform and provide me any new feedback if any.
>
>Thank you very much.
>Boon Leong
>
>Ong Boon Leong (6):
> net: stmmac: set IRQ affinity hint for multi MSI vectors
> net: stmmac: make SPH enable/disable to be configurable
> net: stmmac: arrange Tx tail pointer update to
> stmmac_flush_tx_descriptors
> net: stmmac: Add initial XDP support
> net: stmmac: Add support for XDP_TX action
> net: stmmac: Add support for XDP_REDIRECT action
>
> drivers/net/ethernet/stmicro/stmmac/Makefile | 1 +
> drivers/net/ethernet/stmicro/stmmac/stmmac.h | 35 +-
> .../net/ethernet/stmicro/stmmac/stmmac_main.c | 529 +++++++++++++++-
>--
> .../net/ethernet/stmicro/stmmac/stmmac_xdp.c | 40 ++
> .../net/ethernet/stmicro/stmmac/stmmac_xdp.h | 12 +
> 5 files changed, 537 insertions(+), 80 deletions(-)
> create mode 100644 drivers/net/ethernet/stmicro/stmmac/stmmac_xdp.c
> create mode 100644 drivers/net/ethernet/stmicro/stmmac/stmmac_xdp.h
>
>--
>2.25.1