Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Nov 2020 16:01:00 -0800
From:      Patrick Mahan <plmahan@gmail.com>
To:        Pete Wright <pete@nomadlogic.org>
Cc:        questions list <freebsd-questions@freebsd.org>
Subject:   Re: Helping understand cause of SIGSEGV
Message-ID:  <CAFDHx1Jg_9k3oWU8X-WdP2CJX8hnBYgMz%2BvxwOs766JZcM3WRQ@mail.gmail.com>
In-Reply-To: <c2eab4b0-b10b-9db3-1aa3-1f61689e24e8@nomadlogic.org>
References:  <c2eab4b0-b10b-9db3-1aa3-1f61689e24e8@nomadlogic.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Nov 5, 2020 at 10:20 AM Pete Wright <pete@nomadlogic.org> wrote:

> i was hoping someone with more experience in C and threading can help me
> better understand this SIGSEGV fault I'm hitting.  the background is I'm
> trying to get sysutils/fluent-bit working on 12.2-RELEASE as well as on
> CURRENT.
>
> I've created the following PR and upstream github issues:
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=250825
> https://github.com/fluent/fluent-bit/issues/2747
>
> so where i am at now is i am able to generate a useful core file when it
> hits the fault and can step through it in lldb.
>
> here is the output from fluent-bit:
> |[2020/11/04 22:18:12] [debug] [task] created task=0x416410a0 id=0 OK
> [2020/11/04 22:18:12] [trace] [thread 0x416091c0] created (custom data
> at 0x416091e0, size=80
> [2020/11/04 22:18:12] [engine] caught signal (SIGSEGV)
> #0  0x406d11ee          in  thr_sighandler() at
> /lib/libthr/thread/thr_sig.c:246
> Abort trap (core dumped)|
>
>
> here's an example from one of the threads (the github link above has the
> full backtrace) from lldb:
>
> | thread #1, name = 'fluent-bit', stop reason = signal SIGABRT
>    * frame #0: 0x000000004087100a libc.so.7`__sys_thr_kill at thr_kill.S:4
>      frame #1: 0x00000000407e6c84 libc.so.7`__raise(s=6) at raise.c:52:10
>      frame #2: 0x000000004089a5d9 libc.so.7`abort at abort.c:67:8
>      frame #3: 0x000000000034a7a8
> fluent-bit`flb_signal_handler(signal=11) at fluent-bit.c:418:9
>      frame #4: 0x00000000406d1c20
> libthr.so.3`handle_signal(actp=0x00007fffdfffc600, sig=11,
> info=0x00007fffdfffc9f0, ucp=0x00007fffdfffc680) at thr_sig.c:303:3
>      frame #5: 0x00000000406d11ef libthr.so.3`thr_sighandler(sig=11,
> info=0x00007fffdfffc9f0, _ucp=0x00007fffdfffc680) at thr_sig.c:246:2
>      frame #6: 0x00007fffffffe193
>      frame #7: 0x000000000036fe0c fluent-bit`tasks_start [inlined]
> output_params_set(th=0x00000000416091c0, data=0x000000004165d980,
> bytes=128, tag="random.0", tag_len=8, i_ins=0x0000000040e58000,
> out_plugin=0x0000000040e2dfc0, out_context=0x00000000416051e0,
> config=0x0000000040e19180) at flb_output.h:429:5
>

I would look at what is happening here in output_params_set().  Something
is accessing out of bounds memory.


>      frame #8: 0x000000000036fd14 fluent-bit`tasks_start [inlined]
> flb_output_thread(task=0x00000000416410a0, i_ins=0x0000000040e58000,
> o_ins=0x0000000040e5b000, config=0x0000000040e19180,
> buf=0x000000004165d980, size=128, tag="random.0", tag_len=8) at
> flb_output.h:522
>      frame #9: 0x000000000036fab5
> fluent-bit`tasks_start(in=0x0000000040e58000, config=0x0000000040e19180)
> at flb_engine_dispatch.c:190
>      frame #10: 0x000000000036f6fd fluent-bit`flb_engine_dispatch(id=0,
> in=0x0000000040e58000, config=0x0000000040e19180) at
> flb_engine_dispatch.c:293:5
>      frame #11: 0x000000000036ce10
> fluent-bit`flb_engine_flush(config=0x0000000040e19180,
> in_force=0x0000000000000000) at flb_engine.c:85:9
>      frame #12: 0x000000000036d43a fluent-bit`flb_engine_start [inlined]
> flb_engine_handle_event(fd=20, mask=1, config=0x0000000040e19180) at
> flb_engine.c:292:13
>      frame #13: 0x000000000036d3e6
> fluent-bit`flb_engine_start(config=0x0000000040e19180) at flb_engine.c:559
>      frame #14: 0x00000000003564ec
> fluent-bit`flb_lib_worker(data=0x0000000040e19180) at flb_lib.c:488:11
>      frame #15: 0x00000000406c87db
> libthr.so.3`thread_start(curthread=0x0000000040e12500) at
> thr_create.c:292:16
>
>
Patrick



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFDHx1Jg_9k3oWU8X-WdP2CJX8hnBYgMz%2BvxwOs766JZcM3WRQ>