summaryrefslogtreecommitdiff
path: root/drivers/usb/cdns3/cdns3-pci-wrap.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2019-09-04 13:01:02 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-10-04 12:02:58 +0300
commit5f318dad72d227438f4da4c57afb2dfbd9dacddb (patch)
tree0acb9e7e48b2040dd2910d873bd20eae774d8982 /drivers/usb/cdns3/cdns3-pci-wrap.c
parent177238c3d47d54b2ed8f0da7a4290db492f4a057 (diff)
downloadlinux-5f318dad72d227438f4da4c57afb2dfbd9dacddb.tar.xz
usb: cdns3: Fix use after free in probe error handling
We can't use "wrap" after it has been freed. Fixes: 7733f6c32e36 ("usb: cdns3: Add Cadence USB3 DRD Driver") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Link: https://lore.kernel.org/r/20190904100102.GB7007@mwanda Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/cdns3/cdns3-pci-wrap.c')
-rw-r--r--drivers/usb/cdns3/cdns3-pci-wrap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/cdns3/cdns3-pci-wrap.c b/drivers/usb/cdns3/cdns3-pci-wrap.c
index c41ddb61b857..b0a29efe7d31 100644
--- a/drivers/usb/cdns3/cdns3-pci-wrap.c
+++ b/drivers/usb/cdns3/cdns3-pci-wrap.c
@@ -159,8 +159,9 @@ static int cdns3_pci_probe(struct pci_dev *pdev,
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 PTR_ERR(wrap->plat_dev);
+ return err;
}
}