Message ID | 1622628176-84924-1-git-send-email-yang.lee@linux.alibaba.com |
---|---|
State | New |
Headers | show |
Series | scsi: 3ware: fix return 0 on the error path of probe | expand |
diff --git a/drivers/scsi/3w-xxxx.c b/drivers/scsi/3w-xxxx.c index a729288..6557663 100644 --- a/drivers/scsi/3w-xxxx.c +++ b/drivers/scsi/3w-xxxx.c @@ -2305,8 +2305,10 @@ static int tw_probe(struct pci_dev *pdev, const struct pci_device_id *dev_id) TW_DISABLE_INTERRUPTS(tw_dev); /* Initialize the card */ - if (tw_reset_sequence(tw_dev)) + if (tw_reset_sequence(tw_dev)) { + retval = -ENOMEM; goto out_release_mem_region; + } /* Set host specific parameters */ host->max_id = TW_MAX_UNITS;
When tw_reset_sequence() failed and returns 1, the tw_probe() returns retval with a value of 0. We set retval to -ENOMEM in this case. Clean up smatch warning: drivers/scsi/3w-xxxx.c:2309 tw_probe() warn: missing error code 'retval'. Reported-by: Abaci Robot <abaci@linux.alibaba.com> Signed-off-by: Yang Li <yang.lee@linux.alibaba.com> --- drivers/scsi/3w-xxxx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)