On Thu, Feb 13, 2003 at 05:32:21PM +0100, René Seindal wrote: > With such a system there is really no way of dragging a recalcitrant > process out of kernel mode. If it is stuck in there, it is stuck. > Signals are registered, but not delivered, because the transition to > user-space never happens.
well, what if a workaround were put into the driver for the removable devices that were causing this problem in the first place? that is, if this were from a removable block device, and it were removed[1], and it has a read request queued, have the driver's request handler return an error of some kind[2]. then the process would wake up from the read, and recieve the queued signals. sean [1] and the removal could be discovered by querying the device by an interruptible_sleep_on() for the device read request, or via a userland sysctl. [2] granted, i'm not a kernel expert, but i've done a fair share of hacking on it, so i wonder if this would be possible.
msg30589/pgp00000.pgp
Description: PGP signature