diff options
author | Dan Carpenter | 2019-09-04 13:01:02 +0300 |
---|---|---|
committer | Greg Kroah-Hartman | 2019-10-04 11:02:58 +0200 |
commit | 5f318dad72d227438f4da4c57afb2dfbd9dacddb (patch) | |
tree | 0acb9e7e48b2040dd2910d873bd20eae774d8982 | |
parent | 177238c3d47d54b2ed8f0da7a4290db492f4a057 (diff) |
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>
-rw-r--r-- | drivers/usb/cdns3/cdns3-pci-wrap.c | 3 |
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; } } |