diff options
author | Letu Ren <fantasquex@gmail.com> | 2022-08-29 19:01:15 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-10-26 13:22:56 +0200 |
commit | 22f49d9d6e041ea416596cda4e162224cb0b9abf (patch) | |
tree | 5eb5fe9efd86c431ef33dc7dc7e8773eeedd305f | |
parent | 66de922076000118da51dc1e3748ea455dded149 (diff) | |
download | linux-stable-22f49d9d6e041ea416596cda4e162224cb0b9abf.tar.gz linux-stable-22f49d9d6e041ea416596cda4e162224cb0b9abf.tar.bz2 linux-stable-22f49d9d6e041ea416596cda4e162224cb0b9abf.zip |
scsi: 3w-9xxx: Avoid disabling device if failing to enable it
[ 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>
-rw-r--r-- | drivers/scsi/3w-9xxx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/3w-9xxx.c b/drivers/scsi/3w-9xxx.c index 3337b1e80412..f6f92033132a 100644 --- a/drivers/scsi/3w-9xxx.c +++ b/drivers/scsi/3w-9xxx.c @@ -2014,7 +2014,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); |