Staging
v0.5.1
v0.5.1
https://github.com/python/cpython
Revision 0b7629cd846e3e160ac07cafc4e97644024f11b8 authored by Victor Stinner on 10 June 2017, 09:20:03 UTC, committed by GitHub on 10 June 2017, 09:20:03 UTC
Before, it was possible to get the following sequence of events (especially on Windows, where the C-level signal handler for SIGINT is run in a separate thread): - SIGINT arrives - trip_signal is called - trip_signal writes to the wakeup fd - the main thread wakes up from select()-or-equivalent - the main thread checks for pending signals, but doesn't see any - the main thread drains the wakeup fd - the main thread goes back to sleep - trip_signal sets is_tripped=1 and calls Py_AddPendingCall to notify the main thread the it should run the Python-level signal handler - the main thread doesn't notice because it's asleep This has been causing repeated failures in the Trio test suite: https://github.com/python-trio/trio/issues/119 (cherry picked from commit 4ae01496971624c75080431806ed1c08e00f22c7)
1 parent 12cbd87
Tip revision: 0b7629cd846e3e160ac07cafc4e97644024f11b8 authored by Victor Stinner on 10 June 2017, 09:20:03 UTC
bpo-30038: fix race condition in signal delivery + wakeup fd (#1082) (#2075)
bpo-30038: fix race condition in signal delivery + wakeup fd (#1082) (#2075)
Tip revision: 0b7629c
File | Mode | Size |
---|---|---|
ACKS | -rw-r--r-- | 24.8 KB |
HISTORY | -rw-r--r-- | 1.3 MB |
NEWS | -rw-r--r-- | 328.1 KB |
Porting | -rw-r--r-- | 107 bytes |
README | -rw-r--r-- | 1.4 KB |
README.AIX | -rw-r--r-- | 5.0 KB |
README.coverity | -rw-r--r-- | 845 bytes |
README.valgrind | -rw-r--r-- | 4.5 KB |
SpecialBuilds.txt | -rw-r--r-- | 10.0 KB |
coverity_model.c | -rw-r--r-- | 4.1 KB |
gdbinit | -rw-r--r-- | 4.7 KB |
indent.pro | -rw-r--r-- | 557 bytes |
python-config.in | -rw-r--r-- | 2.0 KB |
python-config.sh.in | -rw-r--r-- | 2.9 KB |
python-wing3.wpr | -rw-r--r-- | 555 bytes |
python-wing4.wpr | -rw-r--r-- | 835 bytes |
python-wing5.wpr | -rw-r--r-- | 835 bytes |
python.man | -rw-r--r-- | 13.2 KB |
python.pc.in | -rw-r--r-- | 293 bytes |
svnmap.txt | -rw-r--r-- | 4.1 MB |
valgrind-python.supp | -rw-r--r-- | 8.2 KB |
vgrindefs | -rw-r--r-- | 500 bytes |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...