Re: Never mind. Re: Signal left blocked after signal handler.

From: Bruce Perens
Date: Wed Nov 26 2003 - 14:06:40 EST


What happened is that I attempted to simplify the test code to send to you, and simplified out the problem by using
kill() instead of causing a fault. :-)

It's just what you describe here:

One difference in 2.4.x and 2.6.x is the signal blocking wrt blocked
signals that are _forced_ (ie anything that is thread-synchronous, like a
SIGSEGV/SIGTRAP/SIGBUS that happens as a result of a fault):

- in 2.4.x they will just punch through the block
- in 2.6.x they will refuse to punch through a blocked signal, but
since they can't be delivered they will cause the process to be
killed


The behavior of 2.4 seems to be the same used by some dozens of Unix systems upon which my confidence test passed.

I agree that we should not be wrong in the same way as everyone else, and wonder if POSIX says anything about this. I could have been the only one using this "feature".

Thanks

Bruce


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/