Re: [PATCH] mm/vmstat: don't do count if no needs

From: Andrew Morton
Date: Mon Jul 20 2020 - 19:14:21 EST


On Mon, 20 Jul 2020 13:42:45 +0800 Alex Shi <alex.shi@xxxxxxxxxxxxxxxxx> wrote:

>
> For couple of vmstat account funcs, the caller usually doesn't check the
> delta value, if delta == 0, irq or atomic operator is a waste. That's
> better to be skipped, also add unlikey() since !delta is less happened.
>
> ...
>
> --- a/mm/vmstat.c
> +++ b/mm/vmstat.c
> @@ -321,6 +321,9 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item,
> long x;
> long t;
>
> + if (unlikely(!delta))
> + return;
> +

Do we know that delta==0 is frequent enough to make the change a net
benefit?