On Mon, Feb 05, 2007 at 07:30:29PM +0100, Johannes Berg wrote: > - /* there should be no signal, but oh well */ > - if (signal_pending(current)) { > + /* there should be no non-suspend signal, but oh well */ > + if (signal_pending(current) && !try_to_freeze()) { Given that the driver uses the kthread infrastructure and doesn't explicitly re-enable signals there can't be any other signal. So just remove the signal_pending check.