On Sun, 20 May 2007 23:20:36 +0200, Folkert van Heusden wrote: > > > + switch(sig) { > > > + case SIGQUIT: > > > + case SIGILL: > > > + case SIGTRAP: > > > + case SIGABRT: > > > + case SIGBUS: > > > + case SIGFPE: > > > + case SIGSEGV: > > > + case SIGXCPU: > > > + case SIGXFSZ: > > > + case SIGSYS: > > > + case SIGSTKFLT: > > > > Unconditional? That's definitely a very bad idea. If anything only unhandled > > signals should be printed this way because some programs use them > > internally. > > Use these signals internally? Afaik these are fatal, stopping the > process. So using them internally would be a little tricky.
Tricky for Joe Programmer, perhaps. I've been personally involved with writing SIGFPE-handling code in a major telco application framework, for several different CPU architectures and operating systems. SIGSEGV is used by some garbage collectors, some JITs, and I believe also some software distributed shared memory implementations. I've heard of at least one Lisp implementation that used SIGBUS instead of dynamic type checks in some operations (e.g. to catch CAR of a non-CONS). Handled signals should not be logged. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/