Wang Hai <wanghai38@xxxxxxxxxx> wrote: > I got memory leak as follows when doing fault injection test: > > unreferenced object 0xffff888031c2f000 (size 512): > comm "kworker/0:2", pid 165, jiffies 4294922253 (age 391.180s) > hex dump (first 32 bytes): > 00 20 f7 08 80 88 ff ff 01 00 00 00 00 00 00 00 . .............. > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > backtrace: > [<00000000537bdb86>] kmem_cache_alloc_trace+0x16d/0x360 > [<0000000047666fab>] if_usb_probe+0x90/0x96e [usb8xxx] > [<00000000de44b4f0>] usb_probe_interface+0x31b/0x800 [usbcore] > [<000000009b1a1951>] really_probe+0x299/0xc30 > [<0000000055b8ffce>] __driver_probe_device+0x357/0x500 > [<00000000bb0c7161>] driver_probe_device+0x4e/0x140 > [<00000000866d1730>] __device_attach_driver+0x257/0x340 > [<0000000084e79b96>] bus_for_each_drv+0x166/0x1e0 > [<000000009bad60ea>] __device_attach+0x272/0x420 > [<00000000236b97c1>] bus_probe_device+0x1eb/0x2a0 > [<000000008d77d7cf>] device_add+0xbf0/0x1cd0 > [<000000004af6a3f0>] usb_set_configuration+0x10fb/0x18d0 [usbcore] > [<000000002ebdfdcd>] usb_generic_driver_probe+0xa2/0xe0 [usbcore] > [<00000000444f344d>] usb_probe_device+0xe4/0x2b0 [usbcore] > [<000000009b1a1951>] really_probe+0x299/0xc30 > [<0000000055b8ffce>] __driver_probe_device+0x357/0x500 > > cardp is missing being freed in the error handling path of the probe > and the path of the disconnect, which will cause kmemleak. > > This patch adds the missing free(). > > Fixes: 876c9d3aeb98 ("[PATCH] Marvell Libertas 8388 802.11b/g USB driver") > Fixes: c305a19a0d0a ("libertas_tf: usb specific functions") > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> > Signed-off-by: Wang Hai <wanghai38@xxxxxxxxxx> mwifiex patches are applied to wireless-drivers, not to the net tree. Please be careful how you mark your patches. -- https://patchwork.kernel.org/project/linux-wireless/patch/20211018063818.1895774-1-wanghai38@xxxxxxxxxx/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches