mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 17:13:52 +02:00
Merge branch 'nfc-drop-redundant-usb-device-references'
Johan Hovold says: ==================== nfc: drop redundant USB device references Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop redundant device references to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release them. ==================== Link: https://patch.msgid.link/20260305111019.18030-1-johan@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
commit
00e3228702
|
|
@ -500,7 +500,7 @@ static int pn533_usb_probe(struct usb_interface *interface,
|
|||
if (!in_buf)
|
||||
return -ENOMEM;
|
||||
|
||||
phy->udev = usb_get_dev(interface_to_usbdev(interface));
|
||||
phy->udev = interface_to_usbdev(interface);
|
||||
phy->interface = interface;
|
||||
|
||||
iface_desc = interface->cur_altsetting;
|
||||
|
|
@ -600,7 +600,6 @@ static int pn533_usb_probe(struct usb_interface *interface,
|
|||
usb_free_urb(phy->in_urb);
|
||||
usb_free_urb(phy->out_urb);
|
||||
usb_free_urb(phy->ack_urb);
|
||||
usb_put_dev(phy->udev);
|
||||
kfree(in_buf);
|
||||
kfree(phy->ack_buffer);
|
||||
|
||||
|
|
@ -628,7 +627,6 @@ static void pn533_usb_disconnect(struct usb_interface *interface)
|
|||
usb_free_urb(phy->out_urb);
|
||||
usb_free_urb(phy->ack_urb);
|
||||
kfree(phy->ack_buffer);
|
||||
usb_put_dev(phy->udev);
|
||||
|
||||
nfc_info(&interface->dev, "NXP PN533 NFC device disconnected\n");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1504,7 +1504,7 @@ static int port100_probe(struct usb_interface *interface,
|
|||
return -ENOMEM;
|
||||
|
||||
mutex_init(&dev->out_urb_lock);
|
||||
dev->udev = usb_get_dev(interface_to_usbdev(interface));
|
||||
dev->udev = interface_to_usbdev(interface);
|
||||
dev->interface = interface;
|
||||
usb_set_intfdata(interface, dev);
|
||||
|
||||
|
|
@ -1616,7 +1616,6 @@ static int port100_probe(struct usb_interface *interface,
|
|||
usb_free_urb(dev->in_urb);
|
||||
usb_kill_urb(dev->out_urb);
|
||||
usb_free_urb(dev->out_urb);
|
||||
usb_put_dev(dev->udev);
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
|
@ -1636,7 +1635,6 @@ static void port100_disconnect(struct usb_interface *interface)
|
|||
|
||||
usb_free_urb(dev->in_urb);
|
||||
usb_free_urb(dev->out_urb);
|
||||
usb_put_dev(dev->udev);
|
||||
|
||||
kfree(dev->cmd);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user