All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@lst.de>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: linux-scsi@vger.kernel.org
Subject: [PATCH 03/10] scsi: move command size detection out of the fast path
Date: Mon,  5 Oct 2020 10:41:23 +0200	[thread overview]
Message-ID: <20201005084130.143273-4-hch@lst.de> (raw)
In-Reply-To: <20201005084130.143273-1-hch@lst.de>

We only need to detect the command size for ioctl request from userspace,
which is limited to the passthrough path.  Move the check there instead
of doing it for all queuecommand invocations.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 drivers/scsi/scsi_lib.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 8a7ae46b5943da..3c551f06ebe9be 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1166,6 +1166,8 @@ static blk_status_t scsi_setup_scsi_cmnd(struct scsi_device *sdev,
 	}
 
 	cmd->cmd_len = scsi_req(req)->cmd_len;
+	if (cmd->cmd_len == 0)
+		cmd->cmd_len = scsi_command_size(cmd->cmnd);
 	cmd->cmnd = scsi_req(req)->cmd;
 	cmd->transfersize = blk_rq_bytes(req);
 	cmd->allowed = scsi_req(req)->retries;
@@ -1685,8 +1687,6 @@ static blk_status_t scsi_queue_rq(struct blk_mq_hw_ctx *hctx,
 
 	scsi_set_resid(cmd, 0);
 	memset(cmd->sense_buffer, 0, SCSI_SENSE_BUFFERSIZE);
-	if (cmd->cmd_len == 0)
-		cmd->cmd_len = scsi_command_size(cmd->cmnd);
 	cmd->scsi_done = scsi_mq_done;
 
 	reason = scsi_dispatch_cmd(cmd);
-- 
2.28.0


  parent reply	other threads:[~2020-10-05  8:41 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-05  8:41 misc I/O submission cleanups Christoph Hellwig
2020-10-05  8:41 ` [PATCH 01/10] scsi: don't export scsi_device_from_queue Christoph Hellwig
2020-10-05  9:00   ` Hannes Reinecke
2020-10-13 22:42   ` Martin K. Petersen
2020-10-05  8:41 ` [PATCH 02/10] scsi: remove scsi_init_cmd_errh Christoph Hellwig
2020-10-05  9:01   ` Hannes Reinecke
2020-10-05  8:41 ` Christoph Hellwig [this message]
2020-10-05  9:02   ` [PATCH 03/10] scsi: move command size detection out of the fast path Hannes Reinecke
2020-10-05  8:41 ` [PATCH 04/10] scsi: simplify varlen CDB length checking Christoph Hellwig
2020-10-05  9:03   ` Hannes Reinecke
2020-10-05 16:06   ` Bart Van Assche
2020-10-07  2:36     ` Martin K. Petersen
2020-10-05  8:41 ` [PATCH 05/10] scsi: use rq_dma_dir in scsi_setup_cmnd Christoph Hellwig
2020-10-05  9:04   ` Hannes Reinecke
2020-10-05  8:41 ` [PATCH 06/10] scsi: rename scsi_prep_state_check to scsi_device_state_check Christoph Hellwig
2020-10-05  9:04   ` Hannes Reinecke
2020-10-05  8:41 ` [PATCH 07/10] scsi: rename scsi_mq_prep_fn to scsi_prepare_cmd Christoph Hellwig
2020-10-05  9:05   ` Hannes Reinecke
2020-10-05  8:41 ` [PATCH 08/10] scsi: cleanup allocation and freeing of sgtables Christoph Hellwig
2020-10-06  5:49   ` Hannes Reinecke
2020-10-05  8:41 ` [PATCH 09/10] scsi: remove scsi_setup_cmnd and scsi_setup_fs_cmnd Christoph Hellwig
2020-10-05  8:41 ` [PATCH 10/10] scsi: only start the request just before dispatching Christoph Hellwig
2020-10-05 16:11   ` Bart Van Assche
2020-10-07  2:37 ` misc I/O submission cleanups Martin K. Petersen
2020-10-08 16:39 ` Qian Cai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201005084130.143273-4-hch@lst.de \
    --to=hch@lst.de \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.