diff options
author | Christoph Hellwig <hch@lst.de> | 2014-10-19 11:13:58 -0400 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2014-10-28 04:53:43 -0400 |
commit | b1dd2aac4cc0892b82ec60232ed37e3b0af776cc (patch) | |
tree | 393321bf7de6c136282ae8550cb8173f86b6b5a9 /drivers/scsi/scsi_lib.c | |
parent | e999dbc254044e8d2a5818d92d205f65bae28f37 (diff) |
scsi: set REQ_QUEUE for the blk-mq case
To generate the right SPI tag messages we need to properly set
QUEUE_FLAG_QUEUED in the request_queue and mirror it to the
request.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Acked-by: Jens Axboe <axboe@kernel.dk>
Reported-by: Meelis Roos <mroos@linux.ee>
Tested-by: Meelis Roos <mroos@linux.ee>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/scsi/scsi_lib.c')
-rw-r--r-- | drivers/scsi/scsi_lib.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 9eff8a375132..50a6e1ac8d9c 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c | |||
@@ -1893,6 +1893,11 @@ static int scsi_queue_rq(struct blk_mq_hw_ctx *hctx, struct request *req, | |||
1893 | blk_mq_start_request(req); | 1893 | blk_mq_start_request(req); |
1894 | } | 1894 | } |
1895 | 1895 | ||
1896 | if (blk_queue_tagged(q)) | ||
1897 | req->cmd_flags |= REQ_QUEUED; | ||
1898 | else | ||
1899 | req->cmd_flags &= ~REQ_QUEUED; | ||
1900 | |||
1896 | scsi_init_cmd_errh(cmd); | 1901 | scsi_init_cmd_errh(cmd); |
1897 | cmd->scsi_done = scsi_mq_done; | 1902 | cmd->scsi_done = scsi_mq_done; |
1898 | 1903 | ||