[PATCH] net/e1000: support launchtime feature

Su, Simei simei.su at intel.com
Thu Jan 4 03:56:41 CET 2024


Hi Chuanyu,

> -----Original Message-----
> From: Chuanyu Xue <chuanyu.xue at uconn.edu>
> Sent: Thursday, January 4, 2024 5:52 AM
> To: Su, Simei <simei.su at intel.com>
> Cc: Xing, Beilei <beilei.xing at intel.com>; chuanyu.xue at uconn.edu;
> dev at dpdk.org; Zhang, Qi Z <qi.z.zhang at intel.com>; Lu, Wenzhuo
> <wenzhuo.lu at intel.com>
> Subject: RE: [PATCH] net/e1000: support launchtime feature
> 
> Hi, Simei
> 
> Thank you for your guidance on how to test this feature.
> 
> >> Following is how I try to test with testpmd. Please let me know if I
> >> did something wrong.
> >>
> >>       sudo ./dpdk-testpmd -- -i --forward-mode=txonly
> >>
> >>       testpmd> port stop 0
> >>       testpmd> set burst 1
> >>       testpmd> set txtimes 100000000,0
> >>       testpmd> port config 0 tx_offload send_on_timestamp on
> >>       testpmd> port start 0
> >>       testpmd> start
> >
> >When testing launch time feature with igc driver, firstly, some code
> >change made in txonly.c:
> >pkt->ol_flags |= RTE_MBUF_F_TX_IEEE1588_TMST; (this flag should be
> >pkt->added to
> >forward PTP packet with hardware Tx timestamp)
> >
> ># ./build/app/dpdk-testpmd -a 0000:81:00.0 -c f -n 4 -- -i
> >--tx-offloads=0x200000
> >testpmd> set burst 1
> >testpmd> set fwd txonly
> >testpmd> set txtimes 1000000,0
> >testpmd> start
> >
> >On receiver side (with tcpdump):
> ># tcpdump -Q in -ttt -ni ens25f3 --time-stamp-precision=nano -j
> >adapter_unsynced -c 32
> 
> Now dpdk-testpmd works well with this patch after I add the flag in txonly.c as
> you mentioned.

OK, good.

> 
> It is worth noting that I also added `rte_eth_timesync_enable(pi);` in the
> function `tx_only_begin` in txonly.c to enable the PTP clock. Otherwise, all Tx
> packets scheduled are dropped.

Yes, got it.

> 
> Following are the measurement results on the listener. I use the same
> configuration as you mentioned for dpdk-testpmd on the talker.
> 
>     ➜  ~ sudo tcpdump -Q in -ttt -ni enp1s0 --time-stamp-precision=nano -j
> adapter_unsynced -c 32
> 
>     tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
>     listening on enp1s0, link-type EN10MB (Ethernet), snapshot length
> 262144 bytes
> 
> 
>      00:00:00.000000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000008 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      ....
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000008 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>      00:00:00.001000000 IP 198.18.0.1.9 > 198.18.0.2.9: UDP, length 22
>     32 packets captured
>     118 packets received by filter
>     0 packets dropped by kernel
> 
> Above test is based on the patch v2 with Intel i210 NIC.

OK. I will review v2 patch.

Thanks,
Simei 

> 
> - Chuanyu


More information about the dev mailing list