| From 2a9a7e93b59d50ccf88fb60d9c5026e06880b662 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 29 Aug 2022 19:01:15 +0800 |
| Subject: scsi: 3w-9xxx: Avoid disabling device if failing to enable it |
| |
| From: Letu Ren <fantasquex@gmail.com> |
| |
| [ Upstream commit 7eff437b5ee1309b34667844361c6bbb5c97df05 ] |
| |
| The original code will "goto out_disable_device" and call |
| pci_disable_device() if pci_enable_device() fails. The kernel will generate |
| a warning message like "3w-9xxx 0000:00:05.0: disabling already-disabled |
| device". |
| |
| We shouldn't disable a device that failed to be enabled. A simple return is |
| fine. |
| |
| Link: https://lore.kernel.org/r/20220829110115.38789-1-fantasquex@gmail.com |
| Reported-by: Zheyu Ma <zheyuma97@gmail.com> |
| Signed-off-by: Letu Ren <fantasquex@gmail.com> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/scsi/3w-9xxx.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/scsi/3w-9xxx.c b/drivers/scsi/3w-9xxx.c |
| index dd342207095a..0baeed1793aa 100644 |
| --- a/drivers/scsi/3w-9xxx.c |
| +++ b/drivers/scsi/3w-9xxx.c |
| @@ -2013,7 +2013,7 @@ static int twa_probe(struct pci_dev *pdev, const struct pci_device_id *dev_id) |
| retval = pci_enable_device(pdev); |
| if (retval) { |
| TW_PRINTK(host, TW_DRIVER, 0x34, "Failed to enable pci device"); |
| - goto out_disable_device; |
| + return -ENODEV; |
| } |
| |
| pci_set_master(pdev); |
| -- |
| 2.35.1 |
| |