lkml.org 
[lkml]   [2001]   [Apr]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Allocated swap space versus used swap space


On Fri, 20 Apr 2001, Marcelo Tosatti wrote:

>
> Hi,

Argh. Silly.

Well...

Right now we can get a task killed by the OOM killer even if there is a
lot of _unused_ (but allocated) swap space. The reason for that is the
pre allocation of swap.

Practical example (128MB swap, 960MB ram):

# fillmem 960

...

procs memory swap io system cpu
r b w swpd free buff cache si so bi bo in cs us sy
0 0 0 0 873548 1760 9244 0 0 25 11 32 24 0 1 98
0 0 0 0 873540 1760 9244 0 0 0 0 103 8 0 0 100
1 0 0 0 469040 1760 9248 0 0 2 0 221 562 2 17 80
1 0 1 91980 2068 80 98480 0 362 0 456 277 724 2 26 72
0 1 2 128516 1560 80 106564 30 24724 44 24724 443 8090 0 9 91
0 1 0 64840 820804 84 66396 112 22436 148 22438 413 9197 1 13 87
0 0 0 64840 820416 104 66768 0 0 198 0 119 22 0 0 100
0 0 0 64840 820416 104 66768 0 0 0 0 102 9 0 0 100

...

Out of Memory: Killed process 763 (fillmem).

Around 60MB was written to swap, so there was unused swap space available,
which means the task should _not_ get killed.

We cannot simply check for "(swapper_space.nrpages > 0)" or count the
number of dirty swap cache pages to avoid the OOM killer from triggering,
obviously.

We can split the swap map in "used" / "allocated" bits (or something which
gives us that information), but that would be painful to do, I guess.

Comments ?

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:26    [W:0.034 / U:1.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site