[cmucl-imp] gc & blocked signals

Carl Shapiro carl.shapiro at gmail.com
Wed Feb 8 02:25:06 UTC 2012

On Sat, Feb 4, 2012 at 7:33 AM, Raymond Toy <toy.raymond at gmail.com> wrote:
> So previously, the code was copying 32 bytes?  That seems like too much

Yes.  The structure assignment of the pending mask back to the ucontext
would copy 32-bytes instead of 8-bytes.

context->uc_sigmask = pending_mask;

I did not correctly recall the root cause.  The problem was a disagreement
over the size of sigset_t between glibc and the kernel.  The glibc
definition is a 32-byte bit set.


> NSIG is 65 on an Ubuntu 10 system.  It's also 65 on my OpenSuSE 11.3
> system that I normally use to build cmucl.

Yes, those numbers seem okay.  NSIG is sized correctly.  sigset_t is not.

More information about the cmucl-imp mailing list