mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-26 05:50:53 +07:00
USB Network driver infrastructure: Fix leak when usb_autopm_get_interface() returns less than zero in kevent().
We'll leak the memory allocated to 'urb' in drivers/net/usb/usbnet.c:kevent() when we 'goto fail_lowmem' and the 'urb' variable goes out of scope while still completely unused. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d3337de52a
commit
ab60707ffe
@ -931,8 +931,10 @@ kevent (struct work_struct *work)
|
||||
if (urb != NULL) {
|
||||
clear_bit (EVENT_RX_MEMORY, &dev->flags);
|
||||
status = usb_autopm_get_interface(dev->intf);
|
||||
if (status < 0)
|
||||
if (status < 0) {
|
||||
usb_free_urb(urb);
|
||||
goto fail_lowmem;
|
||||
}
|
||||
if (rx_submit (dev, urb, GFP_KERNEL) == -ENOLINK)
|
||||
resched = 0;
|
||||
usb_autopm_put_interface(dev->intf);
|
||||
|
Loading…
Reference in New Issue
Block a user