Project

General

Profile

Actions

Bug #617

closed

segv in flow engine

Added by Victor Julien over 11 years ago.

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

Description

When flow engine is under severe pressure, it can segv:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff5f86700 (LWP 12649)]
0x0000003dd2e08fa0 in pthread_mutex_lock () from /lib64/libpthread.so.0
(gdb) bt full
#0  0x0000003dd2e08fa0 in pthread_mutex_lock () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000000000423ba7 in FlowGetNew (p=<value optimized out>) at flow-hash.c:445
        f = 0x0
#2  0x0000000000423eeb in FlowGetFlowFromHash (p=0x19f9870) at flow-hash.c:514
        pf = 0x7fffd434af90
        f = 0x0
        key = 3577150736
        fb = 0x7ffff77d06a0
#3  0x000000000041f801 in FlowHandlePacket (tv=<value optimized out>, p=0x19f9870) at flow.c:266
        f = <value optimized out>
#4  0x0000000000413ff5 in DecodePcapFile (tv=0xdb8adb0, p=0x19f9870, data=0x7fffec010e80,
    pq=0x22cac420, postpq=<value optimized out>) at source-pcap-file.c:323
        dtv = 0x7fffec010e80
        curr_ts = <value optimized out>
#5  0x00000000004efbc5 in TmThreadsSlotVarRun (tv=0xdb8adb0, p=0x19f9870,
    slot=<value optimized out>) at tm-threads.c:508
        r = <value optimized out>
        s = 0x22cac3e0
        extra_p = <value optimized out>
#6  0x0000000000414e4a in TmThreadsSlotProcessPkt (user=0x7fffec0008e0 "\373\201\016",
    h=<value optimized out>, pkt=0x7fffec000e50 "") at tm-threads.h:131
        r = TM_ECODE_OK
#7  PcapFileCallbackLoop (user=0x7fffec0008e0 "\373\201\016", h=<value optimized out>,
    pkt=0x7fffec000e50 "") at source-pcap-file.c:146
---Type <return> to continue, or q <return> to quit---
        ptv = 0x7fffec0008e0
        p = 0x19f9870
#8  0x00000037c4a1b66e in pcap_offline_read () from /usr/lib64/libpcap.so.1
No symbol table info available.
#9  0x0000000000414ade in ReceivePcapFileLoop (tv=0xdb8adb0, data=0x7fffec0008e0,
    slot=<value optimized out>) at source-pcap-file.c:184
        packet_q_len = <value optimized out>
        ptv = 0x7fffec0008e0
        s = <value optimized out>
        r = <value optimized out>
        __FUNCTION__ = "ReceivePcapFileLoop" 
#10 0x00000000004f27a5 in TmThreadsSlotPktAcqLoop (td=0xdb8adb0) at tm-threads.c:637
        tv = 0xdb8adb0
        s = 0x22cca650
        run = 1 '\001'
        r = <value optimized out>
        slot = 0x0
        __FUNCTION__ = "TmThreadsSlotPktAcqLoop" 
#11 0x0000003dd2e06ccb in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#12 0x00000037beee0c2d in clone () from /lib64/libc.so.6
No symbol table info available. 

Fixed by:

commit 8129e64875cc4c2b8b322c2df46e6dd335b3fbac
Author: Victor Julien <victor@inliniac.net>
Date:   Fri Nov 2 09:18:15 2012 +0100

    flow: fix crash when flow engine under extreme stress, and unable to force free any existing flow

No data to display

Actions

Also available in: Atom PDF