]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
scsi: mpt3sas: Fix error return value in _scsih_expander_add()
authorZhen Lei <thunder.leizhen@huawei.com>
Fri, 14 May 2021 08:13:00 +0000 (16:13 +0800)
committerStefan Bader <stefan.bader@canonical.com>
Fri, 13 Aug 2021 07:31:30 +0000 (09:31 +0200)
BugLink: https://bugs.launchpad.net/bugs/1938340
[ Upstream commit d6c2ce435ffe23ef7f395ae76ec747414589db46 ]

When an expander does not contain any 'phys', an appropriate error code -1
should be returned, as done elsewhere in this function. However, we
currently do not explicitly assign this error code to 'rc'. As a result, 0
was incorrectly returned.

Link: https://lore.kernel.org/r/20210514081300.6650-1-thunder.leizhen@huawei.com
Fixes: f92363d12359 ("[SCSI] mpt3sas: add new driver supporting 12GB SAS")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/scsi/mpt3sas/mpt3sas_scsih.c

index 712a6ee2fafbb84482088ef53cbd340d91a1ab7a..bc48a9d6c23c2cbe83cbb1cd4674db6b04a7c551 100644 (file)
@@ -6875,8 +6875,10 @@ _scsih_expander_add(struct MPT3SAS_ADAPTER *ioc, u16 handle)
                 handle, parent_handle,
                 (u64)sas_expander->sas_address, sas_expander->num_phys);
 
-       if (!sas_expander->num_phys)
+       if (!sas_expander->num_phys) {
+               rc = -1;
                goto out_fail;
+       }
        sas_expander->phy = kcalloc(sas_expander->num_phys,
            sizeof(struct _sas_phy), GFP_KERNEL);
        if (!sas_expander->phy) {