Project

General

Profile

Actions

Bug #6877

closed

Suricata 8 general protection fault ip:698117 sp:7fd537b08090

Added by Andre ten Bohmer 8 months ago. Updated 7 months ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Affected Versions:
Effort:
Difficulty:
Label:

Description

# lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: RedHatEnterprise
Description:    Red Hat Enterprise Linux release 8.9 (Ootpa)
Release:        8.9
Codename:       Ootpa
$ uname -a
Linux server 4.18.0-513.18.1.el8_9.x86_64 #1 SMP Thu Feb 1 03:51:05 EST 2024 x86_64 x86_64 x86_64 GNU/Linux

- DPDK 23.07.0 (from git source)

$ libhtp]$ cat VERSION
# This file is intended to be sourced by sh
PKG_VERSION=0.5.47

Suricata:

$ ./configure --enable-gccprotect --prefix=/usr/ --sysconfdir=/etc/ --localstatedir=/var/ --enable-geoip --with-libhs-includes=/usr/local/include/hs/ --with-libhs-libraries=/usr/local/lib64/ --enable-rust --enable-http2-decompression --enable-dpdk

- Running ok: {"message": "8.0.0-dev (ece2029b0 2024-03-13)", "return": "OK"}

- Bug since : Suricata version 8.0.0-dev (bf5cfd6ab 2024-03-19)

Mar 20 11:41:08 server suricata[1636293]: Invalid port_id=65535
Mar 20 11:41:08 server suricata[1636293]: Notice: threads: Threads created -> W: 102 FM: 5 FR: 5   Engine started. [TmThreadWaitOnThreadRunning:tm-threads.c:1899]
Mar 20 11:41:08 server suricata[1636293]: Invalid port_id=65535
Mar 20 11:41:08 server kernel: traps: W#04-84:00.1[1636703] general protection fault ip:698117 sp:7fd537b08090 error:0 in suricata[400000+a8c000]
Mar 20 11:41:08 server kernel: traps: W#13-84:00.1[1636712] general protection fault ip:698117 sp:7fd50bffd090 error:0
Mar 20 11:41:08 server suricata[1636293]: Invalid port_id=65535
Mar 20 11:41:09 server systemd[1]: suricata.service: Main process exited, code=killed, status=11/SEGV
Mar 20 11:41:09 server systemd[1]: suricata.service: Failed with result 'signal'.


$ gdb --args /bin/suricata -c /etc/suricata/suricata.yaml --pidfile /var/run/suricata.pid --user root --dpdk -vvv

Info: unix-manager: unix socket '/var/run/suricata/suricata-command.socket' [UnixNew:unix-manager.c:136]
[New Thread 0x7ffd777fe700 (LWP 1603728)]
Perf: threads: Setting prio 0 for thread "US", thread id 1603728 [TmThreadSetupOptions:tm-threads.c:883]
Invalid port_id=65535

Notice: threads: Threads created -> W: 102 FM: 5 FR: 5   Engine started. [TmThreadWaitOnThreadRunning:tm-threads.c:1899]
Invalid port_id=65535

Perf: hugepages: 1048576kB hugepages on NUMA node 0 are unused and can be deallocated [SystemHugepageEvaluateHugepages:util-hugepages.c:392]
Perf: hugepages: 1048576kB hugepages on NUMA node 1 are unused and can be deallocated [SystemHugepageEvaluateHugepages:util-hugepages.c:392]
Invalid port_id=65535
Thread 216 "W#01-84:00.1" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffe0591d700 (LWP 1603698)]
0x000000000062daba in rte_eth_rx_burst (nb_pkts=32, rx_pkts=0x7ffdf0520190, queue_id=0, port_id=65535) at /usr/local/include/rte_ethdev.h:5963
5963            nb_rx = p->rx_pkt_burst(qd, rx_pkts, nb_pkts);
Missing separate debuginfos, use: yum debuginfo-install libatomic-8.5.0-20.el8.x86_64

