This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author martin.panter
Recipients docs@python, jon orebro, martin.panter, r.david.murray
Date 2015-12-11.06:25:12
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1449815113.32.0.949783076367.issue25666@psf.upfronthosting.co.za>
In-reply-to
Content
I think I figured out the problem. The signal module has a “main_pid” variable which it checks inside the low-level handler: <https://hg.python.org/cpython/file/v3.5.1/Modules/signalmodule.c#l300>. It looks like main_pid gets updated inside PyOS_AfterFork(), but I guess there is a race with a signal being received before main_pid is updated.

Maybe there should be some signal masking/blocking or something in the critical section between fork() and PyOS_AfterFork()?
History
Date User Action Args
2015-12-11 06:25:13martin.pantersetrecipients: + martin.panter, r.david.murray, docs@python, jon orebro
2015-12-11 06:25:13martin.pantersetmessageid: <1449815113.32.0.949783076367.issue25666@psf.upfronthosting.co.za>
2015-12-11 06:25:13martin.panterlinkissue25666 messages
2015-12-11 06:25:12martin.pantercreate