]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
scsi: storvsc: Fix error return in storvsc_probe()
authorJing Xiangfeng <jingxiangfeng@huawei.com>
Fri, 27 Nov 2020 03:02:06 +0000 (11:02 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Dec 2020 09:58:28 +0000 (10:58 +0100)
[ Upstream commit 6112ff4e8f393e7e297dff04eff0987f94d37fa1 ]

Return -ENOMEM from the error handling case instead of 0.

Link: https://lore.kernel.org/r/20201127030206.104616-1-jingxiangfeng@huawei.com
Fixes: 436ad9413353 ("scsi: storvsc: Allow only one remove lun work item to be issued per lun")
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/scsi/storvsc_drv.c

index 8f5f5dc863a4a082c2ab98cd59aed9c20ab98798..719f9ae6c97ae674f16c4895b4f198f40b61c8b5 100644 (file)
@@ -1952,8 +1952,10 @@ static int storvsc_probe(struct hv_device *device,
                        alloc_ordered_workqueue("storvsc_error_wq_%d",
                                                WQ_MEM_RECLAIM,
                                                host->host_no);
-       if (!host_dev->handle_error_wq)
+       if (!host_dev->handle_error_wq) {
+               ret = -ENOMEM;
                goto err_out2;
+       }
        INIT_WORK(&host_dev->host_scan_work, storvsc_host_scan);
        /* Register the HBA and start the scsi bus scan */
        ret = scsi_add_host(host, &device->device);