All of lore.kernel.org
 help / color / mirror / Atom feed
From: Evgeniy Polyakov <zbr@ioremap.net>
To: David Rientjes <rientjes@google.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	balbir@linux.vnet.ibm.com, Nikanth Karthikesan <knikanth@suse.de>,
	containers@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org,
	Torvalds <torvalds@linux-foundation.org>,
	Arve Hj?nnev?g <arve@android.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Chris Snook <csnook@redhat.com>, Paul Menage <menage@google.com>
Subject: Re: [RFC] [PATCH] Cgroup based OOM killer controller
Date: Wed, 28 Jan 2009 00:51:18 +0300	[thread overview]
Message-ID: <20090127215118.GA12431@ioremap.net> (raw)
In-Reply-To: <alpine.DEB.2.00.0901271230140.21124@chino.kir.corp.google.com>

On Tue, Jan 27, 2009 at 12:37:21PM -0800, David Rientjes (rientjes@google.com) wrote:
> > Well, oom-killer can, since it drops unkillable state from the process
> > mask, that may be not enough though, but it tries more than userspace.
> > 
> 
> The only thing it does is send a SIGKILL and gives the thread access to 
> memory reserves with TIF_MEMDIE, it doesn't drop any unkillable state.  If 

There is a small difference between force_sig_info() and usual
send_sinal() used by kill.

> its victim is hung in D state and the memory reserves do not allow it to 
> return to being runnable, this task will not die and the oom killer would 
> livelock unless given another target.

D-states are different. In the current tree we even have
page_lock_killable(), so it depends.

> > My main point was to haev a way to monitor memory usage and that any
> > process could tune own behaviour according to that information. Which is
> > not realated to the system oom-killer at all. Thus /dev/mem_notify is
> > interested first (and only the first) as a memory usage notification
> > interface and not a way to invoke any kind of 'soft' oom-killer.
> 
> It's a way to prevent invoking the kernel oom killer by allowing userspace 
> notification of events where methods such as droping caches, elevating 
> limits, adding nodes, sending signals, etc, can prevent such a problem.  
> When the system (or cgroup) is completely oom, it can also issue SIGKILLs 
> that will free some memory and preempt the oom killer from acting.
> 
> I think there might be some confusion about my proposal for extending 
> /dev/mem_notify.  Not only should it notify of certain low memory events, 
> but it should also allow userspace notification of oom events, just like 
> the cgroup oom notifier patch allowed.  Instead of attaching a task to a 
> cgroup file in that case, however, this would simply be the responsibility 
> of a task that has set up a poll() on the cgroup's mem_notify file.  A 
> configurable delay could be imposed so page allocation attempts simply 
> loop while the userspace handler responds and then only invoke the oom 
> killer when absolutely necessary.

I have really no objections against this and extending oom-killer to
allow to wait a bit in the allocation path before userspace makes some
progress. But do not drop existing oom-killer (i.e. its ability to kill
processes) in favour of this new feature. Let's have both and if
extension failed for some reason, old oom-killer will do the things.

-- 
	Evgeniy Polyakov

  parent reply	other threads:[~2009-01-27 21:51 UTC|newest]

Thread overview: 126+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-21 11:08 [RFC] [PATCH] Cgroup based OOM killer controller Nikanth Karthikesan
2009-01-21 13:17 ` Evgeniy Polyakov
2009-01-21 15:24   ` Nikanth Karthikesan
     [not found]     ` <200901212054.34929.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-21 20:49       ` David Rientjes
2009-01-21 20:49         ` David Rientjes
2009-01-22  2:53         ` KAMEZAWA Hiroyuki
2009-01-22  5:12           ` Nikanth Karthikesan
     [not found]           ` <20090122115324.b954c6a1.kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-01-22  5:12             ` Nikanth Karthikesan
     [not found]         ` <alpine.DEB.2.00.0901211241040.21080-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22  2:53           ` KAMEZAWA Hiroyuki
2009-01-22  5:12           ` Nikanth Karthikesan
2009-01-22  5:12         ` Nikanth Karthikesan
     [not found]           ` <200901221042.30957.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-22  8:43             ` David Rientjes
2009-01-22  8:43           ` David Rientjes
2009-01-22  9:23             ` Nikanth Karthikesan
2009-01-22  9:39               ` David Rientjes
     [not found]                 ` <alpine.DEB.2.00.0901220134200.32502-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22 10:10                   ` Nikanth Karthikesan
2009-01-22 10:10                 ` Nikanth Karthikesan
2009-01-22 10:18                   ` David Rientjes
     [not found]                   ` <200901221540.08108.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-22 10:18                     ` David Rientjes
     [not found]               ` <200901221453.14860.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-22  9:39                 ` David Rientjes
     [not found]             ` <alpine.DEB.2.00.0901220036440.28850-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22  9:23               ` Nikanth Karthikesan
