Skip to content

Commit

Permalink
Revert "pythongh-127586: properly restore blocked signals in resource…
Browse files Browse the repository at this point in the history
…_tracker.py (pythonGH-127587)" (python#127983)

This reverts commit 46006a1.
  • Loading branch information
hugovk authored Dec 16, 2024
1 parent e4981e3 commit 1d276ec
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 22 deletions.
7 changes: 3 additions & 4 deletions Lib/multiprocessing/resource_tracker.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,14 +155,13 @@ def ensure_running(self):
# that can make the child die before it registers signal handlers
# for SIGINT and SIGTERM. The mask is unregistered after spawning
# the child.
prev_sigmask = None
try:
if _HAVE_SIGMASK:
prev_sigmask = signal.pthread_sigmask(signal.SIG_BLOCK, _IGNORED_SIGNALS)
signal.pthread_sigmask(signal.SIG_BLOCK, _IGNORED_SIGNALS)
pid = util.spawnv_passfds(exe, args, fds_to_pass)
finally:
if prev_sigmask is not None:
signal.pthread_sigmask(signal.SIG_SETMASK, prev_sigmask)
if _HAVE_SIGMASK:
signal.pthread_sigmask(signal.SIG_UNBLOCK, _IGNORED_SIGNALS)
except:
os.close(w)
raise
Expand Down
15 changes: 0 additions & 15 deletions Lib/test/_test_multiprocessing.py
Original file line number Diff line number Diff line change
Expand Up @@ -6044,21 +6044,6 @@ def test_resource_tracker_exit_code(self):
self._test_resource_tracker_leak_resources(
cleanup=cleanup,
)
@unittest.skipUnless(hasattr(signal, "pthread_sigmask"), "pthread_sigmask is not available")
def test_resource_tracker_blocked_signals(self):
#
# gh-127586: Check that resource_tracker does not override blocked signals of caller.
#
from multiprocessing.resource_tracker import ResourceTracker
signals = {signal.SIGTERM, signal.SIGINT, signal.SIGUSR1}

for sig in signals:
signal.pthread_sigmask(signal.SIG_SETMASK, {sig})
self.assertEqual(signal.pthread_sigmask(signal.SIG_BLOCK, set()), {sig})
tracker = ResourceTracker()
tracker.ensure_running()
self.assertEqual(signal.pthread_sigmask(signal.SIG_BLOCK, set()), {sig})
tracker._stop()

class TestSimpleQueue(unittest.TestCase):

Expand Down

This file was deleted.

0 comments on commit 1d276ec

Please sign in to comment.