Thread (13 messages) flat view 13 messages, 4 authors, 2016-01-25

Re: struct pid memory leak

From: Dmitry Vyukov <dvyukov@google.com>
Date: 2016-01-23 18:47:10
Also in: lkml

On Sat, Jan 23, 2016 at 7:40 PM, Willy Tarreau [off-list ref] wrote:
On Sat, Jan 23, 2016 at 07:14:33PM +0100, Dmitry Vyukov wrote:
quoted
I've attached my .config.
Also run this program in a parallel loop. I think it's leaking not
every time, probably some race is involved.
Thank you. Just in order to confirm, am I supposed to see the
messages you quoted in dmesg ?

I think the simplest way to confirm that you can reproduce it locally
is to check /proc/slabinfo. When I run this program in a parallel
loop, number of objects in pid cache was constantly growing:

# cat /proc/slabinfo | grep pid
pid                  297    532    576   28    4 : tunables    0    0
  0 : slabdata     19     19      0
...
pid                  412    532    576   28    4 : tunables    0    0
  0 : slabdata     19     19      0
...
pid                 1107   1176    576   28    4 : tunables    0    0
  0 : slabdata     42     42      0
...
pid                 1545   1652    576   28    4 : tunables    0    0
  0 : slabdata     59     59      0


If you want to use kmemleak, then you need to run this program in a
parallel loop for some time, then stop it and then:

$ echo scan > /sys/kernel/debug/kmemleak
$ cat /sys/kernel/debug/kmemleak

If kmemleak has detected any leaks, cat will show them. I noticed that
kmemleak can delay leaks with significant delay, so usually I do scan
at least 5 times.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help