mirror of
https://github.com/torvalds/linux.git
synced 2024-12-18 00:53:40 +00:00
1646566b5e
'ftdi' is alloced when probe device, but not free on device disconnect,
this cause a memory leak as follows:
unreferenced object 0xffff88800d584000 (size 8400):
comm "kworker/0:2", pid 3809, jiffies 4295453055 (age 13.784s)
hex dump (first 32 bytes):
00 40 58 0d 80 88 ff ff 00 40 58 0d 80 88 ff ff .@X......@X.....
00 00 00 00 00 00 00 00 00 00 00 00 ad 4e ad de .............N..
backtrace:
[<000000000d47f947>] kmalloc_order_trace+0x19/0x110 mm/slab_common.c:960
[<000000008548ac68>] ftdi_elan_probe+0x8c/0x880 drivers/usb/misc/ftdi-elan.c:2647
[<000000007f73e422>] usb_probe_interface+0x31b/0x800 drivers/usb/core/driver.c:396
[<00000000fe8d07fc>] really_probe+0x299/0xc30 drivers/base/dd.c:517
[<0000000005da7d32>] __driver_probe_device+0x357/0x500 drivers/base/dd.c:751
[<000000003c2c9579>] driver_probe_device+0x4e/0x140 drivers/base/dd.c:781
Fix it by freeing 'ftdi' after nobody use it.
Fixes:
|
||
---|---|---|
.. | ||
sisusbvga | ||
adutux.c | ||
apple-mfi-fastcharge.c | ||
appledisplay.c | ||
brcmstb-usb-pinmap.c | ||
chaoskey.c | ||
cypress_cy7c63.c | ||
cytherm.c | ||
ehset.c | ||
emi26.c | ||
emi62.c | ||
ezusb.c | ||
ftdi-elan.c | ||
idmouse.c | ||
iowarrior.c | ||
isight_firmware.c | ||
Kconfig | ||
ldusb.c | ||
legousbtower.c | ||
lvstest.c | ||
Makefile | ||
trancevibrator.c | ||
usb251xb.c | ||
usb3503.c | ||
usb4604.c | ||
usb_u132.h | ||
usblcd.c | ||
usbsevseg.c | ||
usbtest.c | ||
uss720.c | ||
yurex.c |