]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
USB: storage: fix a resume path GFP_NOIO must be used
authorOliver Neukum <oliver@neukum.org>
Wed, 26 Aug 2009 17:56:12 +0000 (19:56 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 5 Oct 2009 16:32:01 +0000 (09:32 -0700)
commit e5dc8ae121592239c2a2521d383bcb789849b2a3 upstream.

In the resume path of a block driver GFP_NOIO must be used to
avoid a possible deadlock. The onetouch subdriver of storage violates
the requirement.

Signed-off-by: Oliver Neukum <oliver@neukum.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/storage/onetouch.c

index 380233bd6a393c3522655922297849fa346f3f7a..80e65f29921cbed01c80406dddbe838feac5d11a 100644 (file)
@@ -163,7 +163,7 @@ static void usb_onetouch_pm_hook(struct us_data *us, int action)
                        usb_kill_urb(onetouch->irq);
                        break;
                case US_RESUME:
-                       if (usb_submit_urb(onetouch->irq, GFP_KERNEL) != 0)
+                       if (usb_submit_urb(onetouch->irq, GFP_NOIO) != 0)
                                dev_err(&onetouch->irq->dev->dev,
                                        "usb_submit_urb failed\n");
                        break;