From: Wu Fengguang <fengguang.wu@intel.com>
To: Clemens Eisserer <linuxhippy@gmail.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [ARM9] OOM with plenty of free swap space?
Date: Fri, 11 Sep 2009 11:21:47 +0800 [thread overview]
Message-ID: <20090911032147.GH6267@localhost> (raw)
In-Reply-To: <194f62550909050551n3ac70080u528ae8a9322d4a5a@mail.gmail.com>
Hi Clemens,
On Sat, Sep 05, 2009 at 08:51:24AM -0400, Clemens Eisserer wrote:
> Hi,
>
> I am using a Nokia-770 internet tablet (ARM9) running a 2.6.16.27
2.6.16 is a pretty old kernel.
> (precompiled wlan driver) kernel as a small buissness server
> (postgres, tor, samba, lighttp).
>
> It works quite well, however I recently discovered that postgres was
> killed by the oom killer (log below),
> although plenty of free swap was available. Its a really small
> database so it should easily fit in the 64mb main memory.
>
> Any idea what could the reason for this OOM?
>
> Thank you in advance, Clemens
>
>
> [17676.783874] oom-killer: gfp_mask=0x201d2, order=0
It's combination of HIGHMEM,WAIT,IO,FS,COLD, which is not easy to
fail.
> [17676.797241] [<c0026890>] (dump_stack+0x0/0x14) from [<c0071850>]
> (out_of_memory+0x40/0x1d8)
> [17676.797393] [<c0071810>] (out_of_memory+0x0/0x1d8) from
> [<c0072d50>] (__alloc_pages+0x240/0x2c4)
> [17676.797515] [<c0072b10>] (__alloc_pages+0x0/0x2c4) from
> [<c0075648>] (__do_page_cache_readahead+0x150/0x324)
> [17676.797637] [<c00754f8>] (__do_page_cache_readahead+0x0/0x324) from
> [<c0075914>] (do_page_cache_readahead+0x64/0x70)
> [17676.797760] [<c00758b0>] (do_page_cache_readahead+0x0/0x70) from
> [<c006eba0>] (filemap_nopage+0x190/0x3ec)
> [17676.797943] r7 = 00000000 r6 = 00219560 r5 = 00000000 r4 =
> C25E0000
> [17676.798004] [<c006ea10>] (filemap_nopage+0x0/0x3ec) from
This is a mmap read-around, its ra size would be <= 128KB.
> [<c007cc04>] (__handle_mm_fault+0x2fc/0x96c)
> [17676.798126] [<c007c908>] (__handle_mm_fault+0x0/0x96c) from
> [<c0029364>] (do_page_fault+0xe4/0x214)
> [17676.798248] [<c0029280>] (do_page_fault+0x0/0x214) from
> [<c00295e0>] (do_DataAbort+0x3c/0xa4)
> [17676.798339] [<c00295a4>] (do_DataAbort+0x0/0xa4) from [<c0020da8>]
> (ret_from_exception+0x0/0x10)
> [17676.798461] r8 = 00000000 r7 = 40639540 r6 = 40639560 r5 =
> 00000001
> [17676.798553] r4 = FFFFFFFF
> [17676.798583] Mem-info:
> [17676.798614] DMA per-cpu:
> [17676.798675] cpu 0 hot: high 18, batch 3 used:2
> [17676.798706] cpu 0 cold: high 6, batch 1 used:0
> [17676.798767] DMA32 per-cpu: empty
> [17676.798797] Normal per-cpu: empty
> [17676.798828] HighMem per-cpu: empty
> [17676.798950] Free pages: 1172kB (0kB HighMem)
> [17676.799011] Active:5576 inactive:6815 dirty:0 writeback:231
> unstable:0 free:293 slab:1257 mapped:12129 pagetables:374
Most LRU pages are mapped:
active+inactive-writeback=6815+5576-231=12160 ~= 12129=mapped
> [17676.799133] DMA free:1172kB min:1024kB low:1280kB high:1536kB
> active:22304kB inactive:27260kB present:65536kB pages_scanned:91
> all_unreclaimable? no
> [17676.799224] lowmem_reserve[]: 0 0 0 0
> [17676.799285] DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB
> inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
> [17676.799377] lowmem_reserve[]: 0 0 0 0
> [17676.799468] Normal free:0kB min:0kB low:0kB high:0kB active:0kB
> inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
> [17676.799530] lowmem_reserve[]: 0 0 0 0
> [17676.799621] HighMem free:0kB min:128kB low:128kB high:128kB
> active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable?
> no
> [17676.799682] lowmem_reserve[]: 0 0 0 0
> [17676.799743] DMA: 33*4kB 4*8kB 1*16kB 1*32kB 1*64kB 1*128kB 1*256kB
> 1*512kB 0*1024kB 0*2048kB 0*4096kB = 1172kB
> [17676.799896] DMA32: empty
> [17676.799926] Normal: empty
> [17676.799957] HighMem: empty
> [17676.800018] Swap cache: add 12847, delete 11756, find 42323/43010, race 0+0
> [17676.800079] Free swap = 167716kB
> [17676.800109] Total swap = 198272kB
> [17676.800170] Free swap: 167716kB
> [17676.804534] 16384 pages of RAM
> [17676.804565] 638 free pages
> [17676.804595] 1096 reserved pages
> [17676.804626] 1257 slab pages
> [17676.804656] 19580 pages shared
> [17676.804718] 1091 pages swap cached
There are ~30MB pages swapped, and another ~4MB in page cache.
So the system is moderately stressed. It may be a vmscan bug,
I'd recommend to try a recent kernel and see if things improved.
Thanks,
Fengguang
> [17676.805267] Out of Memory: Kill process 1535 (postgres) score 11478
> and children.
> [17676.805358] Out of memory: Killed process 1537 (postgres).
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2009-09-11 3:21 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-05 12:51 [ARM9] OOM with plenty of free swap space? Clemens Eisserer
2009-09-09 11:05 ` Clemens Eisserer
2009-09-10 15:11 ` Enrik Berkhan
2009-09-11 0:17 ` KOSAKI Motohiro
2009-09-11 7:08 ` [RFC] md: don't scale up readahead size if RAID chunk size >= 4MB Wu Fengguang
2009-09-11 3:21 ` Wu Fengguang [this message]
2009-09-14 11:26 ` [ARM9] OOM with plenty of free swap space? Dave Young
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=20090911032147.GH6267@localhost \
--to=fengguang.wu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxhippy@gmail.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.