(gdb) bt
#0  0x000000000062daba in rte_eth_rx_burst (nb_pkts=32, rx_pkts=0x7ffdf0520190, queue_id=0, port_id=65535) at /usr/local/include/rte_ethdev.h:5963
#1  ReceiveDPDKLoop (slot=<optimized out>, data=<optimized out>, tv=<optimized out>) at source-dpdk.c:583
#2  ReceiveDPDKLoop (tv=0x1eb91e20, data=0x7ffdf0520120, slot=<optimized out>) at source-dpdk.c:567
#3  0x00000000005613d7 in TmThreadsSlotVarRun (tv=tv@entry=0x1eb91e20, p=p@entry=0x7ffdf0520120, slot=<optimized out>) at tm-threads.c:135
#4  0x000000000062dc84 in TmThreadsSlotProcessPkt (p=0x7ffdf0520120, s=<optimized out>, tv=0x1eb91e20) at tm-threads.h:200
#5  ReceiveDPDKLoop (slot=<optimized out>, data=<optimized out>, tv=<optimized out>) at source-dpdk.c:598
#6  ReceiveDPDKLoop (tv=0x1eb91e20, data=0x7ffdf0520b60, slot=<optimized out>) at source-dpdk.c:567
#7  0x0000000000562a6c in TmThreadsSlotPktAcqLoop (td=0x1eb91e20) at tm-threads.c:318
#8  0x00007ffff67921ca in start_thread () from /lib64/libpthread.so.0
#9  0x00007ffff4146e73 in clone () from /lib64/libc.so.6

Actions #1

Updated by Victor Julien 8 months ago

  • Description updated (diff)
  • Status changed from New to Assigned
  • Assignee changed from OISF Dev to Lukas Sismis
  • Target version changed from TBD to 8.0.0-beta1
Actions #2

Updated by Victor Julien 8 months ago

  • Affected Versions git master added
  • Affected Versions deleted (8.0.0-beta1)
Actions #3

Updated by Victor Julien 8 months ago

Seeing the same on Ubuntu 23.10 with dpdk from packages.

Crashes immediately at start up.

Starting program: /home/victor/dev/suricata/src/suricata -c dpdk-ids.yaml --dpdk --disable-detection
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Notice: suricata: This is Suricata version 8.0.0-dev (02d962c4db 2024-03-20) running in SYSTEM mode [LogVersion:suricata.c:1150]
[New Thread 0x7ffff34cb6c0 (LWP 145359)]
[New Thread 0x7ffff2cca6c0 (LWP 145360)]
[New Thread 0x7ffff24c96c0 (LWP 145361)]
[New Thread 0x7ffff1cc86c0 (LWP 145362)]
[New Thread 0x7ffff14c76c0 (LWP 145363)]
[New Thread 0x7ffff0cc66c0 (LWP 145364)]
[New Thread 0x7ffff04c56c0 (LWP 145365)]
[New Thread 0x7fffefcc46c0 (LWP 145366)]
[New Thread 0x7fffef4c36c0 (LWP 145367)]
mlx5_net: No available register for sampler.
mlx5_net: No available register for sampler.
[New Thread 0x7fffeecc26c0 (LWP 145368)]
TELEMETRY: No legacy callbacks, legacy socket not created
Warning: dpdk: "all" specified in worker CPU cores affinity, excluding management threads [ConfigSetThreads:runmode-dpdk.c:379]
[New Thread 0x7fffee4c16c0 (LWP 145369)]
[New Thread 0x7fffed3ff6c0 (LWP 145370)]
[New Thread 0x7fffe7fff6c0 (LWP 145371)]
[New Thread 0x7fffe6fff6c0 (LWP 145372)]
[New Thread 0x7fffe5fff6c0 (LWP 145373)]
[New Thread 0x7fffe4fff6c0 (LWP 145374)]
[New Thread 0x7fffd37ff6c0 (LWP 145375)]
[New Thread 0x7fffd2ffe6c0 (LWP 145376)]
[New Thread 0x7fffd27fd6c0 (LWP 145377)]
[New Thread 0x7fffd1ffc6c0 (LWP 145378)]
Notice: threads: Threads created -> W: 6 FM: 1 FR: 1   Engine started. [TmThreadWaitOnThreadRunning:tm-threads.c:1899]
Invalid port_id=65535
Invalid port_id=65535

Thread 17 "W#06-01:00.0" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe4fff6c0 (LWP 145374)]
0x0000555555759cb5 in rte_eth_rx_burst (nb_pkts=32, rx_pkts=0x7fffcc2901a0, queue_id=5, port_id=65535) at /usr/include/dpdk/rte_ethdev.h:5883
5883            qd = p->rxq.data[queue_id];

Actions #4

Updated by Victor Julien 8 months ago

@Lukas Sismis by reverting the commits from https://github.com/OISF/suricata/pull/10642 things work again.

Actions #5

Updated by Lukas Sismis 8 months ago

  • Status changed from Assigned to In Review
Actions #6

Updated by Lukas Sismis 7 months ago

  • Status changed from In Review to Resolved
Actions #7

Updated by Lukas Sismis 7 months ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF