https://bugs.dpdk.org/show_bug.cgi?id=956
Bug ID: 956 Summary: [dpdk-22.03][asan] dpdk-pdump: detected memory leaks when quit dpdk-pdump Product: DPDK Version: unspecified Hardware: All OS: All Status: UNCONFIRMED Severity: normal Priority: Normal Component: other Assignee: dev@dpdk.org Reporter: weix.l...@intel.com Target Milestone: --- [Environmen] DPDK version: Use make showversion or for a non-released version: git remote -v && git show-ref --heads DPDK-22.03-rc1: ee05a93e1e6633d0fdec409faf09f12a2e05b991 Other software versions: N/A OS: Ubuntu 20.04.3 LTS/Linux 5.8.0-48-generic Compiler: gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04) Hardware platform: Intel(R) Xeon(R) Platinum 8280M CPU @ 2.70GHz NIC hardware: Intel Ethernet Controller XL710 for 40GbE QSFP+ 1583 NIC firmware: i40e-2.17.15/8.30 0x8000a4ae 1.2926.0 [Test Setup] Steps to reproduce List the steps to reproduce the issue. 1. Bind 2 NIC port to vfio-pci: dpdk-devbind.py --force --bind=vfio-pci 0000:af:00.0 0000:af:00.1 2. Build DPDK enable ASAN: CC=gcc meson -Denable_kmods=True -Dlibdir=lib -Dbuildtype=debug -Db_lundef=false -Db_sanitize=address --default-library=static x86_64-native-linuxapp-gcc ninja -C x86_64-native-linuxapp-gcc 3. Start vhost-user dpdk-testpmd: x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 28,29,30,31,32,33,34,35,36 -n 4 -a 0000:af:00.0 -a 0000:af:00.1 --file-prefix=vhost --vdev 'eth_vhost0,iface=vhost-net0,queues=8,client=1' -- -i --nb-cores=5 --txq=8 --rxq=8 --txd=1024 --rxd=1024 4. Start virtio-user dpdk-testpmd: x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 38,39 -n 4 --file-prefix=virtio --no-pci --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=vhost-net0,server=1,queues=8,mrg_rxbuf=1,in_order=1 -- -i --txd=1024 --rxd=1024 --nb-cores=1 --rxq=8 --txq=8 5. Start dpdk-pdump to capture the virtio-user side packets: x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio -- --pdump 'device_id=net_virtio_user0,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000' 6. Execute `CTRL + C` to quit dpdk-pdump. Show the output from the previous commands. root@dut220:/home/lingwei/dpdk# x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=virtio -- --pdump 'device_id=net_virtio_user0,queue=*,rx-dev=/root/pdump-rx.pcap,mbuf-size=8000' EAL: Detected CPU lcores: 112 EAL: Detected NUMA nodes: 2 EAL: RTE Version: 'DPDK 22.03.0-rc1' EAL: Detected static linkage of DPDK EAL: Multi-process socket /var/run/dpdk/virtio/mp_socket_2823035_b689b255c3584 EAL: Selected IOVA mode 'VA' EAL: VFIO support initialized EAL: 0000:80:04.0 cannot find TAILQ entry for PCI device! EAL: Requested device 0000:80:04.0 cannot be used EAL: 0000:80:04.1 cannot find TAILQ entry for PCI device! EAL: Requested device 0000:80:04.1 cannot be used EAL: 0000:80:04.2 cannot find TAILQ entry for PCI device! EAL: Requested device 0000:80:04.2 cannot be used Port 1 MAC: 02 70 63 61 70 00 core (0), capture for (1) tuples - port 0 device (net_virtio_user0) queue 65535 Signal 2 received, preparing to exit... ##### PDUMP DEBUG STATS ##### -packets dequeued: 0 -packets transmitted to vdev: 0 -packets freed: 0 ================================================================= ==2823035==ERROR: LeakSanitizer: detected memory leaks Direct leak of 136 byte(s) in 1 object(s) allocated from: #0 0x7fca5ba77dc6 in calloc (/lib/x86_64-linux-gnu/libasan.so.5+0x10ddc6) #1 0x564d8f98b8ba in alloc_devargs ../drivers/bus/vdev/vdev.c:243 #2 0x564d8f98bb1a in insert_vdev ../drivers/bus/vdev/vdev.c:276 #3 0x564d8f98cb15 in vdev_action ../drivers/bus/vdev/vdev.c:449 #4 0x564d8f88e743 in process_msg ../lib/eal/common/eal_common_proc.c:383 #5 0x564d8f88e92b in mp_handle ../lib/eal/common/eal_common_proc.c:401 #6 0x564d8f871ba0 in ctrl_thread_init ../lib/eal/common/eal_common_thread.c:203 #7 0x7fca5b749608 in start_thread /build/glibc-eX1tMB/glibc-2.31/nptl/pthread_create.c:477 Indirect leak of 1 byte(s) in 1 object(s) allocated from: #0 0x7fca5ba003dd in strdup (/lib/x86_64-linux-gnu/libasan.so.5+0x963dd) #1 0x564d8f98b95b in alloc_devargs ../drivers/bus/vdev/vdev.c:251 #2 0x564d8f98bb1a in insert_vdev ../drivers/bus/vdev/vdev.c:276 #3 0x564d8f98cb15 in vdev_action ../drivers/bus/vdev/vdev.c:449 #4 0x564d8f88e743 in process_msg ../lib/eal/common/eal_common_proc.c:383 #5 0x564d8f88e92b in mp_handle ../lib/eal/common/eal_common_proc.c:401 #6 0x564d8f871ba0 in ctrl_thread_init ../lib/eal/common/eal_common_thread.c:203 #7 0x7fca5b749608 in start_thread /build/glibc-eX1tMB/glibc-2.31/nptl/pthread_create.c:477 SUMMARY: AddressSanitizer: 137 byte(s) leaked in 2 allocation(s). [Expected Result] Explain what is the expected result in text or as an example output: Can quit dpdk-pdump normally. -- You are receiving this mail because: You are the assignee for the bug.