Bug ID 1526
Summary rte_eth_rx_burst is blocking in libpcap pmd on no packets
Product DPDK
Version 24.03
Hardware x86
OS Linux
Status UNCONFIRMED
Severity normal
Priority Normal
Component ethdev
Assignee dev@dpdk.org
Reporter ofer.d@claroty.com
Target Milestone ---

Hi,

I see a weird behaviour when using libpcap pmd, that when no packets getting to
interface, the call to rte_eth_rx_burst is blocking.

I see the following stack:
#0  0x00007f17d496cbcf in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x000055f290d6ef84 in pcap_wait_for_frames_mmap ()
#2  0x000055f290d71db0 in pcap_read_linux_mmap_v3 ()
#3  0x000055f290d50c8f in pcap_next ()
#4  0x000055f290714263 in eth_pcap_rx ()
#5  0x000055f29018f2f2 in rte_eth_rx_burst (nb_pkts=64, rx_pkts=0x7ffec08382b0,
queue_id=<optimized out>, port_id=<optimized out>) at
/usr/local/stow/dpdk/include/rte_ethdev.h:6110

I looked in libpcap and it indeed seems that pcap_read_linux_mmap_v3 is
blocking, and what is meant to be called, when using dpdk, is
pcap_dpdk_dispatch (which indeed seems non blocking).

Can you please help debug and understand why is it behaving like that?

Thanks ahead!
          


You are receiving this mail because: