Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
python: fix signals on SubprocessTransport
The methods .send_signal(), .terminate(), and .kill() on SubprocessTransport are all potentially racy because they enter the signal handling code on the subprocess object, which contains a waitpid() call which conflicts with our pidfd in the event that we're signalling a process that has very recently exited (ie: before we could notice it). Fix that by sending the signal ourselves in .send_signal(), and modifying the other two methods to use .send_signal().
- Loading branch information