Georg Nikodym writes:
This concept may be easier to understand when you start thinking
about
what the failure mode(s) should be. In UNIX we don't have the notion
that a process may arbitrarily fail when a copy-on-write operation
fails (we do have signals, but none describe COW failure) whereas
fork() _is_ defined as possibly failing with ENOMEM.
I think 4.3 BSD just swung the meataxe and SIGKILL'd the process
if it overcommitted swap space. So that's what I'd expect to
happen. Yeah, it's mondo unclean. Waiting for another process
to die and give up space would lead to deadlock situations I'm
sure.