public inbox for cgroups@vger.kernel.org
 help / color / mirror / Atom feed
From: Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org>
To: Wei Xu <weixugc-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
Cc: Yosry Ahmed <yosryahmed-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
	Michal Hocko <mhocko-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Shakeel Butt <shakeelb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
	Andrew Morton
	<akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>,
	David Rientjes <rientjes-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
	Tejun Heo <tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Zefan Li <lizefan.x-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>,
	Roman Gushchin
	<roman.gushchin-fxUVXftIFDnyG1zEObXtfA@public.gmane.org>,
	cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Linux Kernel Mailing List
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Linux MM <linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org>,
	Jonathan Corbet <corbet-T1hC0tSOHrs@public.gmane.org>,
	Yu Zhao <yuzhao-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
	Dave Hansen <dave.hansen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	Greg Thelen <gthelen-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH resend] memcg: introduce per-memcg reclaim interface
Date: Fri, 1 Apr 2022 17:07:32 -0400	[thread overview]
Message-ID: <YkdplNIhtz3iyLKv@cmpxchg.org> (raw)
In-Reply-To: <CAAPL-u-za-TTyyC5uMVev9eQyhxZS7q3pVqaUxCFjqk+Sv9+ig-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On Fri, Apr 01, 2022 at 01:14:35PM -0700, Wei Xu wrote:
> On Fri, Apr 1, 2022 at 8:22 AM Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org> wrote:
> > On Thu, Mar 31, 2022 at 09:05:15PM -0700, Wei Xu wrote:
> > > It is better to return an error code (e.g. -EBUSY) when
> > > memory_reclaim() fails to reclaim nr_to_reclaim bytes of memory,
> > > except if the cgroup memory usage is already 0.  We can also return
> > > -EINVAL if nr_to_reclaim is too large (e.g. > limit).
> >
> > For -EBUSY, are you thinking of a specific usecase where that would
> > come in handy? I'm not really opposed to it, but couldn't convince
> > myself of the practical benefits of it, either.
> >
> > Keep in mind that MAX_RECLAIM_RETRIES failed reclaim attempts usually
> > constitute an OOM situation: memory.max will issue kills and
> > memory.high will begin crippling throttling. In what scenario would
> > you want to keep reclaiming a workload that is considered OOM?
> >
> > Certainly, proactive reclaim that wants to purge only the cold tail of
> > the workload wouldn't retry. Meta's version of this patch actually
> > does return -EAGAIN on reclaim failure, but the userspace daemon
> > doesn't do anything with it, so I didn't bring it up.
> 
> -EAGAIN sounds good, too.  Given that the userspace requests to
> reclaim a specified number of bytes, I think it is generally better to
> tell the userspace whether the request has been successfully
> fulfilled. Ideally, it would be even better to return how many bytes
> that have been reclaimed, though that is not easy to do through the
> cgroup interface. The userspace can choose to ignore the return value
> or log a message/update some stats (which Google does) for the
> monitoring purpose.

