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>
This commit is contained in:
Matthew Wilcox 2010-12-15 15:44:06 -05:00 committed by Greg Kroah-Hartman
parent 89dc29051b
commit 0b83ae960c

View File

@ -141,7 +141,7 @@ static void uas_do_work(struct work_struct *work)
struct scsi_pointer *scp = (void *)cmdinfo;
struct scsi_cmnd *cmnd = container_of(scp,
struct scsi_cmnd, SCp);
uas_submit_urbs(cmnd, cmnd->device->hostdata, GFP_KERNEL);
uas_submit_urbs(cmnd, cmnd->device->hostdata, GFP_NOIO);
}
}