From: "Rafael J. Wysocki" <rjw@rjwysocki.net>
To: Michal Hocko <mhocko@suse.cz>
Cc: Tejun Heo <tj@kernel.org>, Cong Wang <xiyou.wangcong@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
David Rientjes <rientjes@google.com>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [Patch v4 1/2] freezer: check OOM kill while being frozen
Date: Sun, 14 Sep 2014 18:39:54 +0200 [thread overview]
Message-ID: <1507312.nQ09A9EeVa@vostro.rjw.lan> (raw)
In-Reply-To: <20140911144509.GM22042@dhcp22.suse.cz>
On Thursday, September 11, 2014 04:45:09 PM Michal Hocko wrote:
> On Thu 11-09-14 16:52:50, Rafael J. Wysocki wrote:
> > On Thursday, September 11, 2014 04:28:22 PM Michal Hocko wrote:
> > > On Thu 11-09-14 16:32:50, Rafael J. Wysocki wrote:
> > > > On Thursday, September 11, 2014 04:10:51 PM Michal Hocko wrote:
> > > > > On Thu 11-09-14 16:26:56, Rafael J. Wysocki wrote:
> > > > > > On Thursday, September 11, 2014 04:04:48 PM Michal Hocko wrote:
> > > > > > > On Thu 11-09-14 16:17:56, Rafael J. Wysocki wrote:
> > > > > > > [...]
> > > > > > > > And I'm still wondering if the OOM killer may be made avoid killing frozen
> > > > > > > > tasks.
> > > > > > >
> > > > > > > This is really tricky. OOM killer aims at the biggest memory hog. We
> > > > > > > shouldn't ignore it just because it hides into the fridge... So even
> > > > > > > if we "fix" oom killer to ignore frozen tasks (which is inherently
> > > > > > > racy btw.) then we have a potential problem of freezer abuse (e.g. in
> > > > > > > container environments). So I strongly believe that the OOM killer has
> > > > > > > to be able to kill a frozen tasks.
> > > > > >
> > > > > > OK
> > > > > >
> > > > > > Is the OOM killer the only place where TIF_MEMDIE is set?
> > > > >
> > > > > Yes. To be precise, lowmemorykiller (staging android thingy), global OOM
> > > > > killer and memcg OOM killer. Any other users would be an abuse.
> > > >
> > > > OK
> > > >
> > > > So can we ensure that those things don't trigger during system suspend (or
> > > > equivalent) and then simply use the TIF_MEMDIE check in __refrigerator()?
> > >
> > > That would require that no memory allocation triggers OOM killer during
> > > suspend. I don't think this will work out. OOM killer is the last resort
> > > action. We cannot simply give access to memory reserves just because the
> > > current context is in the middle of suspend.
> >
> > But we can fail the allocation, can't we?
>
> We already do that by oom_killer_disable after all tasks are frozen in
> freeze_processes. This is before all other device specific things are
> done so I guess we cannot start killing after any device is suspended,
> right? This should be sufficient.
Yes, it should.
> > > What is the worst thing that might happen when a task is killed in the
> > > middle of suspend? I thought that suspend would fail after several
> > > attempts to suspend all existing tasks.
> >
> > The problem is what to do when we need to kill a frozen task.
> >
> > In that case we need to thaw it and then it will die eventually. Unfortunately,
> > it generally can do something undesirable before dying. That may be accessing
> > a suspended device, for example.
>
> OK, I have misunderstood you obviously. I thought we were discussing OOM
> while we are in the middle of freezing tasks. After they are frozen
> there is no OOM killer as per above.
Right.
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
next prev parent reply other threads:[~2014-09-14 16:20 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-04 22:30 Cong Wang
2014-09-04 22:30 ` [Patch v4 2/2] freezer: remove obsolete comments in __thaw_task() Cong Wang
2014-09-05 9:45 ` Michal Hocko
2014-09-05 14:09 ` Tejun Heo
2014-09-05 14:08 ` [Patch v4 1/2] freezer: check OOM kill while being frozen Tejun Heo
2014-09-05 16:31 ` Cong Wang
2014-09-05 18:00 ` Tejun Heo
2014-09-05 18:12 ` Cong Wang
2014-09-05 22:45 ` Tejun Heo
2014-09-05 23:32 ` Rafael J. Wysocki
2014-09-08 17:40 ` Cong Wang
2014-09-08 20:54 ` Rafael J. Wysocki
2014-09-08 20:58 ` Cong Wang
2014-09-08 21:53 ` Rafael J. Wysocki
2014-09-08 22:22 ` Tejun Heo
2014-09-08 22:48 ` Rafael J. Wysocki
2014-09-08 22:50 ` Tejun Heo
2014-09-08 23:15 ` Rafael J. Wysocki
2014-09-08 23:00 ` Cong Wang
2014-09-08 23:23 ` Rafael J. Wysocki
2014-09-08 23:16 ` Cong Wang
2014-09-08 23:42 ` Rafael J. Wysocki
2014-09-08 23:29 ` Cong Wang
2014-09-08 23:59 ` Rafael J. Wysocki
2014-09-10 20:30 ` Cong Wang
2014-09-10 23:38 ` Rafael J. Wysocki
2014-09-10 23:20 ` Cong Wang
2014-09-11 16:30 ` Michal Hocko
2014-09-12 23:59 ` Tejun Heo
2014-09-14 16:43 ` Rafael J. Wysocki
2014-09-15 0:56 ` Tejun Heo
2014-09-15 3:34 ` Rafael J. Wysocki
2014-09-15 9:36 ` Michal Hocko
2014-09-16 22:55 ` Cong Wang
2014-09-22 8:21 ` Michal Hocko
2014-09-09 15:16 ` Michal Hocko
2014-09-09 15:23 ` Tejun Heo
2014-09-09 16:06 ` Michal Hocko
2014-09-09 16:46 ` Tejun Heo
2014-09-09 17:12 ` Michal Hocko
2014-09-09 20:53 ` Rafael J. Wysocki
2014-09-10 13:24 ` Michal Hocko
2014-09-11 13:08 ` Michal Hocko
2014-09-11 14:17 ` Rafael J. Wysocki
2014-09-11 14:04 ` Michal Hocko
2014-09-11 14:26 ` Rafael J. Wysocki
2014-09-11 14:10 ` Michal Hocko
2014-09-11 14:32 ` Rafael J. Wysocki
2014-09-11 14:28 ` Michal Hocko
2014-09-11 14:52 ` Rafael J. Wysocki
2014-09-11 14:45 ` Michal Hocko
2014-09-14 16:39 ` Rafael J. Wysocki [this message]
2014-09-12 23:48 ` Tejun Heo
2014-09-15 14:28 ` Michal Hocko
2014-09-16 5:56 ` Tejun Heo
2014-09-09 20:48 ` Rafael J. Wysocki
2014-09-10 5:21 ` Cong Wang
2014-09-05 16:43 ` Cong Wang
2014-09-05 16:54 ` Michal Hocko
2014-09-15 11:22 ` Michal Hocko
2014-09-16 22:58 ` Cong Wang
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=1507312.nQ09A9EeVa@vostro.rjw.lan \
--to=rjw@rjwysocki.net \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mhocko@suse.cz \
--cc=rientjes@google.com \
--cc=tj@kernel.org \
--cc=xiyou.wangcong@gmail.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
all inboxes | Powered by JetHome®