[cmucl-imp] gc & blocked signals
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