]> git.ipfire.org Git - thirdparty/suricata.git/commit
dpdk/mlx5: fix shutdown crash in IPS mode 9349/head
authorVictor Julien <vjulien@oisf.net>
Thu, 3 Aug 2023 14:02:10 +0000 (16:02 +0200)
committerVictor Julien <victor@inliniac.net>
Fri, 4 Aug 2023 21:02:38 +0000 (23:02 +0200)
commit2786ccb086d7f8c42f39d0ef048631c9c8ce66c7
treefe7452bb68fa7b5c42740d9a86e5f2464e37404e
parent5cef8fdfdfd3470a82a5c0abbec14065ec8c33da
dpdk/mlx5: fix shutdown crash in IPS mode

Make sure to first close all ports before freeing device mempools.

Thread 1 "Suricata-Main" received signal SIGSEGV, Segmentation fault.
0x00007ffff456a3fb in ?? () from /usr/lib/x86_64-linux-gnu/dpdk/pmds-20.0/librte_pmd_mlx5.so
(gdb) bt
 #0  0x00007ffff456a3fb in ?? () from /usr/lib/x86_64-linux-gnu/dpdk/pmds-20.0/librte_pmd_mlx5.so
 #1  0x00007ffff469a948 in ?? () from /usr/lib/x86_64-linux-gnu/dpdk/pmds-20.0/librte_pmd_mlx5.so
 #2  0x00007ffff45606aa in ?? () from /usr/lib/x86_64-linux-gnu/dpdk/pmds-20.0/librte_pmd_mlx5.so
 #3  0x00007ffff6d4ed8d in rte_eth_dev_close () from /usr/lib/x86_64-linux-gnu/librte_ethdev.so.20.0
 #4  0x000000000055fc4c in DPDKCloseDevice (ldev=ldev@entry=0xe3a400) at util-dpdk.c:53
 #5  0x000000000055f4eb in LiveDeviceListClean () at util-device.c:331
 #6  0x00000000005511c8 in GlobalsDestroy (suri=<optimized out>) at suricata.c:381
 #7  0x0000000000550a76 in SuricataMain (argc=<optimized out>, argv=<optimized out>) at suricata.c:3059
 #8  0x00007ffff6a24083 in __libc_start_main (main=0x54cca0 <main>, argc=8, argv=0x7fffffffe4c8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe4b8) at ../csu/libc-start.c:308
 #9  0x000000000054cbde in _start ()

Bug: #5619.
src/util-device.c
src/util-dpdk.c
src/util-dpdk.h