X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fruntime%2Flinux-os.c;h=d44f19f4e2fe63f9d06983b0d369c45907d4e15c;hb=1e4629723d19f96d752235ffde34fe58431431ae;hp=69d5a41a109e0b7a3d2e82c3f988d28ec66c0402;hpb=68fd2d2dd6f265669a8957accd8a33e62786a97e;p=sbcl.git diff --git a/src/runtime/linux-os.c b/src/runtime/linux-os.c index 69d5a41..d44f19f 100644 --- a/src/runtime/linux-os.c +++ b/src/runtime/linux-os.c @@ -73,7 +73,7 @@ void os_init(void) * that has more than one digit initially -- CSR, 2002-02-12 */ minor_version = atoi(name.release+2); if (minor_version < 4) { - fprintf(stderr,"linux minor version=%d;\n enabling workarounds for SPARC kernel bugs in signal handling.\n", minor_version); + FSHOW((stderr,"linux minor version=%d;\n enabling workarounds for SPARC kernel bugs in signal handling.\n", minor_version)); early_kernel = 1; } #endif @@ -274,14 +274,14 @@ sigsegv_handler(int signal, siginfo_t *info, void* void_context) if (addr != NULL && *os_context_register_addr(context,reg_ALLOC) & (1L<<63)){ + /* This is the end of a pseudo-atomic section during which * a signal was received. We must deal with the pending interrupt * (see also interrupt.c, ../code/interrupt.lisp) */ - /* (how we got here: when interrupting, we set bit 63 in * reg_Alloc. At the end of the atomic section we tried to - * write to reg_Alloc, got a SIGSEGV (there's nothing mapped + * write to reg_ALLOC, got a SIGSEGV (there's nothing mapped * there) so ended up here */ *os_context_register_addr(context,reg_ALLOC) -= (1L<<63);