On Fri, Dec 1, 2017 at 10:44 AM, Larry McVoy <lm@mcvoy.com> wrote:
Does anyone remember the reason that processes blocked in I/O don't catch
signals?  When did that become a thing, was that part of the original
design or did that happen in BSD?

I'm asking because I'm banging on FreeBSD and I can wedge it hard, to
the point that it won't recover, by just beating on tons of memory.

My understanding was that signal delivery only happens when the process is *running* in the kernel. If the process is sleeping on IO then it's not running, so the signal isn't delivered.

        - Dan C.