From: Johannes Weiner <hannes@cmpxchg.org>
To: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Cc: akpm@linux-foundation.org, alan@llwyncelyn.cymru, hch@lst.de,
mhocko@suse.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, kernel-team@fb.com
Subject: Re: [PATCH 1/2] Revert "vmalloc: back off when the current task is killed"
Date: Wed, 4 Oct 2017 19:21:22 -0400 [thread overview]
Message-ID: <20171004232122.GB3610@cmpxchg.org> (raw)
In-Reply-To: <201710050642.JJI34818.QFSHJOMOtFOLFV@I-love.SAKURA.ne.jp>
On Thu, Oct 05, 2017 at 06:42:38AM +0900, Tetsuo Handa wrote:
> Johannes Weiner wrote:
> > On Thu, Oct 05, 2017 at 05:49:43AM +0900, Tetsuo Handa wrote:
> > > On 2017/10/05 3:59, Johannes Weiner wrote:
> > > > But the justification to make that vmalloc() call fail like this isn't
> > > > convincing, either. The patch mentions an OOM victim exhausting the
> > > > memory reserves and thus deadlocking the machine. But the OOM killer
> > > > is only one, improbable source of fatal signals. It doesn't make sense
> > > > to fail allocations preemptively with plenty of memory in most cases.
> > >
> > > By the time the current thread reaches do_exit(), fatal_signal_pending(current)
> > > should become false. As far as I can guess, the source of fatal signal will be
> > > tty_signal_session_leader(tty, exit_session) which is called just before
> > > tty_ldisc_hangup(tty, cons_filp != NULL) rather than the OOM killer. I don't
> > > know whether it is possible to make fatal_signal_pending(current) true inside
> > > do_exit() though...
> >
> > It's definitely not the OOM killer, the memory situation looks fine
> > when this happens. I didn't look closer where the signal comes from.
> >
>
> Then, we could check tsk_is_oom_victim() instead of fatal_signal_pending().
The case for this patch didn't seem very strong to beging with, and
since it's causing problems a simple revert makes more sense than an
attempt to fine-tune it.
Generally, we should leave it to the page allocator to handle memory
reserves, not annotate random alloc_page() callsites.
next prev parent reply other threads:[~2017-10-04 23:21 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-03 22:55 tty crash due to auto-failing vmalloc Johannes Weiner
2017-10-03 23:51 ` Alan Cox
2017-10-04 8:33 ` Michal Hocko
2017-10-04 18:58 ` Johannes Weiner
2017-10-04 18:59 ` [PATCH 1/2] Revert "vmalloc: back off when the current task is killed" Johannes Weiner
2017-10-04 20:49 ` Tetsuo Handa
2017-10-04 21:00 ` Johannes Weiner
2017-10-04 21:42 ` Tetsuo Handa
2017-10-04 23:21 ` Johannes Weiner [this message]
2017-10-04 22:32 ` Andrew Morton
2017-10-04 23:18 ` Johannes Weiner
2017-10-05 7:57 ` Michal Hocko
2017-10-05 10:36 ` Tetsuo Handa
2017-10-05 10:49 ` Michal Hocko
2017-10-07 2:21 ` Tetsuo Handa
2017-10-07 2:51 ` Johannes Weiner
2017-10-07 4:05 ` Tetsuo Handa
2017-10-07 7:59 ` Michal Hocko
2017-10-07 9:57 ` Tetsuo Handa
2017-10-05 6:49 ` Vlastimil Babka
2017-10-05 7:54 ` Michal Hocko
2017-10-04 18:59 ` [PATCH 2/2] tty: fall back to N_NULL if switching to N_TTY fails during hangup Johannes Weiner
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=20171004232122.GB3610@cmpxchg.org \
--to=hannes@cmpxchg.org \
--cc=akpm@linux-foundation.org \
--cc=alan@llwyncelyn.cymru \
--cc=hch@lst.de \
--cc=kernel-team@fb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.com \
--cc=penguin-kernel@I-love.SAKURA.ne.jp \
/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).