Re: [PATCH] ext4: change the type of ext4 cache stats to percpu_counter to improve performance

From: Shaokun Zhang
Date: Mon Aug 26 2019 - 04:24:34 EST

Hi Ted,

On 2019/8/26 8:47, Theodore Y. Ts'o wrote:
> On Sun, Aug 25, 2019 at 10:28:03AM -0700, Eric Biggers wrote:
>> This patch is causing the following. Probably because there's no calls to
>> percpu_counter_destroy() for the new counters?
> Yeah, I noticed this from my test runs last night as well. It looks
> like original patch was never tested with CONFIG_HOTPLUG_CPU.

Sorry that We may miss it completely, we shall double check it and
make the proper patch carefully.

> The other problem with this patch is that it initializes
> es_stats_cache_hits and es_stats_cache_miesses too late. They will
> get used when the journal inode is loaded. This is mostly harmless,

I have checked it again, @es_stats_cache_hits and @es_stats_cache_miesses
have been initialized before the journal inode is loaded, Maybe I miss
something else?

egrep "ext4_es_register_shrinker|ext4_load_journal" fs/ext4/super.c
4260: if (ext4_es_register_shrinker(sbi))
4302: err = ext4_load_journal(sb, es, journal_devnum);


> but it's also wrong.
> I've dropped this patch from the ext4 git tree.
> - Ted
> .