Re: gc & blocked signals
Carl Shapiro <[email protected]> Tue, 7 Feb 2012 18:25:06 -0800
| Newsgroups | gmane.lisp.cmucl.devel |
|---|---|
| Message-ID | <CANVK_QhmDrT+r3m1B2vGEeqBi4yg_LZ7SV=yvfUu4Xbt3G9WUQ@mail.gmail.com> |
On Sat, Feb 4, 2012 at 7:33 AM, Raymond Toy <[email protected]> wrote: > So previously, the code was copying 32 bytes? That seems like too much too. 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. http://repo.or.cz/w/glibc.git/blob?f=sysdeps/unix/sysv/linux/bits/sigset.h > 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. _______________________________________________ cmucl-imp mailing list [email protected] http://lists.zs64.net/mailman/listinfo/cmucl-imp