Re: 2.6.21 frozen for a few minutes, swapping to disk

From: Andrew Morton
Date: Mon Apr 30 2007 - 03:31:28 EST

On Sun, 29 Apr 2007 11:28:05 +0100 Miguel Figueiredo <elmig@xxxxxxxxxxxx> wrote:

> Hi all,
> today, with 2.6.21, my laptop had a really odd behaviour. It started
> writing to disk for a few minutes with no interactivity at all (no
> redraw on screen, only hdd led on). It's the first time i noticed
> OOM-killer started do kill programs.
> It was totally unresponsive for minutes, after back to life it had a
> load of ~19.0, and 300+ MB on swap (first time i saw this).
> It's an HP pavillon core duo 2.0 GHz, 1 GB RAM
> kern.log details:
> .config:
> dmesg:
> As this is the first time it happened and it felt odd i am reporting.
> If aditional info is needed please CC me as i am not on the list.

hm, a genuine oom on an all-ext3 data=ordered i386 system, just like a
million other people. How very weird.

I assume all those pages on the LRU are pagecache pages which for some
reason we're unable to reclaim.

If some privileged application went berzerk mlock()ing everything then that
might explain it. It sounds improbable, but then, something improbable has

We cleverly managed to not display the pagecache totals in the oom-killer
output. Could you please take a copy of /proc/meminfo after an
oom-killing, send that? And /proc/vmstat, I guess.

If you're keen, we could eliminate the mlock possibility by adding this:

--- a/mm/mlock.c~a
+++ a/mm/mlock.c
@@ -127,6 +127,8 @@ asmlinkage long sys_mlock(unsigned long
unsigned long lock_limit;
int error = -ENOMEM;

+ return 0;
if (!can_do_mlock())
return -EPERM;

@@ -151,6 +153,8 @@ asmlinkage long sys_munlock(unsigned lon
int ret;

+ return 0;
len = PAGE_ALIGN(len + (start & ~PAGE_MASK));
start &= PAGE_MASK;

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at