Message ID | 20220825164131.402717-4-bigeasy@linutronix.de (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | None | expand |
On Thu 25-08-22 18:41:26, Sebastian Andrzej Siewior wrote: > From: Thomas Gleixner <tglx@linutronix.de> > > Replace the open coded CONFIG_PREEMPT_RT conditional > preempt_enable/disable() pairs with the new helper functions which hide > the underlying implementation details. > > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: linux-mm@kvack.org > Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by: Michal Hocko <mhocko@suse.com> Thanks! > --- > mm/vmstat.c | 36 ++++++++++++------------------------ > 1 file changed, 12 insertions(+), 24 deletions(-) > > diff --git a/mm/vmstat.c b/mm/vmstat.c > index 373d2730fcf21..d514fe7f90af0 100644 > --- a/mm/vmstat.c > +++ b/mm/vmstat.c > @@ -355,8 +355,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item, > * CPU migrations and preemption potentially corrupts a counter so > * disable preemption. > */ > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_disable(); > + preempt_disable_nested(); > > x = delta + __this_cpu_read(*p); > > @@ -368,8 +367,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item, > } > __this_cpu_write(*p, x); > > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_enable(); > + preempt_enable_nested(); > } > EXPORT_SYMBOL(__mod_zone_page_state); > > @@ -393,8 +391,7 @@ void __mod_node_page_state(struct pglist_data *pgdat, enum node_stat_item item, > } > > /* See __mod_node_page_state */ > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_disable(); > + preempt_disable_nested(); > > x = delta + __this_cpu_read(*p); > > @@ -406,8 +403,7 @@ void __mod_node_page_state(struct pglist_data *pgdat, enum node_stat_item item, > } > __this_cpu_write(*p, x); > > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_enable(); > + preempt_enable_nested(); > } > EXPORT_SYMBOL(__mod_node_page_state); > > @@ -441,8 +437,7 @@ void __inc_zone_state(struct zone *zone, enum zone_stat_item item) > s8 v, t; > > /* See __mod_node_page_state */ > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_disable(); > + preempt_disable_nested(); > > v = __this_cpu_inc_return(*p); > t = __this_cpu_read(pcp->stat_threshold); > @@ -453,8 +448,7 @@ void __inc_zone_state(struct zone *zone, enum zone_stat_item item) > __this_cpu_write(*p, -overstep); > } > > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_enable(); > + preempt_enable_nested(); > } > > void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item) > @@ -466,8 +460,7 @@ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item) > VM_WARN_ON_ONCE(vmstat_item_in_bytes(item)); > > /* See __mod_node_page_state */ > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_disable(); > + preempt_disable_nested(); > > v = __this_cpu_inc_return(*p); > t = __this_cpu_read(pcp->stat_threshold); > @@ -478,8 +471,7 @@ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item) > __this_cpu_write(*p, -overstep); > } > > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_enable(); > + preempt_enable_nested(); > } > > void __inc_zone_page_state(struct page *page, enum zone_stat_item item) > @@ -501,8 +493,7 @@ void __dec_zone_state(struct zone *zone, enum zone_stat_item item) > s8 v, t; > > /* See __mod_node_page_state */ > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_disable(); > + preempt_disable_nested(); > > v = __this_cpu_dec_return(*p); > t = __this_cpu_read(pcp->stat_threshold); > @@ -513,8 +504,7 @@ void __dec_zone_state(struct zone *zone, enum zone_stat_item item) > __this_cpu_write(*p, overstep); > } > > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_enable(); > + preempt_enable_nested(); > } > > void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item) > @@ -526,8 +516,7 @@ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item) > VM_WARN_ON_ONCE(vmstat_item_in_bytes(item)); > > /* See __mod_node_page_state */ > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_disable(); > + preempt_disable_nested(); > > v = __this_cpu_dec_return(*p); > t = __this_cpu_read(pcp->stat_threshold); > @@ -538,8 +527,7 @@ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item) > __this_cpu_write(*p, overstep); > } > > - if (IS_ENABLED(CONFIG_PREEMPT_RT)) > - preempt_enable(); > + preempt_enable_nested(); > } > > void __dec_zone_page_state(struct page *page, enum zone_stat_item item) > -- > 2.37.2
diff --git a/mm/vmstat.c b/mm/vmstat.c index 373d2730fcf21..d514fe7f90af0 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -355,8 +355,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item, * CPU migrations and preemption potentially corrupts a counter so * disable preemption. */ - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_disable(); + preempt_disable_nested(); x = delta + __this_cpu_read(*p); @@ -368,8 +367,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item, } __this_cpu_write(*p, x); - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_enable(); + preempt_enable_nested(); } EXPORT_SYMBOL(__mod_zone_page_state); @@ -393,8 +391,7 @@ void __mod_node_page_state(struct pglist_data *pgdat, enum node_stat_item item, } /* See __mod_node_page_state */ - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_disable(); + preempt_disable_nested(); x = delta + __this_cpu_read(*p); @@ -406,8 +403,7 @@ void __mod_node_page_state(struct pglist_data *pgdat, enum node_stat_item item, } __this_cpu_write(*p, x); - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_enable(); + preempt_enable_nested(); } EXPORT_SYMBOL(__mod_node_page_state); @@ -441,8 +437,7 @@ void __inc_zone_state(struct zone *zone, enum zone_stat_item item) s8 v, t; /* See __mod_node_page_state */ - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_disable(); + preempt_disable_nested(); v = __this_cpu_inc_return(*p); t = __this_cpu_read(pcp->stat_threshold); @@ -453,8 +448,7 @@ void __inc_zone_state(struct zone *zone, enum zone_stat_item item) __this_cpu_write(*p, -overstep); } - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_enable(); + preempt_enable_nested(); } void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item) @@ -466,8 +460,7 @@ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item) VM_WARN_ON_ONCE(vmstat_item_in_bytes(item)); /* See __mod_node_page_state */ - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_disable(); + preempt_disable_nested(); v = __this_cpu_inc_return(*p); t = __this_cpu_read(pcp->stat_threshold); @@ -478,8 +471,7 @@ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item) __this_cpu_write(*p, -overstep); } - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_enable(); + preempt_enable_nested(); } void __inc_zone_page_state(struct page *page, enum zone_stat_item item) @@ -501,8 +493,7 @@ void __dec_zone_state(struct zone *zone, enum zone_stat_item item) s8 v, t; /* See __mod_node_page_state */ - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_disable(); + preempt_disable_nested(); v = __this_cpu_dec_return(*p); t = __this_cpu_read(pcp->stat_threshold); @@ -513,8 +504,7 @@ void __dec_zone_state(struct zone *zone, enum zone_stat_item item) __this_cpu_write(*p, overstep); } - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_enable(); + preempt_enable_nested(); } void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item) @@ -526,8 +516,7 @@ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item) VM_WARN_ON_ONCE(vmstat_item_in_bytes(item)); /* See __mod_node_page_state */ - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_disable(); + preempt_disable_nested(); v = __this_cpu_dec_return(*p); t = __this_cpu_read(pcp->stat_threshold); @@ -538,8 +527,7 @@ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item) __this_cpu_write(*p, overstep); } - if (IS_ENABLED(CONFIG_PREEMPT_RT)) - preempt_enable(); + preempt_enable_nested(); } void __dec_zone_page_state(struct page *page, enum zone_stat_item item)