From patchwork Tue Jan 11 01:02:59 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yang X-Patchwork-Id: 12709356 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id BB5B3C433F5 for ; Tue, 11 Jan 2022 01:03:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 04F986B0072; Mon, 10 Jan 2022 20:03:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id F18936B0073; Mon, 10 Jan 2022 20:03:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DE02C6B0074; Mon, 10 Jan 2022 20:03:06 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0206.hostedemail.com [216.40.44.206]) by kanga.kvack.org (Postfix) with ESMTP id CFE176B0072 for ; Mon, 10 Jan 2022 20:03:06 -0500 (EST) Received: from smtpin18.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 8058895CB6 for ; Tue, 11 Jan 2022 01:03:06 +0000 (UTC) X-FDA: 79016207172.18.EF741C6 Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) by imf24.hostedemail.com (Postfix) with ESMTP id E5170180007 for ; Tue, 11 Jan 2022 01:03:05 +0000 (UTC) Received: by mail-ed1-f42.google.com with SMTP id m4so19296696edb.10 for ; Mon, 10 Jan 2022 17:03:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id; bh=gtH/Kion5HJLdt7FtzIkiM9uRZTByJ26w7a2rxZ6ieo=; b=qXleYNAEtWkveqdPsAnLgtk92hCEN09SWm8MqmPYwTeB5Z+ao26iVyzzy9RpgiBgTZ 8jgSCWBbSu/+EcMPXaWB69plAmT+RzYF70HFPJGPze/pifY0liTk7l4bhV3LS3emDlSf TSlMHLsWyNFeVo9LGCl1fLz4RWow2N3xp3zHu1zCBsuANJQxavuEgZqY+iMsLs6946Mj z3bSwhaN4pSAxDE7azvHUiqAZL5/DLG+vb2+FOcmqVotTQlJTJVfyhPUTa8Rz/DUen++ moKga1Zco3+BsQDcsATFw0hHoOaOsIZu6UTfn9mPV2b+gpLasbfx2DeA/YUKvIwXGmNS 0BeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=gtH/Kion5HJLdt7FtzIkiM9uRZTByJ26w7a2rxZ6ieo=; b=XSZtjj7jYVv+WUqPbIF/KR2JiyHt1ot5W1j1l00x2NOSiLRZkrKNL48y1QUdNPnv6h OPx9uEnAj3g6AeUgI7srVTopBRO9liNSdKZzL7k8FPVLjUMF08cLkWw0n2mZUAell5AB zdlpcrjxmaY0VqaNCs2xUOL0FSj9BUm+mIsCpOyQsXjSyzBh/79Rzl9Wyoenz/A1eSEX shUODtfcuPr/k8TkrfenRNVZXoM4KN+o7O6V+YeMAfoy5TQmzWfwkvDIM715I03Ja+rm aP9CTtc4qmj1Kqo7PRVHelaB3i/7q2rrY2xV+mPSYALnUkJ+2Pbv6I/iV1OgP/Fb8D8+ cCog== X-Gm-Message-State: AOAM531J3/5lax11ZbIoNNBiCfyD2VBy0YY9XdN+veDq8AN0Jz2cBn2+ c7kytdlVVeWWft1sy11C0A0= X-Google-Smtp-Source: ABdhPJzQ8x8kkI/8hwjjGRiuA1PLxA3FcIa/KPc7GCa12ZHynB+K97OHQE3/Cbi+isSsaC7j2CPQaA== X-Received: by 2002:a17:907:7fa8:: with SMTP id qk40mr745080ejc.719.1641862984654; Mon, 10 Jan 2022 17:03:04 -0800 (PST) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id hc14sm2957460ejc.42.2022.01.10.17.03.04 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Jan 2022 17:03:04 -0800 (PST) From: Wei Yang To: hannes@cmpxchg.org, mhocko@kernel.org, vdavydov.dev@gmail.com, akpm@linux-foundation.org, shakeelb@google.com, guro@fb.com, vbabka@suse.cz, willy@infradead.org, songmuchun@bytedance.com, shy828301@gmail.com, surenb@google.com Cc: linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org, Wei Yang Subject: [PATCH 1/4] mm/memcg: use NUMA_NO_NODE to indicate allocation from unspecified node Date: Tue, 11 Jan 2022 01:02:59 +0000 Message-Id: <20220111010302.8864-1-richard.weiyang@gmail.com> X-Mailer: git-send-email 2.11.0 X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: E5170180007 X-Stat-Signature: e6gukqurjpk4kku79hpy5i7dwqckxs7n Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=qXleYNAE; spf=pass (imf24.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-HE-Tag: 1641862985-388583 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: Instead of use "-1", let's use NUMA_NO_NODE for consistency. Signed-off-by: Wei Yang Reviewed-by: Muchun Song Acked-by: Roman Gushchin Signed-off-by: Wei Yang Signed-off-by: Michal Hocko Reviewed-by: Mike Rapoport Reviewed-by: Shakeel Butt --- mm/memcontrol.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 2ed5f2a0879d..11715f7323c0 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -5054,7 +5054,7 @@ static int alloc_mem_cgroup_per_node_info(struct mem_cgroup *memcg, int node) * function. */ if (!node_state(node, N_NORMAL_MEMORY)) - tmp = -1; + tmp = NUMA_NO_NODE; pn = kzalloc_node(sizeof(*pn), GFP_KERNEL, tmp); if (!pn) return 1; From patchwork Tue Jan 11 01:03:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yang X-Patchwork-Id: 12709357 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id BB2FCC4332F for ; Tue, 11 Jan 2022 01:03:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3D32A6B0073; Mon, 10 Jan 2022 20:03:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 380636B0074; Mon, 10 Jan 2022 20:03:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1ACC96B0078; Mon, 10 Jan 2022 20:03:07 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0069.hostedemail.com [216.40.44.69]) by kanga.kvack.org (Postfix) with ESMTP id 00F7A6B0074 for ; Mon, 10 Jan 2022 20:03:06 -0500 (EST) Received: from smtpin28.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id A2CF3824C421 for ; Tue, 11 Jan 2022 01:03:06 +0000 (UTC) X-FDA: 79016207172.28.CD0F61E Received: from mail-ed1-f43.google.com (mail-ed1-f43.google.com [209.85.208.43]) by imf11.hostedemail.com (Postfix) with ESMTP id 62C5D4000F for ; Tue, 11 Jan 2022 01:03:06 +0000 (UTC) Received: by mail-ed1-f43.google.com with SMTP id i5so7166810edf.9 for ; Mon, 10 Jan 2022 17:03:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=cOmBhmo4B4Ukm6s0FflMe2nP4T2kTWokfAC8k0+Tp8A=; b=YdgiRcT5b4ToQFSxyF5G4EFVb1dSoHDJMo4BUDntHy0fbYJAVvGNz2aLcQ9HPdOnrG Z1sygXtxjEKW5l21yHQYo6TMcsMuKs8+IwB4Bm5KBUiS2pCZK5M/by1eZa65loOVD11n /fQN9xKi5oCnon17uwfJ83+pqOmbLnfQ4gAuhkLEOrTz96IMpxOLoC6hD0ZugnSWdQ5f oMkmm+o+nQUJ9UZYxNmro9tT+l6fj5/Gssaid2pvz+RMJj7hjueA9Gk7AjS+CDpqSncg kiDq+AS7sukqRCjwLFbsn03pN318DzDzfQiZcvXxyZEpfYs8luKYAB85EAZG+JX0dren X+XA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=cOmBhmo4B4Ukm6s0FflMe2nP4T2kTWokfAC8k0+Tp8A=; b=UtYZH6Hu/HZcItR6xynwZ0J27pBi9c1DDJqN2Xb6q1E12103Tp2YcqMRiIdi25545o hiYfuDnqEoQpg4g+81aWSJJBioSMUnYIUczg6Jl6EP6mJIIsZ5jwTkEWyKxyRXlxZevH xlHNxc6T/5utuZwUqdHbq0KARhfKMigs0v9h1y19Asl4RANxf3ghGUxn9ckAhAQTI+m/ XvAsZQXypdufa3fmtvqHoHnhatn50E9QLuVQS0E9UN+YkGHR1mmLVSW1iTlGkAv0YVzr 36oNXKWP+zIIoIGG1OilxRcA8vwNStVMaCv9hkUwxyUroo9lx75Vr070G2DBRXRkUcw1 ddug== X-Gm-Message-State: AOAM532ZbsyjM7W1BRKtTH1Zuog3hDkbMW1gar/FJHm8osl/esgeF2xY /06mwyDefoT5dQ4rAs6r5nA= X-Google-Smtp-Source: ABdhPJxdEYNE0zGnRtVv966sHQg3qTYvZay17m6gYLTCfaNoG9QG4hGa8q87+UBkeLJYqwCUWADsBg== X-Received: by 2002:a05:6402:3496:: with SMTP id v22mr2107340edc.263.1641862985361; Mon, 10 Jan 2022 17:03:05 -0800 (PST) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id 18sm2968137ejo.8.2022.01.10.17.03.04 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Jan 2022 17:03:05 -0800 (PST) From: Wei Yang To: hannes@cmpxchg.org, mhocko@kernel.org, vdavydov.dev@gmail.com, akpm@linux-foundation.org, shakeelb@google.com, guro@fb.com, vbabka@suse.cz, willy@infradead.org, songmuchun@bytedance.com, shy828301@gmail.com, surenb@google.com Cc: linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org, Wei Yang Subject: [PATCH 2/4] mm/memcg: mem_cgroup_per_node is already set to 0 on allocation Date: Tue, 11 Jan 2022 01:03:00 +0000 Message-Id: <20220111010302.8864-2-richard.weiyang@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20220111010302.8864-1-richard.weiyang@gmail.com> References: <20220111010302.8864-1-richard.weiyang@gmail.com> X-Stat-Signature: 9kerusnsn1wpnjtrqt9a6p36dph4tzym Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=YdgiRcT5; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf11.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.208.43 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 62C5D4000F X-HE-Tag: 1641862986-268712 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: kzalloc_node() would set data to 0, so it's not necessary to set it again. Signed-off-by: Wei Yang Reviewed-by: Muchun Song Acked-by: Michal Hocko Reviewed-by: Roman Gushchin Reviewed-by: Mike Rapoport Reviewed-by: Shakeel Butt --- mm/memcontrol.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 11715f7323c0..a504616f904a 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -5067,8 +5067,6 @@ static int alloc_mem_cgroup_per_node_info(struct mem_cgroup *memcg, int node) } lruvec_init(&pn->lruvec); - pn->usage_in_excess = 0; - pn->on_tree = false; pn->memcg = memcg; memcg->nodeinfo[node] = pn; From patchwork Tue Jan 11 01:03:01 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yang X-Patchwork-Id: 12709358 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6AE5FC433EF for ; Tue, 11 Jan 2022 01:03:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 30FF06B0074; Mon, 10 Jan 2022 20:03:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 1D3456B0075; Mon, 10 Jan 2022 20:03:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F3FFB6B0078; Mon, 10 Jan 2022 20:03:07 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0170.hostedemail.com [216.40.44.170]) by kanga.kvack.org (Postfix) with ESMTP id DDFA26B0074 for ; Mon, 10 Jan 2022 20:03:07 -0500 (EST) Received: from smtpin20.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 997E7181F6CBC for ; Tue, 11 Jan 2022 01:03:07 +0000 (UTC) X-FDA: 79016207214.20.CC1BC85 Received: from mail-ed1-f45.google.com (mail-ed1-f45.google.com [209.85.208.45]) by imf13.hostedemail.com (Postfix) with ESMTP id 42C7420002 for ; Tue, 11 Jan 2022 01:03:07 +0000 (UTC) Received: by mail-ed1-f45.google.com with SMTP id u21so38195257edd.5 for ; Mon, 10 Jan 2022 17:03:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=Jn9HpCa6G4upWAzqy9L2iSMpMRASsTNp9iLWrRF7M4U=; b=KnHpqKaf4bNL9UoWb2i9eRaXV2Ftcl/MbpDJtelOe1wEeOH/D/nh89jJcbfwg4oH+0 g2jPXX1T8MpZTmQ+tmWaj4HEEwm7x/rHOWOaM0l6jzdQtSYxHnlmJB+jPT3xio5EKIYk Y8YjJ54LxCRf/YrbmV5yZCMFyTWDsgKF4NYUg80ytXHbjc0jcmwcHVL5ozQbucW9qL0e qLXgAMlMTlo5mVmPryAwe5Nfw1KcbnY0mJrlJZbjm7z1KrdVcxVMIIrqwh0WbS9A5ZPm NFyEUea7SjrAU4JkCZ750sDihBugarUnqrZ7t4MPy4XyWTzkw6sARu7MPD/1eaziPnfI 7bBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=Jn9HpCa6G4upWAzqy9L2iSMpMRASsTNp9iLWrRF7M4U=; b=lkphF/eSbGXgwPApMeQ4UhZk5t9+RgoIZfmEDeLaO3HHOvGo2ds5RqwvWOZ4NNewQ+ VdFX82iorkhenuqzpqUVOA9Bh1GBH0USUtO6Le1HU8/EFWXf1IGoQ5YljAwpcVwzuU+f 8S+krbUV6WJih+YZWQcNjKerY8v0QSkrtRsiPbGLmNGdH0/KM76yHFVknq+yYEIGezWa Ssp+lkW2Js/PfAmw4AJfvHXde6aLBiVKXrcCSjfE7JM1biCtoqrCNJtynk/BEc6FsDed 5PprAzLy1PQSxbZiGfMvdvC8pRxTLK5sjmC3De7a9TM8tL2qXs3UUoBZdeCS86/IR7Dr rKbg== X-Gm-Message-State: AOAM530r4MdHlJTvKsig8+spRt+lWtSm87CzbIL1gdF0v629zV+RHP1L q9/k4pNabc/oErMeW8ElWtw= X-Google-Smtp-Source: ABdhPJw9UFs+56GbYPq0rQ7c7c2tDNpm9aeaKw9djhH1aOOiy2Z5/mzl5j0wKXy1MJnVh9k7Huienw== X-Received: by 2002:a17:906:2dc3:: with SMTP id h3mr1665725eji.713.1641862986144; Mon, 10 Jan 2022 17:03:06 -0800 (PST) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id e16sm4286362edu.15.2022.01.10.17.03.05 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Jan 2022 17:03:05 -0800 (PST) From: Wei Yang To: hannes@cmpxchg.org, mhocko@kernel.org, vdavydov.dev@gmail.com, akpm@linux-foundation.org, shakeelb@google.com, guro@fb.com, vbabka@suse.cz, willy@infradead.org, songmuchun@bytedance.com, shy828301@gmail.com, surenb@google.com Cc: linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org, Wei Yang Subject: [PATCH 3/4] mm/memcg: retrieve parent memcg from css.parent Date: Tue, 11 Jan 2022 01:03:01 +0000 Message-Id: <20220111010302.8864-3-richard.weiyang@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20220111010302.8864-1-richard.weiyang@gmail.com> References: <20220111010302.8864-1-richard.weiyang@gmail.com> Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=KnHpqKaf; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf13.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.208.45 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com X-Stat-Signature: feuib9mz6fot18yn4mbyghacm4de7bpe X-Rspamd-Queue-Id: 42C7420002 X-Rspamd-Server: rspam12 X-HE-Tag: 1641862987-556123 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: The parent we get from page_counter is correct, while this is two different hierarchy. Let's retrieve the parent memcg from css.parent just like parent_cs(), blkcg_parent(), etc. Signed-off-by: Wei Yang Reviewed-by: Muchun Song Acked-by: Michal Hocko Reviewed-by: Roman Gushchin Reviewed-by: Shakeel Butt --- include/linux/memcontrol.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h index 0c5c403f4be6..12bf443f7b14 100644 --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h @@ -886,9 +886,7 @@ static inline struct mem_cgroup *lruvec_memcg(struct lruvec *lruvec) */ static inline struct mem_cgroup *parent_mem_cgroup(struct mem_cgroup *memcg) { - if (!memcg->memory.parent) - return NULL; - return mem_cgroup_from_counter(memcg->memory.parent, memory); + return mem_cgroup_from_css(memcg->css.parent); } static inline bool mem_cgroup_is_descendant(struct mem_cgroup *memcg, From patchwork Tue Jan 11 01:03:02 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yang X-Patchwork-Id: 12709359 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1568CC4332F for ; Tue, 11 Jan 2022 01:03:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CA9DC6B0075; Mon, 10 Jan 2022 20:03:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C5B106B0078; Mon, 10 Jan 2022 20:03:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B20C06B007B; Mon, 10 Jan 2022 20:03:08 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0223.hostedemail.com [216.40.44.223]) by kanga.kvack.org (Postfix) with ESMTP id 9BBB26B0075 for ; Mon, 10 Jan 2022 20:03:08 -0500 (EST) Received: from smtpin04.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 52E9A95C9E for ; Tue, 11 Jan 2022 01:03:08 +0000 (UTC) X-FDA: 79016207256.04.D30C956 Received: from mail-ed1-f48.google.com (mail-ed1-f48.google.com [209.85.208.48]) by imf15.hostedemail.com (Postfix) with ESMTP id E16F5A0017 for ; Tue, 11 Jan 2022 01:03:07 +0000 (UTC) Received: by mail-ed1-f48.google.com with SMTP id i5so7166964edf.9 for ; Mon, 10 Jan 2022 17:03:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=GGc1cimFOcena0hJzqhAcjsWeuG9TQ4RXCir27mg2t0=; b=jiQ42Y7CHZZtZfr0P6hnQ1aVpXrkyGGjHJiEJOydtLNdPEG98j73wqZIJmQ9nliUJq J8LzTE0O/1GYG3WOJELkKIwETtKtExvdajuPIgvNc5VIDMug1EMI2Mbai/e/1+Y4Mqjr 1GK0ffaC+9QPT+hva3tBcOlyu8XHTaixj6ubnRBdGjpvfqB8sO3SXR0VGS+MUSwuuhFo DyYkAWi3xQH/oUUXXZkM1gW8sAycY9KXnLpi0z9UujlQ6QG6xXbQ9i6/lpRiCrDVU+SS N6cSB1GWILoSdYPMstvbbLEMY73ykEfolAjOkGoiKBqqtXJGeuMNGd1oLCbJi6kWtEVH iQAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=GGc1cimFOcena0hJzqhAcjsWeuG9TQ4RXCir27mg2t0=; b=JhCFo79tITxtVwBzHhDQXgq4W4t35DuWdlEsVhUlSWOEJ1PF2KRCTMApNZYxyNu7n2 kKm+RHsQMw5cBc4RRJ35kE2rVpU69YX3GZyvyEovoqV5kMM3sNtukaFyFM2tKVXfMQPh srdAOCi9P26KmUc/graLy0jfxm4cTlp8hBlOkkEZaSc/FUCs+1ZDtytGX/c9+RXY/38N v8l607TE0ns2jNMmk7ctiGarmnxehl92g4rknM9RUD6Kg13YMlkXsE828lOEEYvYfdBw XfGtqrEIVr2wUqGuOv6En4U6fQO4N5DblS3h7567kFez0/vYmwWRpkk6qCpRUMC2CuvO aISQ== X-Gm-Message-State: AOAM53377VJNNgJskNeZfyS+Aghjq8zBKXSbR72Xl52ZDrSOqwPq9J6w dqpbJo1mdzBDcMmuTnDq/Yc= X-Google-Smtp-Source: ABdhPJyVjpTad4Otqdhb+YMruYx/2fOQ1WRkMaE08kdCcgSDgGqBRpi+hjjxUUkr7ybiFwBBpz9enA== X-Received: by 2002:a17:907:7da5:: with SMTP id oz37mr1746834ejc.465.1641862986847; Mon, 10 Jan 2022 17:03:06 -0800 (PST) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id 9sm303304ejt.181.2022.01.10.17.03.06 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Jan 2022 17:03:06 -0800 (PST) From: Wei Yang To: hannes@cmpxchg.org, mhocko@kernel.org, vdavydov.dev@gmail.com, akpm@linux-foundation.org, shakeelb@google.com, guro@fb.com, vbabka@suse.cz, willy@infradead.org, songmuchun@bytedance.com, shy828301@gmail.com, surenb@google.com Cc: linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org, Wei Yang Subject: [PATCH 4/4] mm/memcg: refine mem_cgroup_threshold_ary->current_threshold calculation Date: Tue, 11 Jan 2022 01:03:02 +0000 Message-Id: <20220111010302.8864-4-richard.weiyang@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20220111010302.8864-1-richard.weiyang@gmail.com> References: <20220111010302.8864-1-richard.weiyang@gmail.com> X-Stat-Signature: syzeqy1e1jqr38ryibbhhzem5y7i1sz4 Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=jiQ42Y7C; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf15.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.208.48 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: E16F5A0017 X-HE-Tag: 1641862987-978376 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: mem_cgroup_threshold_ary->current_threshold points to the last entry who's threshold is less or equal to usage. Instead of iterating entries to get the correct index, we can leverage primary->current_threshold to get it. If the threshold added is less or equal to usage, current_threshold should increase by one. Otherwise, it doesn't change. Signed-off-by: Wei Yang --- mm/memcontrol.c | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index a504616f904a..ce7060907df2 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -4161,7 +4161,7 @@ static int __mem_cgroup_usage_register_event(struct mem_cgroup *memcg, struct mem_cgroup_threshold_ary *new; unsigned long threshold; unsigned long usage; - int i, size, ret; + int size, ret; ret = page_counter_memparse(args, "-1", &threshold); if (ret) @@ -4193,9 +4193,13 @@ static int __mem_cgroup_usage_register_event(struct mem_cgroup *memcg, new->size = size; /* Copy thresholds (if any) to new array */ - if (thresholds->primary) + if (thresholds->primary) { memcpy(new->entries, thresholds->primary->entries, flex_array_size(new, entries, size - 1)); + new->current_threshold = thresholds->primary->current_threshold; + } else { + new->current_threshold = -1; + } /* Add new threshold */ new->entries[size - 1].eventfd = eventfd; @@ -4205,18 +4209,17 @@ static int __mem_cgroup_usage_register_event(struct mem_cgroup *memcg, sort(new->entries, size, sizeof(*new->entries), compare_thresholds, NULL); - /* Find current threshold */ - new->current_threshold = -1; - for (i = 0; i < size; i++) { - if (new->entries[i].threshold <= usage) { - /* - * new->current_threshold will not be used until - * rcu_assign_pointer(), so it's safe to increment - * it here. - */ - ++new->current_threshold; - } else - break; + /* + * If the threshold added here is less or equal to usage, this means + * current_threshold need to increase by one. + */ + if (threshold <= usage) { + /* + * new->current_threshold will not be used until + * rcu_assign_pointer(), so it's safe to increment + * it here. + */ + new->current_threshold++; } /* Free old spare buffer and save old primary buffer as spare */