The Linux minidump writer is mishandling EINTR when waiting for a thread to stop after having attached to it · Issue #39 · rust-minidump/minidump-writer · GitHub
You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
<
8000
link rel="modulepreload" href="https://github.githubassets.com/assets/90-cf0684c4a30f613d.js" crossorigin="anonymous" />
The Linux minidump writer is mishandling EINTR when waiting for a thread to stop after having attached to it #39
This is something I noticed reading the code, see the loop here. We've just called ptrace(PTRACE_ATTACH, pid) on a given thread and we need to waitpid() for it. If we get an error and errno is EINTR (that is we received a signal and handled it) we're supposed to wait again, if we get any other error we should detach from the thread and return. It seems to me that we're doing the opposite (i.e. we detach and return on EINTR and try again for other values of errno).
Activity
Retry attaching to a process with ptrace::attach() if the call is int…
Retry attaching to a process with ptrace::attach() if the call is int…
Retry attaching to a process with ptrace::attach() 48F9 if the call is int…