On Mon, Apr 09, 2018 at 09:03:54AM -0700, Matthew Wilcox wrote: > > @@ -499,7 +499,7 @@ int sg_scsi_ioctl(struct request_queue *q, struct gendisk *disk, fmode_t mode, > > break; > > } > > > > - if (bytes && blk_rq_map_kern(q, rq, buffer, bytes, __GFP_RECLAIM)) { > > + if (bytes && blk_rq_map_kern(q, rq, buffer, bytes, GFP_NOIO)) { > > We don't seem to have grabbed any locks between the line which allocates > memory using GFP_USER (line 446) and here, so I don't see why we should > prohibit I/O? No change of behavior for this patch. If you care deeply about using GFP_KERNEL here send an incremental patch that I can add to the end of the series.