lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 14 Dec 2009 20:30:37 -0800 (PST)
From:	David Rientjes <rientjes@...gle.com>
To:	KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
cc:	Andrew Morton <akpm@...ux-foundation.org>,
	Daisuke Nishimura <nishimura@....nes.nec.co.jp>,
	KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>,
	linux-mm@...ck.org, linux-kernel@...r.kernel.org,
	Christoph Lameter <cl@...ux-foundation.org>
Subject: Re: [BUGFIX][PATCH] oom-kill: fix NUMA consraint check with nodemask
 v4.2

On Tue, 15 Dec 2009, KAMEZAWA Hiroyuki wrote:

>     I'm now preparing more counters for mm's statistics. It's better to
>     wait  and to see what we can do more. And other patches for total
>     oom-killer improvement is under development.
> 
>     And, there is a compatibility problem.
>     As David says, this may break some crazy software which uses
>     fake_numa+cpuset+oom_killer+oom_adj for resource controlling.
>    (even if I recommend them to use memcg rather than crazy tricks...)
>     

That's not at all what I said.  I said using total_vm as a baseline allows 
users to define when a process is to be considered "rogue," that is, using 
more memory than expected.  Using rss would be inappropriate since it is 
highly dynamic and depends on the state of the VM at the time of oom, 
which userspace cannot possibly keep updated.

You consistently ignore that point: the power of /proc/pid/oom_adj to 
influence when a process, such as a memory leaker, is to be considered as 
a high priority for an oom kill.  It has absolutely nothing to do with 
fake NUMA, cpusets, or memcg.

>     2 ideas which I can think of now are..
>     1) add sysctl_oom_calc_on_committed_memory 
>        If this is set, use vm-size instead of rss.
> 

I would agree only if the oom killer used total_vm as a the default, it is 
long-standing and allows for the aforementioned capability that you lose 
with rss.  I have no problem with the added sysctl to use rss as the 
baseline when enabled.

>     2) add /proc/<pid>/oom_guard_size
>        This allows users to specify "valid/expected size" of a task.
>        When
>        #echo 10M > /proc/<pid>/oom_guard_size
>        At OOM calculation, 10Mbytes is subtracted from rss size.
>        (The best way is to estimate this automatically from vm_size..but...)

Expected rss is almost impossible to tune for cpusets that have a highly 
dynamic set of mems, let alone without containment.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