diff --git a/Lib/subprocess.py b/Lib/subprocess.py index 8203aded7d5..ccb46a6337b 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -660,8 +660,9 @@ def _use_posix_spawn(): # os.posix_spawn() is not available return False - if sys.platform == 'darwin': - # posix_spawn() is a syscall on macOS and properly reports errors + if sys.platform in ('darwin', 'sunos5'): + # posix_spawn() is a syscall on both macOS and Solaris, + # and properly reports errors return True # Check libc name and runtime libc version diff --git a/Misc/NEWS.d/next/Library/2021-08-17-16-01-44.bpo-44935.roUl0G.rst b/Misc/NEWS.d/next/Library/2021-08-17-16-01-44.bpo-44935.roUl0G.rst new file mode 100644 index 00000000000..3d41c3be140 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2021-08-17-16-01-44.bpo-44935.roUl0G.rst @@ -0,0 +1,2 @@ +:mod:`subprocess` on Solaris now also uses :func:`os.posix_spawn()` for +better performance.