v2->v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the second patch changelog.
blk_mq_queue_enter may return 0 or errno, which blk_mq_alloc_request can propogate out via ERR_PTR. __blk_mq_alloc_request doesn't include any blk_queue_dying checks, so I'm assuming that its failures can be attributed to -EWOULDBLOCK under !GFP_WAIT conditions. v1->v2: incorporate Jeff's feedback in bsg_map_hdr() and Reviewed-by tags. Joe Lawrence (2): block,scsi: verify return pointer from blk_get_request block,scsi: fixup blk_get_request dead queue scenarios block/blk-core.c | 34 +++++++++++++-------------- block/blk-mq.c | 8 +++++-- block/bsg.c | 8 +++---- block/scsi_ioctl.c | 13 +++++++--- drivers/block/paride/pd.c | 2 ++ drivers/block/pktcdvd.c | 2 ++ drivers/block/sx8.c | 2 +- drivers/cdrom/cdrom.c | 4 ++-- drivers/ide/ide-park.c | 2 +- drivers/scsi/device_handler/scsi_dh_alua.c | 2 +- drivers/scsi/device_handler/scsi_dh_emc.c | 2 +- drivers/scsi/device_handler/scsi_dh_hp_sw.c | 4 ++-- drivers/scsi/device_handler/scsi_dh_rdac.c | 2 +- drivers/scsi/osd/osd_initiator.c | 4 ++-- drivers/scsi/osst.c | 2 +- drivers/scsi/scsi_error.c | 2 ++ drivers/scsi/scsi_lib.c | 2 +- drivers/scsi/scsi_tgt_lib.c | 2 +- drivers/scsi/sg.c | 4 ++-- drivers/scsi/st.c | 2 +- drivers/target/target_core_pscsi.c | 2 +- 21 files changed, 61 insertions(+), 44 deletions(-) -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/