From: Michal Hocko <mhocko@suse.com> To: Miaohe Lin <linmiaohe@huawei.com> Cc: hannes@cmpxchg.org, vdavydov.dev@gmail.com, akpm@linux-foundation.org, shakeelb@google.com, guro@fb.com, willy@infradead.org, alexs@kernel.org, richard.weiyang@gmail.com, songmuchun@bytedance.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, cgroups@vger.kernel.org Subject: Re: [PATCH 2/5] mm, memcg: narrow the scope of percpu_charge_mutex Date: Fri, 30 Jul 2021 08:46:45 +0200 [thread overview] Message-ID: <YQOgVfSrQRWdfiJH@dhcp22.suse.cz> (raw) In-Reply-To: <20210729125755.16871-3-linmiaohe@huawei.com> On Thu 29-07-21 20:57:52, Miaohe Lin wrote: > Since percpu_charge_mutex is only used inside drain_all_stock(), we can > narrow the scope of percpu_charge_mutex by moving it here. Makes sense and this is usually my preference as well. We used to have other caller back then so I couldn't. > Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Acked-by: Michal Hocko <mhocko@suse.com> Thanks! > --- > mm/memcontrol.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index 6580c2381a3e..a03e24e57cd9 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -2050,7 +2050,6 @@ struct memcg_stock_pcp { > #define FLUSHING_CACHED_CHARGE 0 > }; > static DEFINE_PER_CPU(struct memcg_stock_pcp, memcg_stock); > -static DEFINE_MUTEX(percpu_charge_mutex); > > #ifdef CONFIG_MEMCG_KMEM > static void drain_obj_stock(struct obj_stock *stock); > @@ -2209,6 +2208,7 @@ static void refill_stock(struct mem_cgroup *memcg, unsigned int nr_pages) > */ > static void drain_all_stock(struct mem_cgroup *root_memcg) > { > + static DEFINE_MUTEX(percpu_charge_mutex); > int cpu, curcpu; > > /* If someone's already draining, avoid adding running more workers. */ > -- > 2.23.0 -- Michal Hocko SUSE Labs
next prev parent reply other threads:[~2021-07-30 6:46 UTC|newest] Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-07-29 12:57 [PATCH 0/5] Cleanups and fixup for memcontrol Miaohe Lin 2021-07-29 12:57 ` [PATCH 1/5] mm, memcg: remove unused functions Miaohe Lin 2021-07-29 14:07 ` Shakeel Butt 2021-07-29 14:07 ` Shakeel Butt 2021-07-30 2:39 ` Muchun Song 2021-07-30 2:39 ` Muchun Song 2021-07-30 2:57 ` Roman Gushchin 2021-07-30 6:45 ` Michal Hocko 2021-07-29 12:57 ` [PATCH 2/5] mm, memcg: narrow the scope of percpu_charge_mutex Miaohe Lin 2021-07-30 2:42 ` Muchun Song 2021-07-30 2:42 ` Muchun Song 2021-07-30 3:06 ` Roman Gushchin 2021-07-30 6:50 ` Michal Hocko 2021-07-31 2:29 ` Miaohe Lin 2021-08-02 6:49 ` Michal Hocko 2021-08-02 9:54 ` Miaohe Lin 2021-08-03 3:40 ` Roman Gushchin 2021-08-03 6:29 ` Miaohe Lin 2021-08-03 7:11 ` Michal Hocko 2021-08-03 7:13 ` Roman Gushchin 2021-08-03 7:27 ` Michal Hocko 2021-08-03 9:33 ` Muchun Song 2021-08-03 9:33 ` Muchun Song 2021-08-03 10:50 ` Miaohe Lin 2021-08-03 14:15 ` Johannes Weiner 2021-08-04 8:20 ` Michal Hocko 2021-08-05 1:44 ` Miaohe Lin 2021-07-30 6:46 ` Michal Hocko [this message] 2021-07-29 12:57 ` [PATCH 3/5] mm, memcg: save some atomic ops when flush is already true Miaohe Lin 2021-07-29 14:40 ` Shakeel Butt 2021-07-29 14:40 ` Shakeel Butt 2021-07-30 2:37 ` Muchun Song 2021-07-30 2:37 ` Muchun Song 2021-07-30 3:07 ` Roman Gushchin 2021-07-30 6:51 ` Michal Hocko 2021-07-29 12:57 ` [PATCH 4/5] mm, memcg: avoid possible NULL pointer dereferencing in mem_cgroup_init() Miaohe Lin 2021-07-29 13:52 ` Matthew Wilcox 2021-07-30 1:50 ` Miaohe Lin 2021-07-30 3:12 ` Roman Gushchin 2021-07-30 6:29 ` Miaohe Lin 2021-07-30 6:44 ` Michal Hocko 2021-07-31 2:05 ` Miaohe Lin 2021-08-02 6:43 ` Michal Hocko 2021-08-02 10:00 ` Miaohe Lin 2021-08-02 10:42 ` Michal Hocko 2021-08-02 11:18 ` Miaohe Lin 2021-07-29 12:57 ` [PATCH 5/5] mm, memcg: always call __mod_node_page_state() with preempt disabled Miaohe Lin 2021-07-29 14:39 ` Shakeel Butt 2021-07-29 14:39 ` Shakeel Butt 2021-07-30 1:52 ` Miaohe Lin 2021-07-30 2:33 ` [External] " Muchun Song 2021-07-30 2:33 ` Muchun Song 2021-07-30 2:46 ` Miaohe Lin
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=YQOgVfSrQRWdfiJH@dhcp22.suse.cz \ --to=mhocko@suse.com \ --cc=akpm@linux-foundation.org \ --cc=alexs@kernel.org \ --cc=cgroups@vger.kernel.org \ --cc=guro@fb.com \ --cc=hannes@cmpxchg.org \ --cc=linmiaohe@huawei.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=richard.weiyang@gmail.com \ --cc=shakeelb@google.com \ --cc=songmuchun@bytedance.com \ --cc=vdavydov.dev@gmail.com \ --cc=willy@infradead.org \ --subject='Re: [PATCH 2/5] mm, memcg: narrow the scope of percpu_charge_mutex' \ /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
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.