-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Linux driver stalls if a signal is received #1203
Comments
[Realsense Customer Engineering Team Comment] |
I created PR based on the patch, @richardroberts, thank you for bringing this up. |
Thank you for the followup. The issue arose on an embedded Intel Pentium platform, using Ubuntu Linux with realtime patches. A guess about why it occurred, is that we have some threads with very high priority running, and several sensors and I/O connected, so this may mean frequent interrupts cause the read to sometimes return early so that the kernel can deal with some I/O (very much a guess here). The issue never occurred for me when testing on the desktop, but only occurred on the embedded platform, where it did occur repeatably. On the embedded platform we could usually stream from the camera for anywhere between a few seconds to a minute before this hang occurred. I think a commercially-available computer most likely to reproduce this issue would be an "Up Board". If necessary, I might be able to work with you so that you're able to reproduce the issue, for this, contact me over email. |
Great. I tested the patch a bit on my machine. We have couple of Up-Boards in the lab, but don't run regular and prolong validation on them. We'll try to run a longer cycle on it to make sure the problem does not come back. |
[Realsense Customer Engineering Team Comment] |
Ok, if I understand correctly, you would like me to close the issue, so I'm doing that. Thanks! |
Issue Description
When a process using the RealSense API receives a signal, the driver stalls. This is because EINTR from a select call in backend-v4l2.cpp is not handled by attempting a retry. The attached patch fixes this issue in the testing I did. I'm hoping someone can take a look if this indeed looks like a bug, and whether there are any problems with the proposed fix.
select_check_eintr.patch.txt
The text was updated successfully, but these errors were encountered: