From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.6 required=3.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EAFF3C433E0 for ; Fri, 3 Jul 2020 14:23:29 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 8CABD20884 for ; Fri, 3 Jul 2020 14:23:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="KacU4DCh" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8CABD20884 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id B2C238D0036; Fri, 3 Jul 2020 10:23:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ABEFF6B012D; Fri, 3 Jul 2020 10:23:28 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9A3A48D0036; Fri, 3 Jul 2020 10:23:28 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0041.hostedemail.com [216.40.44.41]) by kanga.kvack.org (Postfix) with ESMTP id 803206B012C for ; Fri, 3 Jul 2020 10:23:28 -0400 (EDT) Received: from smtpin15.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id E47F2824556B for ; Fri, 3 Jul 2020 14:23:27 +0000 (UTC) X-FDA: 76996982454.15.leaf18_2e090c526e92 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin15.hostedemail.com (Postfix) with ESMTP id B98E21814B0CA for ; Fri, 3 Jul 2020 14:23:27 +0000 (UTC) X-HE-Tag: leaf18_2e090c526e92 X-Filterd-Recvd-Size: 4253 Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) by imf44.hostedemail.com (Postfix) with ESMTP for ; Fri, 3 Jul 2020 14:23:27 +0000 (UTC) Received: by mail-lj1-f175.google.com with SMTP id f5so21325319ljj.10 for ; Fri, 03 Jul 2020 07:23:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xAsbhYpysmstHPq0Op9MjqJaZ7YDRLDrp7Rg8i0eT+Q=; b=KacU4DChX8owr3WxGngcQJG0ITHWxa2x5YJZMRcO1Oq8g8suqMxqCIKz2KIVn+GX0G NlL4sAx7SWLe7wOoKqalqC8WPtCsOVDiIJl2ugaBNTqIy8m+xXXNOoboIPQNY0hU4eh5 Cv+CRClsFvZBzHLaY4R8w4zl6/ZmyudVjt3Ym/CNTRtKSCKgM5mCowbGng/unHeM1X6G rX9V5/vB5ZifMJFjN2LTDNr4RYI0VvFlBsKbHhDWHWGHEv13TdNi3C8BfxPrrTetX9vs vMD4jQOdARdwlqk8ECDSA4gMLt9sQnF8RfswofOxXeklF/ny6lafGO5LMCzz1KNSzmw1 ZJUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xAsbhYpysmstHPq0Op9MjqJaZ7YDRLDrp7Rg8i0eT+Q=; b=WmgEGbLoYaNlUZ5iyKyyBG0u56QdTRP9wHsig1QkcNfjojlVlbloEQDGi/S7WhV0iX YVKTTnBuSmpuKFCd3q1jizxX85N8oMWxXpHZQCU+Q2Nzrm93N76bQeD16lyTyQt9arlF vPklcxXHUQt3HxuvxmN39PYxFBXAESlWPN3dx0CF5+72avx70NX03lyQDGrI0nGehl2C pKf9k4GrjfO8LSTmB6fqQb/HxDgzvbCjcfn1DiAvJXo7Gj541IeZsfaFhewwoHeo57a4 DMUVMRSMfONzrlL+/vfxRvw19umY9R4YuNiBO8arWw64/hmMz6PQgsHFi8cHfFUeBNZc TVCQ== X-Gm-Message-State: AOAM533Ah+tm/0LLDrWWfOyIWKWbOEMXku9t2rBZHNUiq68+1C0I91fw 1JwejrY/OupdrT9/pPoVkfsTembYnHAADUPwGLUrkA== X-Google-Smtp-Source: ABdhPJypEhgBGtdvE+CIOFMTHTIs6098Z3PwdIVQlW6tkGvx5BOconTGtFOIQ4CnrlAXgXA8D+jLajNgHO9BeuTBN1U= X-Received: by 2002:a2e:910c:: with SMTP id m12mr20890425ljg.332.1593786205575; Fri, 03 Jul 2020 07:23:25 -0700 (PDT) MIME-Version: 1.0 References: <20200702152222.2630760-1-shakeelb@google.com> <20200703063548.GM18446@dhcp22.suse.cz> In-Reply-To: <20200703063548.GM18446@dhcp22.suse.cz> From: Shakeel Butt Date: Fri, 3 Jul 2020 07:23:14 -0700 Message-ID: Subject: Re: [RFC PROPOSAL] memcg: per-memcg user space reclaim interface To: Michal Hocko Cc: Johannes Weiner , Roman Gushchin , Yang Shi , David Rientjes , Greg Thelen , Andrew Morton , Linux MM , LKML , Cgroups Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: B98E21814B0CA X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam02 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, Jul 2, 2020 at 11:35 PM Michal Hocko wrote: > > On Thu 02-07-20 08:22:22, Shakeel Butt wrote: > [...] > > Interface options: > > ------------------ > > > > 1) memcg interface e.g. 'echo 10M > memory.reclaim' > > > > + simple > > + can be extended to target specific type of memory (anon, file, kmem). > > - most probably restricted to cgroup v2. > > > > 2) fadvise(PAGEOUT) on cgroup_dir_fd > > > > + more general and applicable to other FSes (actually we are using > > something similar for tmpfs). > > + can be extended in future to just age the LRUs instead of reclaim or > > some new use cases. > > Could you explain why memory.high as an interface to trigger pro-active > memory reclaim is not sufficient. Also memory.low limit to protect > latency sensitve workloads? Yes, we can use memory.high to trigger [proactive] reclaim in a memcg but note that it can also introduce stalls in the application running in that memcg. Let's suppose the memory.current of a memcg is 100MiB and we want to reclaim 20MiB from it, we can set the memory.high to 80MiB but any allocation attempt from the application running in that memcg can get stalled/throttled. I want the functionality of the reclaim without potential stalls. The memory.min is for protection against the global reclaim and is unrelated to this discussion.