Hi,

Once a packet has been transmitted using an API call such as 
rte_eth_tx_burst(), what is the preferred method of determining that the packet 
has been transmitted?  I need to provide a notification to an application so 
that it can re-use/re-claim some application resources that were associated 
with the mbuf in the mbuf custom private data; this is a lazy re-claim, we're 
not after immediate per-packets events just eventual reclaim.

I've been finding that rte_eth_tx_done_cleanup() isn't very widely supported by 
many PMDs and when used with the Intel i40e PMD, it doesn't flush out mbufs 
where the associated descriptor hasn't yet been updated due to the descriptor 
update granularity (setting that down to 1 seems to result in at least 1 mbuf 
still remaining stuck in the PMD).  The reclaim cycle works fine when I'm 
continually sending, when I pause or stop sending, I never get my mbufs back so 
I'm wondering what the preferred way of achieving this is?

Many Thanks,
John A.


Reply via email to