Facing an issue with eth RX/TX call backs

Stephen Hemminger stephen at networkplumber.org
Mon Oct 17 17:01:05 CEST 2022


On Mon, 17 Oct 2022 04:42:54 +0000
Sridhar Pothuganti <sridhar.pothuganti at nxp.com> wrote:

> Hello All,
> 
> I am trying to use the "dpdk-pdump" application to capture the packets. The pdump library is registering the RX/TX callbacks, but the callback pointer is getting NULL in the RX/TX function during packet transmission.
> 
> The callbacks are set using the function "rte_eth_add_tx_callback" and the code is using GCC atomic built-in "__atomic_store_n" with memory order "__ATOMIC_RELEASE".
> 
> In the "rte_eth_tx_burst" the same pointer is being read using "__atomic_load_n" with memory order "__ATOMIC_RELAXED".
> 
> I have gone through the code, and the "pre_tx_burst_cbs" is not being cleared no where else except "rte_eth_remove_tx_callback". But this function is not being called till the termination of pdump application.
> 
> Can someone please point me to where am I missing?
> 
> Regards,
> Sridhar
> 

Are you using primary/secondary process model for pdump?

Can you run your application under gdb?
If so, check the callback after pdump sets it up.
Then add memory watchpoint to see where it gets cleared.


More information about the users mailing list