NFC: pn533: double free on error in probe()

We can't pass devm_ allocated pointers to kfree() because they will be
freed again after the drive is unloaded.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
Dan Carpenter 2016-05-17 10:32:19 +03:00 committed by Samuel Ortiz
parent f86dec94e3
commit 6d2f70cae4
1 changed files with 3 additions and 6 deletions

View File

@ -464,10 +464,8 @@ static int pn533_usb_probe(struct usb_interface *interface,
return -ENOMEM;
in_buf = kzalloc(in_buf_len, GFP_KERNEL);
if (!in_buf) {
rc = -ENOMEM;
goto out_free_phy;
}
if (!in_buf)
return -ENOMEM;
phy->udev = usb_get_dev(interface_to_usbdev(interface));
phy->interface = interface;
@ -554,8 +552,7 @@ static int pn533_usb_probe(struct usb_interface *interface,
usb_free_urb(phy->out_urb);
usb_put_dev(phy->udev);
kfree(in_buf);
out_free_phy:
kfree(phy);
return rc;
}