mirror of https://github.com/torvalds/linux.git
usb: cdns3: Fix double resource release in cdns3_pci_probe
The driver uses pcim_enable_device() to enable the PCI device, the device will be automatically disabled on driver detach through the managed device framework. The manual pci_disable_device() calls in the error paths are therefore redundant and should be removed. Found via static anlaysis and this is similar to commit99ca0b57e4("thermal: intel: int340x: processor: Fix warning during module unload"). Fixes:7733f6c32e("usb: cdns3: Add Cadence USB3 DRD Driver") Cc: stable <stable@kernel.org> Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Acked-by: Peter Chen <peter.chen@kernel.org> Link: https://patch.msgid.link/20251026090859.33107-1-linmq006@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
baeb66fbd4
commit
1ec39d2cd8
|
|
@ -98,10 +98,8 @@ static int cdns3_pci_probe(struct pci_dev *pdev,
|
|||
wrap = pci_get_drvdata(func);
|
||||
} else {
|
||||
wrap = kzalloc(sizeof(*wrap), GFP_KERNEL);
|
||||
if (!wrap) {
|
||||
pci_disable_device(pdev);
|
||||
if (!wrap)
|
||||
return -ENOMEM;
|
||||
}
|
||||
}
|
||||
|
||||
res = wrap->dev_res;
|
||||
|
|
@ -160,7 +158,6 @@ static int cdns3_pci_probe(struct pci_dev *pdev,
|
|||
/* register platform device */
|
||||
wrap->plat_dev = platform_device_register_full(&plat_info);
|
||||
if (IS_ERR(wrap->plat_dev)) {
|
||||
pci_disable_device(pdev);
|
||||
err = PTR_ERR(wrap->plat_dev);
|
||||
kfree(wrap);
|
||||
return err;
|
||||
|
|
|
|||
Loading…
Reference in New Issue