linux/drivers/net/usb
Hemant Kumar 39707c2a3b net: usb: Fix memory leak on Tx data path
Driver anchors the tx urbs and defers the urb submission if
a transmit request comes when the interface is suspended.
Anchoring urb increments the urb reference count. These
deferred urbs are later accessed by calling usb_get_from_anchor()
for submission during interface resume. usb_get_from_anchor()
unanchors the urb but urb reference count remains same.
This causes the urb reference count to remain non-zero
after usb_free_urb() gets called and urb never gets freed.
Hence call usb_put_urb() after anchoring the urb to properly
balance the reference count for these deferred urbs. Also,
unanchor these deferred urbs during disconnect, to free them
up.

Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Acked-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-10-26 03:43:15 -04:00
..
asix_common.c asix: Add support for programming the EEPROM 2012-07-19 10:48:07 -07:00
asix_devices.c asix: Adds support for Lenovo 10/100 USB dongle. 2012-10-01 17:33:00 -04:00
asix.h asix: Add support for programming the EEPROM 2012-07-19 10:48:07 -07:00
ax88172a.c asix: Add support for programming the EEPROM 2012-07-19 10:48:07 -07:00
catc.c USB: remove dbg() usage in USB networking drivers 2012-09-20 17:53:14 -04:00
cdc_eem.c usbnet: Support devices reporting idleness 2012-10-11 15:19:21 -04:00
cdc_ether.c USB 3.5-rc1 pull request 2012-05-22 15:50:46 -07:00
cdc_ncm.c cdc-ncm: tag Ericsson WWAN devices (eg F5521gw) with FLAG_WWAN 2012-08-03 20:32:30 -07:00
cdc_subset.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
cdc-phonet.c cdc-phonet: Don't leak in usbpn_open 2012-08-08 16:04:47 -07:00
cx82310_eth.c net: cx82310_eth: use common match macro 2012-09-03 13:51:02 -04:00
dm9601.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
gl620a.c USB: remove dbg() usage in USB networking drivers 2012-09-20 17:53:14 -04:00
hso.c TTY: use tty_port_register_device 2012-08-13 16:50:19 -07:00
int51x1.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
ipheth.c usb/ipheth: Add iPhone 5 support 2012-10-18 15:34:30 -04:00
kalmia.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
kaweth.c kaweth: print correct debug ptr 2012-10-11 15:12:33 -04:00
Kconfig asix: AX88172A driver depends on phylib 2012-07-19 10:48:07 -07:00
lg-vl600.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
Makefile asix: Add a new driver for the AX88172A 2012-07-16 23:26:23 -07:00
mcs7830.c mcs7830: Fix link state detection 2012-10-12 13:56:52 -04:00
net1080.c net1080: Neaten netdev_dbg use 2012-09-20 22:05:22 -04:00
pegasus.c usbnet:pegasus: remove usb_get/put_dev in .probe and .disconnect 2012-06-12 18:50:23 -07:00
pegasus.h usb: pegasus: fixed coding style issues 2010-06-30 10:26:16 -07:00
plusb.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
qmi_wwan.c net: qmi_wwan: adding more ZTE devices 2012-10-18 15:34:30 -04:00
rndis_host.c USB 3.5-rc1 pull request 2012-05-22 15:50:46 -07:00
rtl8150.c USB: remove dbg() usage in USB networking drivers 2012-09-20 17:53:14 -04:00
sierra_net.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-09-15 11:43:53 -04:00
smsc75xx.c smsc75xx: add wol magic packet support 2012-09-28 18:35:47 -04:00
smsc75xx.h smsc75xx: replace 0xffff with PHY_INT_SRC_CLEAR_ALL 2012-05-07 23:43:56 -04:00
smsc95xx.c smsc95xx: add wol magic packet support 2012-09-28 18:34:58 -04:00
smsc95xx.h smsc95xx: add wol magic packet support 2012-09-28 18:34:58 -04:00
usbnet.c net: usb: Fix memory leak on Tx data path 2012-10-26 03:43:15 -04:00
zaurus.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00