[CC'ing Andrew since he seems to be taking those patches through -mm ]
On 23.06.2017 18:11, Nikolay Borisov wrote: > wb_stat_sum disables interrupts and calls __wb_stat_sum which eventually calls > __percpu_counter_sum. However, the percpu routine is already irq-safe. > Simplify > the code a bit by making wb_stat_sum directly call percpu_counter_sum_positive > and not disable interrupts. Also remove the now-uneeded __wb_stat_sum which > was > just a wrapper over percpu_counter_sum_positive > > Signed-off-by: Nikolay Borisov <[email protected]> > --- > include/linux/backing-dev.h | 15 +-------------- > 1 file changed, 1 insertion(+), 14 deletions(-) > > diff --git a/include/linux/backing-dev.h b/include/linux/backing-dev.h > index e9c967b86054..854e1bdd0b2a 100644 > --- a/include/linux/backing-dev.h > +++ b/include/linux/backing-dev.h > @@ -84,22 +84,9 @@ static inline s64 wb_stat(struct bdi_writeback *wb, enum > wb_stat_item item) > return percpu_counter_read_positive(&wb->stat[item]); > } > > -static inline s64 __wb_stat_sum(struct bdi_writeback *wb, > - enum wb_stat_item item) > -{ > - return percpu_counter_sum_positive(&wb->stat[item]); > -} > - > static inline s64 wb_stat_sum(struct bdi_writeback *wb, enum wb_stat_item > item) > { > - s64 sum; > - unsigned long flags; > - > - local_irq_save(flags); > - sum = __wb_stat_sum(wb, item); > - local_irq_restore(flags); > - > - return sum; > + return percpu_counter_sum_positive(&wb->stat[item]); > } > > extern void wb_writeout_inc(struct bdi_writeback *wb); >

