aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/storage
diff options
context:
space:
mode:
authorMatthew Wilcox <matthew@wil.cx>2010-12-15 15:44:06 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2010-12-15 18:26:44 -0500
commit0b83ae960cd7d4a5ee02786ecf41ab45688999bf (patch)
tree656114c334d106dc831fae37b7348f7ea00d53f8 /drivers/usb/storage
parent89dc29051b626756e69db12f3ffb22e49a817bfe (diff)
USB: uas: Use GFP_NOIO instead of GFP_KERNEL in I/O submission path
If swap is on a UAS device, we could recurse into the driver by using GFP_KERNEL. Using GFP_NOIO ensures we won't. Reported-by: James Bottomley <James.Bottomley@suse.de> Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/storage')
-rw-r--r--drivers/usb/storage/uas.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/storage/uas.c b/drivers/usb/storage/uas.c
index 52e5ec1b2e8a..8d58c6316111 100644
--- a/drivers/usb/storage/uas.c
+++ b/drivers/usb/storage/uas.c
@@ -141,7 +141,7 @@ static void uas_do_work(struct work_struct *work)
141 struct scsi_pointer *scp = (void *)cmdinfo; 141 struct scsi_pointer *scp = (void *)cmdinfo;
142 struct scsi_cmnd *cmnd = container_of(scp, 142 struct scsi_cmnd *cmnd = container_of(scp,
143 struct scsi_cmnd, SCp); 143 struct scsi_cmnd, SCp);
144 uas_submit_urbs(cmnd, cmnd->device->hostdata, GFP_KERNEL); 144 uas_submit_urbs(cmnd, cmnd->device->hostdata, GFP_NOIO);
145 } 145 }
146} 146}
147 147