I have a question about how to find a memory leak in the slab.

I am using a Windriver linux distribution and noticed that free memory was going down. After I enabled slub_debug, I noticed that the buf_acquire is allocating the memory and skb_release_data is freeing it (see below). The numbers (buf_acquire, skb_release_data) seem to match but the # of active objects keeps on increasing until there is no memory left. How can I proceed further as to why the slab is not being freed?

Thanks for your help.

from slabtop: 349594 281787 80% 4.07K 49942 7 1598144K kmalloc-4096

sort -n /sys/kernel/slab/kmalloc-4096/alloc_calls 259945 buf_acquire+0x30/0x70 [tipc] age=251/2199820/3285324 pid=3789 cpus=0-7

from /sys/kernel/slab/kmalloc-4096/free_calls 260208 skb_release_data +0x85/0xd0 age=1499/2291151/4037734 pid=4722-31618 cpus=0-7

asked 16 Apr '13, 18:32

a2z's gravatar image

accept rate: 0%

Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported



Asked: 16 Apr '13, 18:32

Seen: 3,959 times

Last updated: 20 May '13, 22:37

powered by OSQA