On 7/6/2020 6:06 PM, Honnappa Nagarahalli wrote: > <snip> > >> Subject: Re: [PATCH v2 2/5] app/testpmd: enable burst stats for flowgen mode >> rx path >> >> On 6/26/2020 11:09 PM, Honnappa Nagarahalli wrote: >>> Enable missing burst stats for rx path for flowgen mode. >>> >>> Fixes: e9e23a617eb8 ("app/testpmd: add flowgen forwarding engine") >>> Cc: sta...@dpdk.org >>> >>> Signed-off-by: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com> >>> Reviewed-by: Phil Yang <phil.y...@arm.com> >>> Reviewed-by: Ruifeng Wang <ruifeng.w...@arm.com> >>> Tested-by: Phil Yang <phil.y...@arm.com> >>> --- >>> app/test-pmd/flowgen.c | 4 ++++ >>> 1 file changed, 4 insertions(+) >>> >>> diff --git a/app/test-pmd/flowgen.c b/app/test-pmd/flowgen.c index >>> 4bd351e67..011887c61 100644 >>> --- a/app/test-pmd/flowgen.c >>> +++ b/app/test-pmd/flowgen.c >>> @@ -111,6 +111,10 @@ pkt_burst_flow_gen(struct fwd_stream *fs) >>> /* Receive a burst of packets and discard them. */ >>> nb_rx = rte_eth_rx_burst(fs->rx_port, fs->rx_queue, pkts_burst, >>> nb_pkt_per_burst); >>> +#ifdef RTE_TEST_PMD_RECORD_BURST_STATS >>> + fs->rx_burst_stats.pkt_burst_spread[nb_rx]++; >>> +#endif >>> + >> >> Flow generator is for Tx, what is the point of getting stats for the Rx? > Is there any reason for this mode to receive the packets? > The reason I ask is, the core cycles include the RX call as well. So, we have > cycles/packet that includes the RX call and burst stats that does not show > the RX burst stats. > Do we need to remove the call to rte_eth_rx_burst API? >
The implementation receives packets and frees them immediately. I assume the Rx is implemented in case port receives packets, like if other end forwards the generated packets back to same port. Yes it consumes cycles for Rx but received packets are ignored, I am not sure if received packets have any meaning in flowgen to get additional burst stats.