cpython/Lib/multiprocessing
Miss Islington (bot) 612b535e6d
[3.13] gh-118981: multiprocessing.popen_spawn_posix, fix potential hang (gh-118982) (#138606)
gh-118981: multiprocessing.popen_spawn_posix, fix potential hang (gh-118982)

fix potential hang.

It can happen that the child crashes right in the beginning for whatever reason. In this case, the parent will hang when writing into the pipe, because the child fd is not closed yet.

The normal pattern is to close the child fds right after the child proc is forked/executed/spawned, so when the child dies, then also the pipes will be closed, and there will be no hang (the parent gets SIGPIPE instead).
(cherry picked from commit 8ed5a2b56c)

Co-authored-by: Albert Zeyer <albzey@gmail.com>
2025-09-07 07:41:54 +00:00
..
dummy
__init__.py
connection.py [3.13] gh-132124: improve safety nets for creating AF_UNIX socket files (GH-134085) (#134448) 2025-08-04 07:38:49 -07:00
context.py [3.13] gh-80334: fix multiprocessing.freeze_support for other spawn platforms (GH-134462) (#134620) 2025-05-24 04:13:37 +00:00
forkserver.py [3.13] gh-135335: flush stdout/stderr in forkserver after preloading modules (GH-135338) (#135671) 2025-06-18 12:40:21 +00:00
heap.py
managers.py [3.13] gh-71936: Fix race condition in multiprocessing.Pool (GH-124973) (GH-126869) 2024-11-15 14:05:14 +00:00
pool.py
popen_fork.py gh-83856: Honor atexit for all multiprocessing start methods (GH-114279) 2024-05-03 11:45:46 -07:00
popen_forkserver.py
popen_spawn_posix.py [3.13] gh-118981: multiprocessing.popen_spawn_posix, fix potential hang (gh-118982) (#138606) 2025-09-07 07:41:54 +00:00
popen_spawn_win32.py
process.py gh-83856: Honor atexit for all multiprocessing start methods (GH-114279) 2024-05-03 11:45:46 -07:00
queues.py
reduction.py
resource_sharer.py
resource_tracker.py [3.13] gh-131788: make resource_tracker re-entrant safe (GH-131787) (#137738) 2025-08-14 12:52:30 +02:00
shared_memory.py
sharedctypes.py
spawn.py
synchronize.py [3.13] remove type annotations from multiprocessing. (GH-129381) (#129470) 2025-01-30 08:54:15 +00:00
util.py [3.13] gh-132124: improve safety nets for creating AF_UNIX socket files (GH-134085) (#134448) 2025-08-04 07:38:49 -07:00