-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Segmentation fault after many IS-05 requests #89
Comments
Sorry for delay in responding. The call stack looks to be related to DNS-SD tasks that use Avahi (which is the only dependency of nmos-cpp that uses D-Bus). Scheduling and processing of DNS-SD tasks are completely unrelated to processing of IS-05 requests. So it's hard to draw conclusions from this so far... If you were able to reproduce with more debug information, memory utilisation, etc. that would hopefully help determine the cause. Thanks. |
No Problem, not quick in responding myself as well :). We noticed we were using an older version of avahi (0.6.31) and tried switching to 0.7. Though I think it ran better in the end it still crashed over night. I did get a d-bus warning though:
I'm going to try compiling d-bus and avahi with debug symbols now. Hopefully to get some more information. |
Hi @wsneijers, were you able to discover any more about this issue? It'd be good to know where the problem lies. Thanks. |
@garethsb-sony, We are still trying to reproduce the error with debugging enabled. However it appears that the error disappears when use a executable with debugging. |
Sorry for the long wait. We are still trying to reproduce the issue with GDB attached (for some reason it doesn't crash with a debugger). It also happens while not interacting with the IS-05 API. I do have some more detailed logging though:
|
I'm sorry, how frustrating for you! Apart from that you're operating in the far future (2036!), the logs look normal until penultimate line when we get:
... interleaved with:
So that's signal 4, SIGILL, illegal instruction, followed by signal 11, SIGSEGV, invalid memory reference/segmentation fault. I'm sorry, I'm not sure how to debug that... |
FWIW, the timestamps in the signal messages appear to be 5-6 seconds after the nmos-cpp logging (which is queued and output on a separate logging thread by default), which means we're missing some context at the point that it dies. (Assuming boot time is 2036-01-01 00:00:00!) |
Just to add more to the conversation. We are seeing this behavior on a PowerPC (big endian). We are also implementing the stack now on an ARM based product (little endian). Don't know if that would make a difference. As of now we haven't seen the behavior on the ARM based system. |
Unfortunately I personally have no experience with nmos-cpp on PowerPC, only Intel and ARM. I guess it would be good to know for certain that the SIGILL is as a result of memory corruption or the compiler actually having emitted an instruction that isn't supported on the device. |
After updating receiver resources many times (overnight) a segmentation fault occours. The specific error:
Unfortunately the dependencies (ex. libraries) are compiled with -o0. So no list in GDB. I do have a callstack though:
Any help would be appreciated. Thanks!
The text was updated successfully, but these errors were encountered: