]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
scsi: pm8001: Do not overwrite PCI queue mapping
authorDaniel Wagner <dwagner@suse.de>
Thu, 12 Sep 2024 08:58:28 +0000 (10:58 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Oct 2024 10:00:03 +0000 (12:00 +0200)
[ Upstream commit a141c17a543332fc1238eb5cba562bfc66879126 ]

blk_mq_pci_map_queues() maps all queues but right after this, we overwrite
these mappings by calling blk_mq_map_queues(). Just use one helper but not
both.

Fixes: 42f22fe36d51 ("scsi: pm8001: Expose hardware queues for pm80xx")
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Daniel Wagner <dwagner@suse.de>
Link: https://lore.kernel.org/r/20240912-do-not-overwrite-pci-mapping-v1-1-85724b6cec49@suse.de
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/scsi/pm8001/pm8001_init.c

index 1e63cb6cd8e327b265ae389a2df79aa4c7751e43..33e1eba62ca12c2555419197ecdbebad817e4a6d 100644 (file)
@@ -100,10 +100,12 @@ static void pm8001_map_queues(struct Scsi_Host *shost)
        struct pm8001_hba_info *pm8001_ha = sha->lldd_ha;
        struct blk_mq_queue_map *qmap = &shost->tag_set.map[HCTX_TYPE_DEFAULT];
 
-       if (pm8001_ha->number_of_intr > 1)
+       if (pm8001_ha->number_of_intr > 1) {
                blk_mq_pci_map_queues(qmap, pm8001_ha->pdev, 1);
+               return;
+       }
 
-       return blk_mq_map_queues(qmap);
+       blk_mq_map_queues(qmap);
 }
 
 /*