On Sun, Oct 21, 2018 at 7:25 PM Martin Buchholz <martinrb@google.com> wrote:
As author of the vfork strategy ... I'm supportive of the directions in this thread.
Great.
vfork is even (!) less in favor than it used to be, so migrating off of it seems good. Just make sure we don't bring back the OOM problems or unacceptable overhead from e.g. an second exec. Create a 100GB heap, then run /bin/true 1000 times.
Tried it and it succeeded without issues. I didn't use a 100GB heap though because I don't have that kind of RAM! But, I created a long chain of object arrays totalling about 8GB and forced it to stay alive until after the 1000 execs of /bin/true and it worked fine. To verify that the program works correctly, I compared the results with VFORK and FORK. As expected, VFORK also worked correctly, but FORK failed with errno=ENOMEM. -- - DML