Thread (28 messages) 28 messages, 7 authors, 2011-03-30

Re: kmemleak for MIPS

From: Catalin Marinas <catalin.marinas@arm.com>
Date: 2011-03-30 09:59:08
Also in: linux-mm, lkml

On Wed, 2011-03-30 at 10:54 +0100, Daniel Baluta wrote:
quoted
quoted
unreferenced object 0x8f90d000 (size 4096):
  comm "swapper", pid 1, jiffies 4294937330 (age 815.000s)
  hex dump (first 32 bytes):
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [<80529644>] alloc_large_system_hash+0x2f8/0x410
    [<805383b4>] udp_table_init+0x4c/0x158
    [<805384dc>] udp_init+0x1c/0x94
    [<8053889c>] inet_init+0x184/0x2a0
    [<80100584>] do_one_initcall+0x174/0x1e0
    [<8051f348>] kernel_init+0xe4/0x174
    [<80103d4c>] kernel_thread_helper+0x10/0x18
If you for the kmemleak scan (via echo) a few times, do you get more
leaks? The udp_table_init() function looks like it could leak some
memory but I haven't seen it before. I'm not sure whether this is a
false positive or a real leak.
Looking again at udp_init_table it seem that a memory leak is possible.
Could you post your .config and the full output of dmesg after booting.

A situation where CONFIG_BASE_SMALL is 0, and
table->mask < UDP_HTABLE_SIZE_MIN - 1 would lead
to a memory leak.
It's worth printing the table->mask on MIPS as well. I think have the
same configuration on ARM and put some printk's but the table->mask is
set to higher value and the second if condition is false. The checks
could be simply reordered but I don't know the reasoning behind the
current code sequence (I cc'ed Eric).

-- 
Catalin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help