Re: [PATCH v3 4/4] mm: memcg: use non-unified stats flushing for userspace reads

From: Yosry Ahmed
Date: Thu Aug 31 2023 - 12:40:48 EST


On Wed, Aug 30, 2023 at 8:08 PM kernel test robot <lkp@xxxxxxxxx> wrote:
>
> Hi Yosry,
>
> kernel test robot noticed the following build warnings:
>
> [auto build test WARNING on akpm-mm/mm-everything]
> [also build test WARNING on linus/master next-20230830]
> [cannot apply to v6.5]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Yosry-Ahmed/mm-memcg-properly-name-and-document-unified-stats-flushing/20230831-015518
> base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
> patch link: https://lore.kernel.org/r/20230830175335.1536008-5-yosryahmed%40google.com
> patch subject: [PATCH v3 4/4] mm: memcg: use non-unified stats flushing for userspace reads
> config: i386-randconfig-r013-20230831 (https://download.01.org/0day-ci/archive/20230831/202308311025.538QuXBV-lkp@xxxxxxxxx/config)
> compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230831/202308311025.538QuXBV-lkp@xxxxxxxxx/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202308311025.538QuXBV-lkp@xxxxxxxxx/
>
> All warnings (new ones prefixed by >>):
>
> >> mm/memcontrol.c:667:6: warning: no previous prototype for function 'mem_cgroup_user_flush_stats' [-Wmissing-prototypes]
> void mem_cgroup_user_flush_stats(struct mem_cgroup *memcg)
> ^
> mm/memcontrol.c:667:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
> void mem_cgroup_user_flush_stats(struct mem_cgroup *memcg)
> ^
> static
> 1 warning generated.

Ah silly mistake on my end. Will send v4 after making
mem_cgroup_user_flush_stats() static.

>
>
> vim +/mem_cgroup_user_flush_stats +667 mm/memcontrol.c
>
> 658
> 659 /*
> 660 * mem_cgroup_user_flush_stats - do a stats flush for a user read
> 661 * @memcg: memory cgroup to flush
> 662 *
> 663 * Flush the subtree of @memcg. A mutex is used for userspace readers to gate
> 664 * the global rstat spinlock. This protects in-kernel flushers from userspace
> 665 * readers hogging the lock.
> 666 */
> > 667 void mem_cgroup_user_flush_stats(struct mem_cgroup *memcg)
> 668 {
> 669 mutex_lock(&stats_user_flush_mutex);
> 670 do_stats_flush(memcg);
> 671 mutex_unlock(&stats_user_flush_mutex);
> 672 }
> 673
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki