diff mbox series

scsi: remove reduntant assignment when alloc sdev

Message ID 20210621034555.4039-1-ed.tsai@mediatek.com (mailing list archive)
State Superseded
Headers show
Series scsi: remove reduntant assignment when alloc sdev | expand

Commit Message

Ed Tsai (蔡宗軒) June 21, 2021, 3:45 a.m. UTC
sdev->reqeust_queue and its queuedata have been set up in
scsi_mq_alloc_queue(). No need to do that again.

Signed-off-by: Ed Tsai <ed.tsai@mediatek.com>
---
 drivers/scsi/scsi_scan.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Bart Van Assche June 21, 2021, 5:21 p.m. UTC | #1
On 6/20/21 8:45 PM, Ed Tsai wrote:
> sdev->reqeust_queue and its queuedata have been set up in
> scsi_mq_alloc_queue(). No need to do that again.
> 
> Signed-off-by: Ed Tsai <ed.tsai@mediatek.com>
> ---
>  drivers/scsi/scsi_scan.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
> index 12f54571b83e..82c1792f1de2 100644
> --- a/drivers/scsi/scsi_scan.c
> +++ b/drivers/scsi/scsi_scan.c
> @@ -266,8 +266,7 @@ static struct scsi_device *scsi_alloc_sdev(struct scsi_target *starget,
>  	 */
>  	sdev->borken = 1;
>  
> -	sdev->request_queue = scsi_mq_alloc_queue(sdev);
> -	if (!sdev->request_queue) {
> +	if (!scsi_mq_alloc_queue(sdev)) {
>  		/* release fn is set up in scsi_sysfs_device_initialise, so
>  		 * have to free and put manually here */
>  		put_device(&starget->dev);
> @@ -275,7 +274,6 @@ static struct scsi_device *scsi_alloc_sdev(struct scsi_target *starget,
>  		goto out;
>  	}
>  	WARN_ON_ONCE(!blk_get_queue(sdev->request_queue));
> -	sdev->request_queue->queuedata = sdev;
>  
>  	depth = sdev->host->cmd_per_lun ?: 1;

Since scsi_mq_alloc_queue() only has one caller, please inline
scsi_mq_alloc_queue() instead of making this change. See also
https://lore.kernel.org/linux-scsi/20201123031749.14912-5-bvanassche@acm.org/

Thanks,

Bart.
Ed Tsai (蔡宗軒) June 22, 2021, 1:27 a.m. UTC | #2
On Tue, 2021-06-22 at 01:21 +0800, Bart Van Assche wrote:
> On 6/20/21 8:45 PM, Ed Tsai wrote:
> > sdev->reqeust_queue and its queuedata have been set up in
> > scsi_mq_alloc_queue(). No need to do that again.
> > 
> > Signed-off-by: Ed Tsai <ed.tsai@mediatek.com>
> > ---
> >  drivers/scsi/scsi_scan.c | 4 +---
> >  1 file changed, 1 insertion(+), 3 deletions(-)
> > 
> > diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
> > index 12f54571b83e..82c1792f1de2 100644
> > --- a/drivers/scsi/scsi_scan.c
> > +++ b/drivers/scsi/scsi_scan.c
> > @@ -266,8 +266,7 @@ static struct scsi_device
> > *scsi_alloc_sdev(struct scsi_target *starget,
> >  	 */
> >  	sdev->borken = 1;
> >  
> > -	sdev->request_queue = scsi_mq_alloc_queue(sdev);
> > -	if (!sdev->request_queue) {
> > +	if (!scsi_mq_alloc_queue(sdev)) {
> >  		/* release fn is set up in
> > scsi_sysfs_device_initialise, so
> >  		 * have to free and put manually here */
> >  		put_device(&starget->dev);
> > @@ -275,7 +274,6 @@ static struct scsi_device
> > *scsi_alloc_sdev(struct scsi_target *starget,
> >  		goto out;
> >  	}
> >  	WARN_ON_ONCE(!blk_get_queue(sdev->request_queue));
> > -	sdev->request_queue->queuedata = sdev;
> >  
> >  	depth = sdev->host->cmd_per_lun ?: 1;
> 
> Since scsi_mq_alloc_queue() only has one caller, please inline
> scsi_mq_alloc_queue() instead of making this change. See also
> 
https://lore.kernel.org/linux-scsi/20201123031749.14912-5-bvanassche@acm.org/
> 
> Thanks,
> 
> Bart.

have planned to re-submit it?
Bart Van Assche June 22, 2021, 2:47 a.m. UTC | #3
On 6/21/21 6:27 PM, Ed Tsai wrote:
> have planned to re-submit it?

That patch has just been resubmitted. I have Cc-ed you.

Thanks,

Bart.
diff mbox series

Patch

diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
index 12f54571b83e..82c1792f1de2 100644
--- a/drivers/scsi/scsi_scan.c
+++ b/drivers/scsi/scsi_scan.c
@@ -266,8 +266,7 @@  static struct scsi_device *scsi_alloc_sdev(struct scsi_target *starget,
 	 */
 	sdev->borken = 1;
 
-	sdev->request_queue = scsi_mq_alloc_queue(sdev);
-	if (!sdev->request_queue) {
+	if (!scsi_mq_alloc_queue(sdev)) {
 		/* release fn is set up in scsi_sysfs_device_initialise, so
 		 * have to free and put manually here */
 		put_device(&starget->dev);
@@ -275,7 +274,6 @@  static struct scsi_device *scsi_alloc_sdev(struct scsi_target *starget,
 		goto out;
 	}
 	WARN_ON_ONCE(!blk_get_queue(sdev->request_queue));
-	sdev->request_queue->queuedata = sdev;
 
 	depth = sdev->host->cmd_per_lun ?: 1;