Fair enough, thanks for your thoughts. No objection from me!

  parent reply	other threads:[~2022-04-01 21:07 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-31  8:41 [PATCH resend] memcg: introduce per-memcg reclaim interface Yosry Ahmed
2022-03-31 17:25 ` Roman Gushchin
     [not found]   ` <YkXkA+Oh1Bx33PrU-cx5fftMpWqeCjSd+JxjunQ2O0Ztt9esIQQ4Iyu8u01E@public.gmane.org>
2022-04-01  6:01     ` Wei Xu
2022-04-01  9:11     ` Yosry Ahmed
2022-04-01 18:39       ` Roman Gushchin
     [not found]         ` <YkdG4nv/uKI0EtMp-cx5fftMpWqeCjSd+JxjunQ2O0Ztt9esIQQ4Iyu8u01E@public.gmane.org>
2022-04-01 21:13           ` Johannes Weiner
2022-04-01 21:21             ` Roman Gushchin
2022-04-01 21:38               ` Wei Xu
2022-04-01 21:51               ` Johannes Weiner
2022-04-04 17:14                 ` Shakeel Butt
2022-04-04 17:13         ` Yosry Ahmed
2022-04-04 17:55           ` Roman Gushchin
2022-04-01  9:15     ` Yosry Ahmed
2022-04-01 15:41       ` Shakeel Butt
2022-04-01 13:49   ` Michal Hocko
2022-04-01 16:58     ` Roman Gushchin
2022-04-04  8:44       ` Michal Hocko
2022-04-04 18:25         ` Roman Gushchin
2022-03-31 19:25 ` Johannes Weiner
2022-04-01  3:05 ` Chen Wandun
2022-04-01  9:20   ` Yosry Ahmed
2022-04-01  9:48     ` Chen Wandun
2022-04-01 10:02       ` Yosry Ahmed
     [not found] ` <20220331084151.2600229-1-yosryahmed-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2022-04-01  0:33   ` Andrew Morton
2022-04-01  3:38     ` Wei Xu
     [not found]       ` <CAAPL-u-_Da0qe7h_o70HCz4gPtjT8_bjx4rVNdgKZh3KNruzpA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-04-01  9:17         ` Yosry Ahmed
     [not found]           ` <CAJD7tkarUYM6fjty8FXn9gtR=RVWgksa3LNwswi1Ug1LPnLt4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-04-01 13:03             ` Michal Hocko
2022-04-01  4:05   ` Wei Xu
     [not found]     ` <CAAPL-u8g2qkhdTQtFtBS3GNYz0WnyahWEXvR4g_OSaKv+7EozA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-04-01  9:22       ` Yosry Ahmed
2022-04-01 15:22     ` Johannes Weiner
2022-04-01 20:14       ` Wei Xu
     [not found]         ` <CAAPL-u-za-TTyyC5uMVev9eQyhxZS7q3pVqaUxCFjqk+Sv9+ig-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-04-01 21:07           ` Johannes Weiner [this message]
2022-04-04 17:08         ` Shakeel Butt
2022-04-05  2:30           ` Wei Xu
2022-04-05 10:09           ` Michal Koutný
2022-04-01  8:39 ` Vaibhav Jain
2022-04-01  9:23   ` Yosry Ahmed
2022-04-04  3:50     ` Vaibhav Jain
2022-04-04 17:18       ` Yosry Ahmed
2022-04-01 13:54 ` Michal Hocko
     [not found]   ` <YkcEMdsi9G5y8mX4-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2022-04-01 16:56     ` Wei Xu
2022-04-02  8:13       ` Huang, Ying
2022-04-03  6:46         ` Wei Xu
2022-04-03  6:56         ` Wei Xu
2022-04-06  0:48           ` Huang, Ying
     [not found]             ` <87o81fujdc.fsf-fFUE1NP8JkzwuUmzmnQr+vooFf0ArEBIu+b9c/7xato@public.gmane.org>
2022-04-06  1:07               ` Wei Xu
     [not found]                 ` <CAAPL-u_6XqQYtLAMNFvEo+0XU2VR=XYm0T9btL=g6rVVW2h93w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-04-06  2:49                   ` Huang, Ying
2022-04-06  5:02                     ` Wei Xu
2022-04-06  6:32                       ` Huang, Ying
2022-04-06  7:05                         ` Wei Xu
     [not found]                           ` <CAAPL-u8u77yazFpc2R216j6ObAiANb0Lfxt7DcT9P=3eg60u9Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-04-06  8:49                             ` Huang, Ying
     [not found]                               ` <8735iqvbov.fsf-fFUE1NP8JkzwuUmzmnQr+vooFf0ArEBIu+b9c/7xato@public.gmane.org>
2022-04-06 20:16                                 ` Wei Xu
2022-04-07  7:35                         ` Michal Hocko
2022-04-07 21:26                     ` Tim Chen
     [not found]                       ` <215bd7332aee0ed1092bad4d826a42854ebfd04a.camel-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2022-04-07 22:12                         ` Wei Xu
2022-04-07 23:11                           ` Tim Chen
     [not found]                             ` <df6110a09cacc80ee1cbe905a71273a5f3953e16.camel-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2022-04-08  2:10                               ` Wei Xu
2022-04-08  3:08                                 ` Huang, Ying
     [not found]                                   ` <87y20gtgpf.fsf-fFUE1NP8JkzwuUmzmnQr+vooFf0ArEBIu+b9c/7xato@public.gmane.org>
2022-04-08  4:10                                     ` Wei Xu
2022-04-04 17:09   ` Yosry Ahmed

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=YkdplNIhtz3iyLKv@cmpxchg.org \
    --to=hannes-druugvl0lcnafugrpc6u6w@public.gmane.org \
    --cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
    --cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=corbet-T1hC0tSOHrs@public.gmane.org \
    --cc=dave.hansen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
    --cc=gthelen-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org \
    --cc=lizefan.x-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org \
    --cc=mhocko-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=rientjes-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=roman.gushchin-fxUVXftIFDnyG1zEObXtfA@public.gmane.org \
    --cc=shakeelb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=weixugc-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=yosryahmed-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=yuzhao-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox