| From 4fb7c70a889ead2e91e184895ac6e5354b759135 Mon Sep 17 00:00:00 2001 |
| From: Zhang Yi <yi.zhang@huawei.com> |
| Date: Sat, 22 May 2021 18:30:45 +0800 |
| Subject: ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit |
| |
| From: Zhang Yi <yi.zhang@huawei.com> |
| |
| commit 4fb7c70a889ead2e91e184895ac6e5354b759135 upstream. |
| |
| The cache_cnt parameter of tracepoint ext4_es_shrink_exit means the |
| remaining cache count after shrink, but now it is the cache count before |
| shrink, fix it by read sbi->s_extent_cache_cnt again. |
| |
| Fixes: 1ab6c4997e04 ("fs: convert fs shrinkers to new scan/count API") |
| Cc: stable@vger.kernel.org # 3.12+ |
| Signed-off-by: Zhang Yi <yi.zhang@huawei.com> |
| Reviewed-by: Jan Kara <jack@suse.cz> |
| Link: https://lore.kernel.org/r/20210522103045.690103-3-yi.zhang@huawei.com |
| Signed-off-by: Theodore Ts'o <tytso@mit.edu> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| fs/ext4/extents_status.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/fs/ext4/extents_status.c |
| +++ b/fs/ext4/extents_status.c |
| @@ -1579,6 +1579,7 @@ static unsigned long ext4_es_scan(struct |
| |
| nr_shrunk = __es_shrink(sbi, nr_to_scan, NULL); |
| |
| + ret = percpu_counter_read_positive(&sbi->s_es_stats.es_stats_shk_cnt); |
| trace_ext4_es_shrink_scan_exit(sbi->s_sb, nr_shrunk, ret); |
| return nr_shrunk; |
| } |