2009-01-22  9:50               ` Evgeniy Polyakov
2009-01-22  9:50             ` Evgeniy Polyakov
     [not found]               ` <20090122095026.GA10579-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-22 10:00                 ` David Rientjes
2009-01-22 10:00                   ` David Rientjes
2009-01-22 10:14                   ` Evgeniy Polyakov
     [not found]                     ` <20090122101424.GA12317-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-22 10:27                       ` David Rientjes
2009-01-22 10:27                         ` David Rientjes
2009-01-22 13:21                         ` Evgeniy Polyakov
     [not found]                           ` <20090122132133.GA17524-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-22 20:28                             ` David Rientjes
2009-01-27 23:55                             ` Paul Menage
2009-01-22 20:28                           ` David Rientjes
     [not found]                             ` <alpine.DEB.2.00.0901221216330.2085-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22 21:06                               ` Evgeniy Polyakov
2009-01-22 21:06                             ` Evgeniy Polyakov
     [not found]                               ` <20090122210613.GA10158-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-22 21:35                                 ` David Rientjes
2009-01-22 21:35                                   ` David Rientjes
     [not found]                                   ` <alpine.DEB.2.00.0901221314010.6145-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22 22:04                                     ` Evgeniy Polyakov
2009-01-22 22:04                                   ` Evgeniy Polyakov
2009-01-22 22:28                                     ` David Rientjes
     [not found]                                       ` <alpine.DEB.2.00.0901221415050.10427-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22 22:53                                         ` Evgeniy Polyakov
2009-01-22 22:53                                       ` Evgeniy Polyakov
     [not found]                                         ` <20090122225304.GA3551-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-22 23:25                                           ` Evgeniy Polyakov
2009-01-22 23:25                                         ` Evgeniy Polyakov
     [not found]                                     ` <20090122220446.GA1651-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-22 22:28                                       ` David Rientjes
2009-01-27 23:55                           ` Paul Menage
     [not found]                         ` <alpine.DEB.2.00.0901220218120.2851-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22 13:21                           ` Evgeniy Polyakov
2009-01-23  9:45                           ` Nikanth Karthikesan
2009-01-23  9:45                         ` Nikanth Karthikesan
     [not found]                           ` <200901231515.37442.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-23 10:33                             ` David Rientjes
2009-01-23 10:33                               ` David Rientjes
     [not found]                               ` <alpine.DEB.2.00.0901230223500.15719-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-23 14:56                                 ` Nikanth Karthikesan
2009-01-23 14:56                               ` Nikanth Karthikesan
2009-01-23 20:44                                 ` David Rientjes
2009-01-27 10:20                                   ` Nikanth Karthikesan
     [not found]                                     ` <200901271550.16902.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-27 10:53                                       ` David Rientjes
2009-01-27 10:53                                         ` David Rientjes
     [not found]                                         ` <alpine.DEB.2.00.0901270244380.23757-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27 11:08                                           ` Nikanth Karthikesan
2009-01-27 11:08                                         ` Nikanth Karthikesan
     [not found]                                           ` <200901271638.21720.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-27 11:21                                             ` David Rientjes
2009-01-27 11:21                                               ` David Rientjes
     [not found]                                               ` <alpine.DEB.2.00.0901270316040.25608-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27 11:37                                                 ` Nikanth Karthikesan
2009-01-27 11:37                                               ` Nikanth Karthikesan
2009-01-27 20:29                                                 ` David Rientjes
     [not found]                                                 ` <200901271707.48770.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-27 20:29                                                   ` David Rientjes
     [not found]                                   ` <alpine.DEB.2.00.0901231230370.14231-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27 10:20                                     ` Nikanth Karthikesan
     [not found]                                 ` <200901232026.16778.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-23 20:44                                   ` David Rientjes
2009-01-28  1:00                                   ` Paul Menage
2009-01-28  1:00                                 ` Paul Menage
     [not found]                                   ` <6599ad830901271700u43e472dk742992334e456a13-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-01-29 15:48                                     ` Nikanth Karthikesan
2009-01-29 15:48                                   ` Nikanth Karthikesan
     [not found]                   ` <alpine.DEB.2.00.0901220156310.1738-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-22 10:14                     ` Evgeniy Polyakov
     [not found]   ` <20090121131739.GB4997-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-21 15:24     ` Nikanth Karthikesan
     [not found] ` <200901211638.23101.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-21 13:17   ` Evgeniy Polyakov
2009-01-22  3:28   ` KAMEZAWA Hiroyuki
2009-01-26 19:54   ` Balbir Singh
2009-01-22  3:28 ` KAMEZAWA Hiroyuki
     [not found]   ` <20090122122843.7e94878e.kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-01-22  5:13     ` Nikanth Karthikesan
