-
Notifications
You must be signed in to change notification settings - Fork 43
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
crash, probably due to stack overflow #61
Comments
Probably fixed in commit 8b9359 which is included from 2.8.11 on. Please update and try again. |
Unfortunately, upgrading did not help. I have tried with 2.8.16. The core dump says:
|
I will have a look. I assume your record is an ai? |
Luckily(?) it crashed almost immediately after I enabled asyn tracing (it usually takes a few miniutes after restart). These are the IOC's last words:
The device talks serial but it is connected via terminal server, like this:
|
I should perhaps mention that the actual protocol used by the device is something we are currently in the process of reverse engineering.The protocol file as listed above above was the first thing we tried because it has worked (more or less) a few years ago on similar devices. I guess that by accident we happened to encounter a code path that is not used under normal circumstances. |
My analysis so far: |
Do you still have the core dump? Can you print *this? |
Please run again with |
Yes and yes. I guess the one you are interested in is at the bottom:
I think so, but it's not quite as simple. Will try.
As far as In know it's a "blade" (whatever that means exactly, I can ask if it is important), so neither a normal PC nor really something embedded. This is the same hardware that most of our servers run on. Definitely linux-x86_64.
Will do. |
Thanks. I see
Thus nothing should be in Hmm... |
Frame Maybe the optimizer has decided to replace lines 991,992 with the equivalent of "goto line 1107" (which executes the same code). In that case the stack dump would be misleading and we are recursing from line 991, not 1107. Switching on |
I am currently having trouble to reproduce the crash, working on it. When/if I can reproduce I will make the changes you suggested and follow up. |
I have finally come around to reproducing the crash with the requested changes: disable optimizations, and set |
We have a situation where our IOC crashes inside libstream.so. There are lots of communication errors right from the start. The protocol file is:
The core dump suggests that it runs into a stack overflow due to an endless recursion between
StreamCore::readCallback
andStreamCore::evalIn
:and so on and so on (> 1300 stack entries). The StreamDevice version is 2.8.10.
The text was updated successfully, but these errors were encountered: