[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Guile not running properly on GNU/Hurd
From: |
Ludovic Courtès |
Subject: |
Re: Guile not running properly on GNU/Hurd |
Date: |
Sat, 09 Feb 2013 00:41:31 +0100 |
User-agent: |
Gnus/5.130005 (Ma Gnus v0.5) Emacs/24.2 (gnu/linux) |
Richard Braun <rbraun@sceen.net> skribis:
> Actually, it has nothing to do with Mach. What happens is that, when
> catching one of the SIGUSR signals (SIGUSR1 i guess), the process calls
> sigsuspend, waiting for the next (probably SIGUSR2). But when returning
> from the handler (in sigreturn), the sigcontext is NULL, which actually
> makes sigreturn return. This is prohibited, and catched by setting the
> stack frame to run the firewall function (which, by running the hlt
> instruction, causes the SIGILL signal). I guess we could reduce the
> case to a small test unit that calls sigsuspend in a (SA_SIGINFO)
> signal handler and see how it goes, in which case there is a bug in the
> signal handling code.
Perhaps one test would be to #undef SA_SIGINFO in libgc’s
pthread_stop_world.c, and see if the problem still occurs?
Ludo’.