On 11/01, Tejun Heo wrote: > > Yeah yeah, Trond already pointed it out. I forgot about the > sigpending special case in schedule(), which I think is rather odd, I disagree with "rather odd" ;) We have a lot of examples of current->state = TASK_INTERRUPTIBLE; ... if (signal_pending()) break; schedule(); Without that special case in schedule() the code above becomes racy. Just consider __wait_event_interruptible(). > Any better ideas? Well. As a simple (probably temporary) fix, I'd suggest #define wait_event_freezekillable(wq, condition) { freezer_do_not_count(); __retval = wait_event_killable(condition); freezer_count(); __retval; } Do you think it can work? Oleg. -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html