2009-01-22  5:13   ` Nikanth Karthikesan
2009-01-22  5:27     ` KAMEZAWA Hiroyuki
     [not found]       ` <20090122142721.34068fdf.kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-01-22  6:11         ` Nikanth Karthikesan
2009-01-22  6:11       ` Nikanth Karthikesan
     [not found]     ` <200901221043.13684.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-22  5:27       ` KAMEZAWA Hiroyuki
2009-01-22  5:39       ` Arve Hjønnevåg
2009-01-22  5:39     ` Arve Hjønnevåg
2009-01-22  6:12       ` Nikanth Karthikesan
     [not found]         ` <200901221142.00803.knikanth-l3A5Bk7waGM@public.gmane.org>
2009-01-22  6:29           ` Arve Hjønnevåg
2009-01-22  6:29         ` Arve Hjønnevåg
     [not found]           ` <d6200be20901212229y47353d3ft72fbfed6ffaba999-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-01-22  6:42             ` Nikanth Karthikesan
2009-01-22  6:42           ` Nikanth Karthikesan
     [not found]       ` <d6200be20901212139u3683c829x4db1840a28986a6f-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-01-22  6:12         ` Nikanth Karthikesan
2009-01-26 19:54 ` Balbir Singh
2009-01-26 19:56   ` Alan Cox
2009-01-27  7:02     ` KOSAKI Motohiro
2009-01-27  7:26       ` Balbir Singh
     [not found]       ` <20090127155825.D476.KOSAKI.MOTOHIRO-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-01-27  7:26         ` Balbir Singh
2009-01-27  7:39         ` David Rientjes
2009-01-27  7:39       ` David Rientjes
     [not found]         ` <alpine.DEB.2.00.0901262325320.13157-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27  7:44           ` KOSAKI Motohiro
2009-01-27  7:44         ` KOSAKI Motohiro
     [not found]           ` <20090127164238.D479.KOSAKI.MOTOHIRO-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-01-27  7:51             ` David Rientjes
2009-01-27  7:51               ` David Rientjes
     [not found]               ` <alpine.DEB.2.00.0901262350110.14525-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27  9:31                 ` Evgeniy Polyakov
2009-01-27  9:31                   ` Evgeniy Polyakov
2009-01-27 10:40                   ` KOSAKI Motohiro
2009-01-27 13:45                     ` Evgeniy Polyakov
2009-01-27 15:40                       ` Balbir Singh
     [not found]                         ` <20090127154053.GQ504-SINUvgVNF2CyUtPGxGje5AC/G2K4zDHf@public.gmane.org>
2009-01-27 21:54                           ` Evgeniy Polyakov
2009-01-27 21:54                         ` Evgeniy Polyakov
2009-01-27 20:41                       ` David Rientjes
     [not found]                         ` <alpine.DEB.2.00.0901271238090.21124-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27 21:55                           ` Evgeniy Polyakov
2009-01-27 21:55                         ` Evgeniy Polyakov
     [not found]                       ` <20090127134559.GB18119-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-27 15:40                         ` Balbir Singh
2009-01-27 20:41                         ` David Rientjes
     [not found]                     ` <20090127193058.D48B.KOSAKI.MOTOHIRO-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-01-27 13:45                       ` Evgeniy Polyakov
     [not found]                   ` <20090127093105.GB2646-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-27  9:37                     ` David Rientjes
2009-01-27  9:37                       ` David Rientjes
2009-01-27 13:40                       ` Evgeniy Polyakov
2009-01-27 20:37                         ` David Rientjes
     [not found]                           ` <alpine.DEB.2.00.0901271230140.21124-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27 21:51                             ` Evgeniy Polyakov
2009-01-27 21:51                           ` Evgeniy Polyakov [this message]
     [not found]                         ` <20090127134038.GA18119-i6C2adt8DTjR7s880joybQ@public.gmane.org>
2009-01-27 20:37                           ` David Rientjes
     [not found]                       ` <alpine.DEB.2.00.0901270134360.20070-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-01-27 13:40                         ` Evgeniy Polyakov
2009-01-27 10:40                     ` KOSAKI Motohiro
     [not found]     ` <20090126195622.1d5bf488-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
2009-01-27  7:02       ` KOSAKI Motohiro
     [not found]   ` <20090126195431.GC504-SINUvgVNF2CyUtPGxGje5AC/G2K4zDHf@public.gmane.org>
2009-01-26 19:56     ` Alan Cox
  -- strict thread matches above, loose matches on Subject: below --
2009-01-21 11:08 Nikanth Karthikesan

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=20090127215118.GA12431@ioremap.net \
    --to=zbr@ioremap.net \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=arve@android.com \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=containers@lists.linux-foundation.org \
    --cc=csnook@redhat.com \
    --cc=knikanth@suse.de \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=menage@google.com \
    --cc=rientjes@google.com \
    --cc=torvalds@linux-foundation.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.