◐ Shell
clean mode source ↗

Message 325647 - Python tracker

vfork() is more dangerous than fork() because the parent and child processes share memory (not copy-on-write, but really the same memory). Whether or not this affects posix_spawn depends on its implementation (to give a very vague statement).

Glibc already uses vfork() in a number of cases, I'd expect that those are the cases where it is safe to use vfork() in the implementation of posix_spawn in the context of glibc.  I'd therefore carefully test the use of vfork() in other cases to make sure those don't affect the parent process.