SAVE-APPLICATION bug in 0.13 under Darwin

Gary Byers <[email protected]> Tue, 20 Aug 2002 10:50:37 -0600 (MDT)
Newsgroups gmane.lisp.openmcl.bugs
Message-ID <[email protected]>
I've seen cases where SAVE-APPLICATION dies with an "OS error 14" under
Darwin during 0.13's development.

"OS error 14" is EFAULT, indicating that the failure occurs when
trying to write from a virtual memory page that can't be accessed.  In
the cases where I've seen this happen, it was trying to write a
largish block of memory, some of which was write-protected and mapped
to the image file from which the lisp was launched, and some of which
mapped anonymously.

I'd thought that Darwin was simply confused by this, and that writing
the largish block a page at a time would work around the bug.  It's been
reported that SAVE-APPLICATION can fail with an EFAULT in 0.13, so apparently
that workaround isn't working.

Unfortunately, this bug seems to be very hard to reproduce: calling
SAVE-APPLICATION again (under seemingly identical circumstances) will
often work without problems.

"Crossing your fingers & hoping" isn't a good workaround either; I'll
see if I can find a better one.