* [PATCH] scsi: Refactor scsi_mq_setup_tags function
@ 2020-05-18 7:47 Ye Bin
2020-05-18 14:37 ` Bart Van Assche
2020-05-20 2:30 ` Martin K. Petersen
0 siblings, 2 replies; 3+ messages in thread
From: Ye Bin @ 2020-05-18 7:47 UTC (permalink / raw)
To: martin.petersen, jejb; +Cc: yebin10, linux-scsi, linux-kernel
"shost->tag_set" is used too many times, introduce temporary parameter
"tag_set" instead of "&shost->tag_set".
Signed-off-by: Ye Bin <yebin10@huawei.com>
---
drivers/scsi/scsi_lib.c | 23 ++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 47835c4b4ee0..be1a4a9a5fca 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1870,6 +1870,7 @@ struct request_queue *scsi_mq_alloc_queue(struct scsi_device *sdev)
int scsi_mq_setup_tags(struct Scsi_Host *shost)
{
unsigned int cmd_size, sgl_size;
+ struct blk_mq_tag_set *tag_set = &shost->tag_set;
sgl_size = max_t(unsigned int, sizeof(struct scatterlist),
scsi_mq_inline_sgl_size(shost));
@@ -1878,21 +1879,21 @@ int scsi_mq_setup_tags(struct Scsi_Host *shost)
cmd_size += sizeof(struct scsi_data_buffer) +
sizeof(struct scatterlist) * SCSI_INLINE_PROT_SG_CNT;
- memset(&shost->tag_set, 0, sizeof(shost->tag_set));
+ memset(tag_set, 0, sizeof(*tag_set));
if (shost->hostt->commit_rqs)
- shost->tag_set.ops = &scsi_mq_ops;
+ tag_set->ops = &scsi_mq_ops;
else
- shost->tag_set.ops = &scsi_mq_ops_no_commit;
- shost->tag_set.nr_hw_queues = shost->nr_hw_queues ? : 1;
- shost->tag_set.queue_depth = shost->can_queue;
- shost->tag_set.cmd_size = cmd_size;
- shost->tag_set.numa_node = NUMA_NO_NODE;
- shost->tag_set.flags = BLK_MQ_F_SHOULD_MERGE;
- shost->tag_set.flags |=
+ tag_set->ops = &scsi_mq_ops_no_commit;
+ tag_set->nr_hw_queues = shost->nr_hw_queues ? : 1;
+ tag_set->queue_depth = shost->can_queue;
+ tag_set->cmd_size = cmd_size;
+ tag_set->numa_node = NUMA_NO_NODE;
+ tag_set->flags = BLK_MQ_F_SHOULD_MERGE;
+ tag_set->flags |=
BLK_ALLOC_POLICY_TO_MQ_FLAG(shost->hostt->tag_alloc_policy);
- shost->tag_set.driver_data = shost;
+ tag_set->driver_data = shost;
- return blk_mq_alloc_tag_set(&shost->tag_set);
+ return blk_mq_alloc_tag_set(tag_set);
}
void scsi_mq_destroy_tags(struct Scsi_Host *shost)
--
2.21.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] scsi: Refactor scsi_mq_setup_tags function
2020-05-18 7:47 [PATCH] scsi: Refactor scsi_mq_setup_tags function Ye Bin
@ 2020-05-18 14:37 ` Bart Van Assche
2020-05-20 2:30 ` Martin K. Petersen
1 sibling, 0 replies; 3+ messages in thread
From: Bart Van Assche @ 2020-05-18 14:37 UTC (permalink / raw)
To: Ye Bin, martin.petersen, jejb; +Cc: linux-scsi, linux-kernel
On 2020-05-18 00:47, Ye Bin wrote:
> "shost->tag_set" is used too many times, introduce temporary parameter
> "tag_set" instead of "&shost->tag_set".
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] scsi: Refactor scsi_mq_setup_tags function
2020-05-18 7:47 [PATCH] scsi: Refactor scsi_mq_setup_tags function Ye Bin
2020-05-18 14:37 ` Bart Van Assche
@ 2020-05-20 2:30 ` Martin K. Petersen
1 sibling, 0 replies; 3+ messages in thread
From: Martin K. Petersen @ 2020-05-20 2:30 UTC (permalink / raw)
To: Ye Bin, jejb; +Cc: Martin K . Petersen, linux-scsi, linux-kernel
On Mon, 18 May 2020 15:47:32 +0800, Ye Bin wrote:
> "shost->tag_set" is used too many times, introduce temporary parameter
> "tag_set" instead of "&shost->tag_set".
Applied to 5.8/scsi-queue, thanks!
[1/1] scsi: core: Refactor scsi_mq_setup_tags function
https://git.kernel.org/mkp/scsi/c/840e1b55bb75
--
Martin K. Petersen Oracle Linux Engineering
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-05-20 2:37 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-18 7:47 [PATCH] scsi: Refactor scsi_mq_setup_tags function Ye Bin
2020-05-18 14:37 ` Bart Van Assche
2020-05-20 2:30 ` Martin K. Petersen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).