All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Heiko Carstens <heiko.carstens@de.ibm.com>,
	linux-fsdevel@vger.kernel.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
	linux-mm@kvack.org, Mel Gorman <mel@csn.ul.ie>,
	Nick Piggin <npiggin@suse.de>,
	Martin Schwidefsky <schwidefsky@de.ibm.com>,
	Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Subject: Re: oom-killer killing even if memory is available?
Date: Tue, 17 Mar 2009 21:49:35 +1100	[thread overview]
Message-ID: <200903172149.36136.nickpiggin@yahoo.com.au> (raw)
In-Reply-To: <20090317112842.3b8e7724@osiris.boeblingen.de.ibm.com>

On Tuesday 17 March 2009 21:28:42 Heiko Carstens wrote:
> On Tue, 17 Mar 2009 11:17:38 +0100
>
> Heiko Carstens <heiko.carstens@de.ibm.com> wrote:
> > On Tue, 17 Mar 2009 02:46:05 -0700
> >
> > Andrew Morton <akpm@linux-foundation.org> wrote:
> > > > Mar 16 21:40:40 t6360003 kernel: Active_anon:372 active_file:45
> > > > inactive_anon:154 Mar 16 21:40:40 t6360003 kernel:  inactive_file:152
> > > > unevictable:987 dirty:0 writeback:188 unstable:0 Mar 16 21:40:40
> > > > t6360003 kernel:  free:146348 slab:875833 mapped:805 pagetables:378
> > > > bounce:0 Mar 16 21:40:40 t6360003 kernel: DMA free:467728kB
> > > > min:4064kB low:5080kB high:6096kB active_anon:0kB inactive_anon:0kB
> > > > active_file:0kB inactive_file:116kB unevictable:0kB present:2068480kB
> > > > pages_scanned:0 all_unreclaimable? no Mar 16 21:40:40 t6360003
> > > > kernel: lowmem_reserve[]: 0 2020 2020 Mar 16 21:40:40 t6360003
> > > > kernel: Normal free:117664kB min:4064kB low:5080kB high:6096kB
> > > > active_anon:1488kB inactive_anon:616kB active_file:188kB
> > > > inactive_file:492kB unevictable:3948kB present:2068480kB
> > > > pages_scanned:128 all_unreclaimable? no Mar 16 21:40:40 t6360003
> > > > kernel: lowmem_reserve[]: 0 0 0
> > >
> > > The scanner has wrung pretty much all it can out of the reclaimable
> > > pages - the LRUs are nearly empty.  There's a few hundred MB free and
> > > apparently we don't have four physically contiguous free pages
> > > anywhere.  It's believeable.
> > >
> > > The question is: where the heck did all your memory go?  You have 2GB
> > > of ZONE_NORMAL memory in that machine, but only a tenth of it is
> > > visible to the page reclaim code.
> > >
> > > Something must have allocated (and possibly leaked) it.
> >
> > Looks like most of the memory went for dentries and inodes.
> > slabtop output:
> >
> >  Active / Total Objects (% used)    : 8172165 / 8326954 (98.1%)
> >  Active / Total Slabs (% used)      : 903692 / 903698 (100.0%)
> >  Active / Total Caches (% used)     : 91 / 144 (63.2%)
> >  Active / Total Size (% used)       : 3251262.44K / 3281384.22K (99.1%)
> >  Minimum / Average / Maximum Object : 0.02K / 0.39K / 1024.00K
> >
> >   OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME
> > 3960036 3960017  99%    0.59K 660006        6   2640024K inode_cache
> > 4137155 3997581  96%    0.20K 217745       19    870980K dentry
> >  69776  69744  99%    0.80K  17444        4     69776K ext3_inode_cache
> >  96792  92892  95%    0.10K   2616       37     10464K buffer_head
> >  10024   9895  98%    0.54K   1432        7      5728K radix_tree_node
> >   1093   1087  99%    4.00K   1093        1      4372K size-4096
> >  14805  14711  99%    0.25K    987       15      3948K size-256
> >   2400   2381  99%    0.80K    480        5      1920K shmem_inode_cache
>
> FWIW, after "echo 3 > /proc/sys/vm/drop_caches" it looks like this:
>
>  Active / Total Objects (% used)    : 7965003 / 8153578 (97.7%)
>  Active / Total Slabs (% used)      : 882511 / 882511 (100.0%)
>  Active / Total Caches (% used)     : 90 / 144 (62.5%)
>  Active / Total Size (% used)       : 3173487.59K / 3211091.64K (98.8%)
>  Minimum / Average / Maximum Object : 0.02K / 0.39K / 1024.00K
>
>   OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME
> 3960036 3960007  99%    0.59K 660006        6   2640024K inode_cache
> 4137155 3962636  95%    0.20K 217745       19    870980K dentry
>   1097   1097 100%    4.00K   1097        1      4388K size-4096
>  14805  14667  99%    0.25K    987       15      3948K size-256
>   2400   2381  99%    0.80K    480        5      1920K shmem_inode_cache
>   1404   1404 100%    1.00K    351        4      1404K size-1024
>    152    152 100%    5.59K    152        1      1216K task_struct
>   1302    347  26%    0.54K    186        7       744K radix_tree_node
>    370    359  97%    2.00K    185        2       740K size-2048
>   9381   4316  46%    0.06K    159       59       636K size-64
>      8      8 100%   64.00K      8        1       512K size-65536
>
> So, are we leaking dentries and inodes?

Yes, probably leaking dentries, which pin inodes. I don't know that slab
leak debugging is going to help you because it won't find what is holding
the refcount.

Cc linux-fsdevel. Which kernel this is? Config as well.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2009-03-17 10:49 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-17  9:00 oom-killer killing even if memory is available? Heiko Carstens
2009-03-17  9:46 ` Andrew Morton
2009-03-17 10:17   ` Heiko Carstens
2009-03-17 10:28     ` Heiko Carstens
2009-03-17 10:49       ` Nick Piggin [this message]
2009-03-17 11:39         ` Heiko Carstens
2009-03-20  5:08         ` Wu Fengguang
2009-03-20 15:27   ` Mel Gorman
2009-03-20 21:02     ` Andrew Morton
2009-03-23 11:55       ` Mel Gorman
2009-03-23 14:58       ` Mel Gorman
2009-03-17  9:51 ` Nick Piggin
2009-03-17 10:11   ` Heiko Carstens

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200903172149.36136.nickpiggin@yahoo.com.au \
    --to=nickpiggin@yahoo.com.au \
    --cc=akpm@linux-foundation.org \
    --cc=heiko.carstens@de.ibm.com \
    --cc=krebbel@linux.vnet.ibm.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mel@csn.ul.ie \
    --cc=npiggin@suse.de \
    --cc=schwidefsky@de.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.