On Mon, Mar 24, 2008 at 11:08 PM, Carl Shapiro <[EMAIL PROTECTED]> wrote:
> On Mon, Mar 24, 2008 at 6:52 PM, Raymond Toy <[EMAIL PROTECTED]> wrote:
>  >  (run-program "/bin/cat" '("/etc/issue") :output "/tmp/foo")
>  >
>  >  causes a segv at address 0.  Not sure why yet, but it explains why I see
>  >  the segvs after cmucl prints out messages that foo-library.x86f is out
>  >  of date.

OK, I have reproduced this on the FC9 system.

It looks like the memset call in sigemptyset is corrupting memory.  I
have attached a patch which may be sufficient to work around the
segmentation fault in spawn but this is not sufficient overall.  I
have a more thorough patch queued up that resolves this issue
entirely.  I will check in those changes as soon as I can.

--- runprog.c~  2005-09-15 13:26:52.000000000 -0500
+++ runprog.c   2008-03-25 03:22:00.000000000 -0500
@@ -29,6 +29,7 @@
     setsid();

     /* Unblock all signals. */
+    __asm__ __volatile__ ("cld");
     sigemptyset(&set);
     sigprocmask(SIG_SETMASK, &set, NULL);

Reply via email to