From: Andrew Morton <akpm@linux-foundation.org>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: "linux-mm@kvack.org" <linux-mm@kvack.org>,
rientjes@google.com, minchan.kim@gmail.com,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"balbir@linux.vnet.ibm.com" <balbir@linux.vnet.ibm.com>
Subject: Re: [PATCH v3] oom-kill: add lowmem usage aware oom kill handling
Date: Tue, 26 Jan 2010 15:12:02 -0800 [thread overview]
Message-ID: <20100126151202.75bd9347.akpm@linux-foundation.org> (raw)
In-Reply-To: <20100125151503.49060e74.kamezawa.hiroyu@jp.fujitsu.com>
On Mon, 25 Jan 2010 15:15:03 +0900
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> wrote:
> Did several tests on x86-32 and I felt that sysctl value should be
> printed on oom log... this is v3.
>
> ==
> From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
>
> Default oom-killer uses badness calculation based on process's vm_size
> and some amounts of heuristics. Some users see proc->oom_score and
> proc->oom_adj to control oom-killed tendency under their server.
>
> Now, we know oom-killer don't work ideally in some situaion, in PCs. Some
> enhancements are demanded. But such enhancements for oom-killer makes
> incomaptibility to oom-controls in enterprise world. So, this patch
> adds sysctl for extensions for oom-killer. Main purpose is for
> making a chance for wider test for new scheme.
>
> One cause of OOM-Killer is memory shortage in lower zones.
> (If memory is enough, lowmem_reserve_ratio works well. but..)
> I saw lowmem-oom frequently on x86-32 and sometimes on ia64 in
> my cusotmer support jobs. If we just see process's vm_size at oom,
> we can never kill a process which has lowmem.
> At last, there will be an oom-serial-killer.
>
> Now, we have per-mm lowmem usage counter. We can make use of it
> to select a good victim.
>
> This patch does
> - add sysctl for new bahavior.
> - add CONSTRAINT_LOWMEM to oom's constraint type.
> - pass constraint to __badness()
> - change calculation based on constraint. If CONSTRAINT_LOWMEM,
> use low_rss instead of vmsize.
>
> Changelog 2010/01/25
> - showing extension_mask value in OOM kill main log header.
> Changelog 2010/01/22:
> - added sysctl
> - fixed !CONFIG_MMU
> - fixed fs/proc/base.c breakacge.
It'd be nice to see some testing results for this. Perhaps "here's a
test case and here's the before-and-after behaviour".
I don't like the sysctl knob much. Hardly anyone will know to enable
it so the feature won't get much testing and this binary decision
fractures the testing effort. It would be much better if we can get
everyone running the same code. I mean, if there are certain workloads
on certain machines with which the oom-killer doesn't behave correctly
then fix it!
Why was the '#include <linux/sysctl.h>" removed from sysctl.c?
The patch adds a random newline to sysctl.c.
It was never a good idea to add extern declarations to sysctl.c. It's
better to add them to a subsystem-specific header file (ie:
mm-sysctl.h) and then include that file from the mm files that define
or use sysctl_foo, and include it into sysctl.c. Oh 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>
next prev parent reply other threads:[~2010-01-26 23:12 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-21 5:59 [PATCH] oom-kill: add lowmem usage aware oom kill handling KAMEZAWA Hiroyuki
2010-01-21 15:18 ` Minchan Kim
2010-01-21 23:48 ` KAMEZAWA Hiroyuki
2010-01-22 0:40 ` Minchan Kim
2010-01-22 1:06 ` KAMEZAWA Hiroyuki
2010-01-21 15:29 ` Balbir Singh
2010-01-21 23:54 ` KAMEZAWA Hiroyuki
2010-01-22 6:23 ` [PATCH v2] " KAMEZAWA Hiroyuki
2010-01-22 14:00 ` Minchan Kim
2010-01-22 15:16 ` KAMEZAWA Hiroyuki
2010-01-22 15:41 ` Minchan Kim
2010-01-25 6:15 ` [PATCH v3] " KAMEZAWA Hiroyuki
2010-01-26 23:12 ` Andrew Morton [this message]
2010-01-26 23:53 ` KAMEZAWA Hiroyuki
2010-01-27 0:19 ` Andrew Morton
2010-01-27 0:58 ` KAMEZAWA Hiroyuki
2010-01-27 6:30 ` [PATCH v4 0/2] " KAMEZAWA Hiroyuki
2010-01-27 6:32 ` [PATCH v4 1/2] sysctl clean up vm related variable declarations KAMEZAWA Hiroyuki
2010-01-28 8:54 ` David Rientjes
2010-01-28 10:30 ` KAMEZAWA Hiroyuki
2010-01-27 6:33 ` [PATCH v4 2/2] oom-kill: add lowmem usage aware oom kill handling v4 KAMEZAWA Hiroyuki
2010-01-28 0:12 ` [PATCH v4 0/2] oom-kill: add lowmem usage aware oom kill handling KAMEZAWA Hiroyuki
2010-01-27 23:56 ` [PATCH v3] " David Rientjes
2010-01-28 0:16 ` Alan Cox
2010-01-28 0:26 ` KAMEZAWA Hiroyuki
2010-01-28 0:59 ` David Rientjes
2010-01-29 0:25 ` Vedran Furač
2010-01-29 0:35 ` Alan Cox
2010-01-29 0:57 ` Vedran Furač
2010-01-29 11:03 ` Alan Cox
2010-01-30 12:33 ` Vedran Furač
2010-01-30 12:59 ` Alan Cox
2010-01-30 17:30 ` Vedran Furač
2010-01-30 17:45 ` Alan Cox
2010-01-30 18:17 ` Vedran Furač
2010-01-27 23:46 ` David Rientjes
2010-01-26 23:16 ` Andrew Morton
2010-01-26 23:44 ` KAMEZAWA Hiroyuki
2010-01-27 23:40 ` David Rientjes
-- strict thread matches above, loose matches on Subject: below --
2010-01-29 16:11 KAMEZAWA Hiroyuki
2010-01-29 16:21 ` Alan Cox
2010-01-29 16:25 ` KAMEZAWA Hiroyuki
2010-01-29 16:30 ` Alan Cox
2010-01-29 16:41 ` KAMEZAWA Hiroyuki
2010-01-29 21:07 ` David Rientjes
2010-01-30 12:46 ` Vedran Furač
2010-01-30 22:53 ` David Rientjes
2010-01-31 20:29 ` Vedran Furač
2010-02-01 10:33 ` David Rientjes
2010-02-01 0:01 ` KAMEZAWA Hiroyuki
2010-02-01 10:28 ` David Rientjes
2010-01-29 21:11 ` David Rientjes
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=20100126151202.75bd9347.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=balbir@linux.vnet.ibm.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=minchan.kim@gmail.com \
--cc=rientjes@google.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).