Ignore:
Timestamp:
Sep 7, 2006, 8:58:05 AM (13 years ago)
Author:
gb
Message:

FreeBSD (at least with libthr) seems to mask synchronous signals.
Unmask them in signal handlers.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/lisp-kernel/x86-exceptions.c

    r5161 r5165  
    10671067  sa.sa_sigaction = (void *)handler;
    10681068  sigfillset(&sa.sa_mask);
     1069#ifdef FREEBSD
     1070  /* Strange FreeBSD behavior wrt synchronous signals */
     1071  sigdelset(&sa.sa_mask,SIGNUM_FOR_INTN_TRAP);
     1072  sigdelset(&sa.sa_mask,SIGTRAP);  /* let GDB work */
     1073  sigdelset(&sa.sa_mask,SIGILL);
     1074  sigdelset(&sa.sa_mask,SIGFPE);
     1075  sigdelset(&sa.sa_mask,SIGSEGV);
     1076#endif
    10691077  sa.sa_flags =
    10701078    SA_RESTART
Note: See TracChangeset for help on using the changeset viewer.