freezer: introduce freezer-friendly waiting macros
Introduce freezer-friendly wrappers around wait_event_interruptible() and wait_event_interruptible_timeout(), originally defined in <linux/wait.h>, to be used in freezable kernel threads. Make some of the freezable kernel threads use them. This is necessary for the freezer to stop sending signals to kernel threads, which is implemented in the next patch. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Pavel Machek <pavel@ucw.cz> Cc: Nigel Cunningham <nigel@nigel.suspend2.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
2e1318956c
commit
e42837bcd3
@ -907,12 +907,9 @@ static int usb_stor_scan_thread(void * __us)
|
||||
if (delay_use > 0) {
|
||||
printk(KERN_DEBUG "usb-storage: waiting for device "
|
||||
"to settle before scanning\n");
|
||||
retry:
|
||||
wait_event_interruptible_timeout(us->delay_wait,
|
||||
wait_event_freezable_timeout(us->delay_wait,
|
||||
test_bit(US_FLIDX_DISCONNECTING, &us->flags),
|
||||
delay_use * HZ);
|
||||
if (try_to_freeze())
|
||||
goto retry;
|
||||
}
|
||||
|
||||
/* If the device is still connected, perform the scanning */
|
||||
|
Reference in New Issue
Block a user