On Thu, 23 Apr 2020 16:00:38 +1000, Michael Ellerman wrote: > create_cpu_loop() calls smu_sat_get_sdb_partition() which does > kmalloc() and returns the allocated buffer. In fact it's called twice, > and neither buffer is freed. > > This results in a memory leak as reported by Erhard: > unreferenced object 0xc00000047081f840 (size 32): > comm "kwindfarm", pid 203, jiffies 4294880630 (age 5552.877s) > hex dump (first 32 bytes): > c8 06 02 7f ff 02 ff 01 fb bf 00 41 00 20 00 00 ...........A. .. > 00 07 89 37 00 a0 00 00 00 00 00 00 00 00 00 00 ...7............ > backtrace: > [<0000000083f0a65c>] .smu_sat_get_sdb_partition+0xc4/0x2d0 > [windfarm_smu_sat] > [<000000003010fcb7>] .pm112_wf_notify+0x104c/0x13bc [windfarm_pm112] > [<00000000b958b2dd>] .notifier_call_chain+0xa8/0x180 > [<0000000070490868>] .blocking_notifier_call_chain+0x64/0x90 > [<00000000131d8149>] .wf_thread_func+0x114/0x1a0 > [<000000000d54838d>] .kthread+0x13c/0x190 > [<00000000669b72bc>] .ret_from_kernel_thread+0x58/0x64 > unreferenced object 0xc0000004737089f0 (size 16): > comm "kwindfarm", pid 203, jiffies 4294880879 (age 5552.050s) > hex dump (first 16 bytes): > c4 04 01 7f 22 11 e0 e6 ff 55 7b 12 ec 11 00 00 ...."....U{..... > backtrace: > [<0000000083f0a65c>] .smu_sat_get_sdb_partition+0xc4/0x2d0 > [windfarm_smu_sat] > [<00000000b94ef7e1>] .pm112_wf_notify+0x1294/0x13bc [windfarm_pm112] > [<00000000b958b2dd>] .notifier_call_chain+0xa8/0x180 > [<0000000070490868>] .blocking_notifier_call_chain+0x64/0x90 > [<00000000131d8149>] .wf_thread_func+0x114/0x1a0 > [<000000000d54838d>] .kthread+0x13c/0x190 > [<00000000669b72bc>] .ret_from_kernel_thread+0x58/0x64 > > [...]
Applied to powerpc/next. [1/1] drivers/macintosh: Fix memleak in windfarm_pm112 driver https://git.kernel.org/powerpc/c/93900337b9ac2f4eca427eff6d187be2dc3b5551 cheers