This patchset assumes the presence of "[PATCH v4] Make SCSI Status CONDITION MET equivalent to GOOD". While working on that patch the author had trouble following the logic in the scsi_io_completion() function found in scsi_lib.c . That led to a rework of the scsi_io_completion() which is now much shorter with the bulk of its code, error processing, moved into 2 helper functions. The fastpath (i.e. the path the the vast majority of SCSI commands will take) remains in the shorter scsi_io_completion() and should be easier to follow with the added conditional hints. Finally after warnings from checkpatch.pl and the encouragement of a reviewer, three BUG calls are converted to WARN calls. Suggestions for alternative recoveries are welcome. Douglas Gilbert (5): scsi_io_completion: rename variables and comments scsi_io_completion: add _nz_result helper scsi_io_completion: add _action helper function scsi_io_completion: conditional hints on fastpath scsi_io_completion: convert BUGs to WARNs drivers/scsi/scsi_lib.c | 300 ++++++++++++++++++++++++++++-------------------- 1 file changed, 177 insertions(+), 123 deletions(-) -- 2.14.1