block: introduce blk_rq_is_passthrough
This can be used to check for fs vs non-fs requests and basically removes all knowledge of BLOCK_PC specific from the block layer, as well as preparing for removing the cmd_type field in struct request. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:

committed by
Jens Axboe

parent
09fc54ccc4
commit
57292b58dd
@@ -1106,7 +1106,7 @@ static int scsi_request_sense(struct scsi_cmnd *scmd)
|
||||
|
||||
static int scsi_eh_action(struct scsi_cmnd *scmd, int rtn)
|
||||
{
|
||||
if (scmd->request->cmd_type != REQ_TYPE_BLOCK_PC) {
|
||||
if (!blk_rq_is_passthrough(scmd->request)) {
|
||||
struct scsi_driver *sdrv = scsi_cmd_to_driver(scmd);
|
||||
if (sdrv->eh_action)
|
||||
rtn = sdrv->eh_action(scmd, rtn);
|
||||
@@ -1746,7 +1746,7 @@ check_type:
|
||||
* the check condition was retryable.
|
||||
*/
|
||||
if (scmd->request->cmd_flags & REQ_FAILFAST_DEV ||
|
||||
scmd->request->cmd_type == REQ_TYPE_BLOCK_PC)
|
||||
blk_rq_is_passthrough(scmd->request))
|
||||
return 1;
|
||||
else
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user