From: Michal Hocko <mhocko@suse.com> To: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: linux-kernel@vger.kernel.org, Thomas Gleixner <tglx@linutronix.de>, Peter Zijlstra <peterz@infradead.org>, Steven Rostedt <rostedt@goodmis.org>, Linus Torvalds <torvalds@linux-foundation.org>, Matthew Wilcox <willy@infradead.org>, Johannes Weiner <hannes@cmpxchg.org>, Roman Gushchin <roman.gushchin@linux.dev>, Shakeel Butt <shakeelb@google.com>, Muchun Song <songmuchun@bytedance.com>, cgroups@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2 5/8] mm/memcontrol: Replace the PREEMPT_RT conditionals Date: Thu, 1 Sep 2022 16:45:58 +0200 [thread overview] Message-ID: <YxDFplJXPudU4AS7@dhcp22.suse.cz> (raw) In-Reply-To: <20220825164131.402717-6-bigeasy@linutronix.de> On Thu 25-08-22 18:41:28, Sebastian Andrzej Siewior wrote: > From: Thomas Gleixner <tglx@linutronix.de> > > Use VM_WARN_ON_IRQS_ENABLED() and preempt_disable/enable_nested() to > replace the CONFIG_PREEMPT_RT #ifdeffery. > > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > Cc: Johannes Weiner <hannes@cmpxchg.org> > Cc: Michal Hocko <mhocko@kernel.org> > Cc: Roman Gushchin <roman.gushchin@linux.dev> > Cc: Shakeel Butt <shakeelb@google.com> > Cc: Muchun Song <songmuchun@bytedance.com> > Cc: cgroups@vger.kernel.org > Cc: linux-mm@kvack.org > Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > Acked-by: Johannes Weiner <hannes@cmpxchg.org> > Reviewed-by: Muchun Song <songmuchun@bytedance.com> > Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by: Michal Hocko <mhocko@suse.com> Thanks! > --- > mm/memcontrol.c | 19 ++++++------------- > 1 file changed, 6 insertions(+), 13 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index b69979c9ced5c..d35b6fa560f0a 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -597,25 +597,18 @@ static u64 flush_next_time; > */ > static void memcg_stats_lock(void) > { > -#ifdef CONFIG_PREEMPT_RT > - preempt_disable(); > -#else > - VM_BUG_ON(!irqs_disabled()); > -#endif > + preempt_disable_nested(); > + VM_WARN_ON_IRQS_ENABLED(); > } > > static void __memcg_stats_lock(void) > { > -#ifdef CONFIG_PREEMPT_RT > - preempt_disable(); > -#endif > + preempt_disable_nested(); > } > > static void memcg_stats_unlock(void) > { > -#ifdef CONFIG_PREEMPT_RT > - preempt_enable(); > -#endif > + preempt_enable_nested(); > } > > static inline void memcg_rstat_updated(struct mem_cgroup *memcg, int val) > @@ -715,7 +708,7 @@ void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, > * interrupt context while other caller need to have disabled interrupt. > */ > __memcg_stats_lock(); > - if (IS_ENABLED(CONFIG_DEBUG_VM) && !IS_ENABLED(CONFIG_PREEMPT_RT)) { > + if (IS_ENABLED(CONFIG_DEBUG_VM)) { > switch (idx) { > case NR_ANON_MAPPED: > case NR_FILE_MAPPED: > @@ -725,7 +718,7 @@ void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, > WARN_ON_ONCE(!in_task()); > break; > default: > - WARN_ON_ONCE(!irqs_disabled()); > + VM_WARN_ON_IRQS_ENABLED(); > } > } > > -- > 2.37.2 -- Michal Hocko SUSE Labs
WARNING: multiple messages have this Message-ID (diff)
From: Michal Hocko <mhocko-IBi9RG/b67k@public.gmane.org> To: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>, Peter Zijlstra <peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>, Steven Rostedt <rostedt-nx8X9YLhiw1AfugRpC6u6w@public.gmane.org>, Linus Torvalds <torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>, Matthew Wilcox <willy-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>, Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org>, Roman Gushchin <roman.gushchin-fxUVXftIFDnyG1zEObXtfA@public.gmane.org>, Shakeel Butt <shakeelb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>, Muchun Song <songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>, cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org Subject: Re: [PATCH v2 5/8] mm/memcontrol: Replace the PREEMPT_RT conditionals Date: Thu, 1 Sep 2022 16:45:58 +0200 [thread overview] Message-ID: <YxDFplJXPudU4AS7@dhcp22.suse.cz> (raw) In-Reply-To: <20220825164131.402717-6-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> On Thu 25-08-22 18:41:28, Sebastian Andrzej Siewior wrote: > From: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> > > Use VM_WARN_ON_IRQS_ENABLED() and preempt_disable/enable_nested() to > replace the CONFIG_PREEMPT_RT #ifdeffery. > > Signed-off-by: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> > Cc: Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org> > Cc: Michal Hocko <mhocko-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> > Cc: Roman Gushchin <roman.gushchin-fxUVXftIFDnyG1zEObXtfA@public.gmane.org> > Cc: Shakeel Butt <shakeelb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org> > Cc: Muchun Song <songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org> > Cc: cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > Cc: linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org > Signed-off-by: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> > Acked-by: Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org> > Reviewed-by: Muchun Song <songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org> > Acked-by: Peter Zijlstra (Intel) <peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org> Acked-by: Michal Hocko <mhocko-IBi9RG/b67k@public.gmane.org> Thanks! > --- > mm/memcontrol.c | 19 ++++++------------- > 1 file changed, 6 insertions(+), 13 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index b69979c9ced5c..d35b6fa560f0a 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -597,25 +597,18 @@ static u64 flush_next_time; > */ > static void memcg_stats_lock(void) > { > -#ifdef CONFIG_PREEMPT_RT > - preempt_disable(); > -#else > - VM_BUG_ON(!irqs_disabled()); > -#endif > + preempt_disable_nested(); > + VM_WARN_ON_IRQS_ENABLED(); > } > > static void __memcg_stats_lock(void) > { > -#ifdef CONFIG_PREEMPT_RT > - preempt_disable(); > -#endif > + preempt_disable_nested(); > } > > static void memcg_stats_unlock(void) > { > -#ifdef CONFIG_PREEMPT_RT > - preempt_enable(); > -#endif > + preempt_enable_nested(); > } > > static inline void memcg_rstat_updated(struct mem_cgroup *memcg, int val) > @@ -715,7 +708,7 @@ void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, > * interrupt context while other caller need to have disabled interrupt. > */ > __memcg_stats_lock(); > - if (IS_ENABLED(CONFIG_DEBUG_VM) && !IS_ENABLED(CONFIG_PREEMPT_RT)) { > + if (IS_ENABLED(CONFIG_DEBUG_VM)) { > switch (idx) { > case NR_ANON_MAPPED: > case NR_FILE_MAPPED: > @@ -725,7 +718,7 @@ void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, > WARN_ON_ONCE(!in_task()); > break; > default: > - WARN_ON_ONCE(!irqs_disabled()); > + VM_WARN_ON_IRQS_ENABLED(); > } > } > > -- > 2.37.2 -- Michal Hocko SUSE Labs
next prev parent reply other threads:[~2022-09-01 14:46 UTC|newest] Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-08-25 16:41 [PATCH v2 0/8] Replace PREEMPT_RT ifdefs with preempt_[dis|en]able_nested() Sebastian Andrzej Siewior 2022-08-25 16:41 ` [PATCH v2 1/8] preempt: Provide preempt_[dis|en]able_nested() Sebastian Andrzej Siewior 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner 2022-08-25 16:41 ` [PATCH v2 2/8] dentry: Use preempt_[dis|en]able_nested() Sebastian Andrzej Siewior 2022-08-26 7:52 ` Christian Brauner 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner 2022-08-25 16:41 ` [PATCH v2 3/8] mm/vmstat: " Sebastian Andrzej Siewior 2022-09-01 14:41 ` Michal Hocko 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner 2022-08-25 16:41 ` [PATCH v2 4/8] mm/debug: Provide VM_WARN_ON_IRQS_ENABLED() Sebastian Andrzej Siewior 2022-09-01 14:41 ` Michal Hocko 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner 2022-08-25 16:41 ` [PATCH v2 5/8] mm/memcontrol: Replace the PREEMPT_RT conditionals Sebastian Andrzej Siewior 2022-08-25 16:41 ` Sebastian Andrzej Siewior 2022-09-01 14:45 ` Michal Hocko [this message] 2022-09-01 14:45 ` Michal Hocko 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner 2022-08-25 16:41 ` [PATCH v2 6/8] mm/compaction: Get rid of RT ifdeffery Sebastian Andrzej Siewior 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner 2022-08-25 16:41 ` [PATCH v2 7/8] flex_proportions: Disable preemption entering the write section Sebastian Andrzej Siewior 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Sebastian Andrzej Siewior 2022-08-25 16:41 ` [PATCH v2 8/8] u64_stats: Streamline the implementation Sebastian Andrzej Siewior 2022-09-19 12:37 ` [tip: sched/rt] " tip-bot2 for Thomas Gleixner
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=YxDFplJXPudU4AS7@dhcp22.suse.cz \ --to=mhocko@suse.com \ --cc=bigeasy@linutronix.de \ --cc=cgroups@vger.kernel.org \ --cc=hannes@cmpxchg.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=peterz@infradead.org \ --cc=roman.gushchin@linux.dev \ --cc=rostedt@goodmis.org \ --cc=shakeelb@google.com \ --cc=songmuchun@bytedance.com \ --cc=tglx@linutronix.de \ --cc=torvalds@linux-foundation.org \ --cc=willy@infradead.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: linkBe 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.