lkml.org 
[lkml]   [2011]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: running of out memory => kernel crash
On Wed, 10 Aug 2011, Mahmood Naderan wrote:

> >If you're using cpusets or mempolicies, you must ensure that all tasks
> >attached to either of them are not set to OOM_DISABLE.  It seems unlikely
> >that you're using those, so it seems like a system-wide oom condition.
>  
> I didn't do that manually. What is the default behaviour? Does oom
> working or not?
>

The default behavior is to kill all eligible and unkillable threads until
there are none left to sacrifice (i.e. all kthreads and OOM_DISABLE).

> For a user process:
>
> root@srv:~# cat /proc/18564/oom_score
> 9198
> root@srv:~# cat /proc/18564/oom_adj
> 0
>

Ok, so you don't have a /proc/pid/oom_score_adj, so you're using a kernel
that predates 2.6.36.

> And for "init" process:
>
> root@srv:~# cat /proc/1/oom_score
> 17509
> root@srv:~# cat /proc/1/oom_adj
> 0
>
> Based on my understandings, in an out of memory condition (oom),
> the init process is more eligible to be killed!!!!!!! Is that right?
>

init is exempt from oom killing, it's oom_score is meaningless.

> Again I didn't get my answer yet:
> What is the default behavior of linux in an oom condition? If the default is,
> crash (kernel panic), then how can I change that in such a way to kill
> the hungry process?
>

You either have /proc/sys/vm/panic_on_oom set or it's killing a thread
that is taking down the entire machine. If it's the latter, then please
capture the kernel log and post it as Randy suggested.
\
 
 \ /
  Last update: 2011-08-11 06:13    [W:0.078 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site