All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Hocko <mhocko@kernel.org>
To: Yafang Shao <laoar.shao@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>, Linux MM <linux-mm@kvack.org>
Subject: Re: [RFC PATCH] mm, oom: oom ratelimit auto tuning
Date: Tue, 14 Apr 2020 16:32:29 +0200	[thread overview]
Message-ID: <20200414143229.GN4629@dhcp22.suse.cz> (raw)
In-Reply-To: <CALOAHbDv+ZAgmGJP7GFzGcjKBZTPk9kYo63g173Nh+vn00qmwg@mail.gmail.com>

On Tue 14-04-20 20:32:54, Yafang Shao wrote:
> On Tue, Apr 14, 2020 at 3:39 PM Michal Hocko <mhocko@kernel.org> wrote:
[...]
> > Besides that I strongly suspect that you would be much better of
> > by disabling /proc/sys/vm/oom_dump_tasks which would reduce the amount
> > of output a lot. Or do you really require this information when
> > debugging oom reports?
> >
> 
> Yes, disabling /proc/sys/vm/oom_dump_tasks can save lots of time.
> But I'm not sure whehter we can disable it totally, because disabling
> it would prevent the tasks log from being wrote into /var/log/messages
> neither.

Yes, eligible tasks would be really missing. The real question is
whether you are really going to miss that information. From my
experience of looking into oom reports for years I can tell that the
list might be useful but in a vast majority of cases I simply do not
really neeed it because the stat of memory and chosen victims are much
more important. The list of tasks is usually interesting only when you
want to double check whether the victim selection was reasonable or
cases where a list of tasks itself can tell whether something went wild
in the userspace.

> > > The OOM ratelimit starts with a slow rate, and it will increase slowly
> > > if the speed of the console is rapid and decrease rapidly if the speed
> > > of the console is slow. oom_rs.burst will be in [1, 10] and
> > > oom_rs.interval will always greater than 5 * HZ.
> >
> > I am not against increasing the ratelimit timeout. But this patch seems
> > to be trying to be too clever.  Why cannot we simply increase the
> > parameters of the ratelimit?
> 
> I justed worried that the user may complain it if too many
> oom_kill_process callbacks are suppressed.

This can be a real concern indeed.

> But considering that OOM burst at the same time are always because of
> the same reason,

This is not really the case. Please note that many parallel OOM killers
might happen in memory cgroup setups.

> so I think one snapshot of the OOM may be enough.
> Simply setting oom_rs with {20 * HZ, 1} can resolve this issue.

Does it really though? The ratelimit doesn't stop the long taking
output. It simply cannot because the work is already done.

That being said, making the ratelimiting more aggressive sounds more
like a workaround than an actual fix. So I would go that route only if
there is no other option. I believe the real problem here is in printk
being too synchronous here. This is a general problem and something
printk maintainers are already working on.

For now I would recommend to workaround this problem by reducing the log
level or disabling dump_tasks.

-- 
Michal Hocko
SUSE Labs


  reply	other threads:[~2020-04-14 14:32 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-11  9:36 [RFC PATCH] mm, oom: oom ratelimit auto tuning Yafang Shao
2020-04-14  7:39 ` Michal Hocko
2020-04-14 12:32   ` Yafang Shao
2020-04-14 14:32     ` Michal Hocko [this message]
2020-04-14 14:58       ` Yafang Shao
2020-04-15  5:58         ` Tetsuo Handa
2020-04-17 11:57           ` Yafang Shao
2020-04-17 13:03             ` Tetsuo Handa
2020-04-17 13:55               ` Yafang Shao

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=20200414143229.GN4629@dhcp22.suse.cz \
    --to=mhocko@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=laoar.shao@gmail.com \
    --cc=linux-mm@kvack.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.