lkml.org 
[lkml]   [2022]   [May]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v4 09/11] mm: memcontrol: use obj_cgroup APIs to charge the LRU pages
Hi Muchun,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on 4b0986a3613c92f4ec1bdc7f60ec66fea135991f]

url: https://github.com/intel-lab-lkp/linux/commits/Muchun-Song/Use-obj_cgroup-APIs-to-charge-the-LRU-pages/20220524-143056
base: 4b0986a3613c92f4ec1bdc7f60ec66fea135991f
config: arm64-buildonly-randconfig-r005-20220524 (https://download.01.org/0day-ci/archive/20220525/202205250202.1JanYiVZ-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 10c9ecce9f6096e18222a331c5e7d085bd813f75)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://github.com/intel-lab-lkp/linux/commit/bec0ae12106e0cf12dd4e0e21eb0754b99be0ba2
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Muchun-Song/Use-obj_cgroup-APIs-to-charge-the-LRU-pages/20220524-143056
git checkout bec0ae12106e0cf12dd4e0e21eb0754b99be0ba2
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

>> mm/memcontrol.c:6826:10: error: call to undeclared function '__get_obj_cgroup_from_memcg'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
objcg = __get_obj_cgroup_from_memcg(memcg);
^
>> mm/memcontrol.c:6826:8: warning: incompatible integer to pointer conversion assigning to 'struct obj_cgroup *' from 'int' [-Wint-conversion]
objcg = __get_obj_cgroup_from_memcg(memcg);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning and 1 error generated.


vim +/__get_obj_cgroup_from_memcg +6826 mm/memcontrol.c

6818
6819 static int charge_memcg(struct folio *folio, struct mem_cgroup *memcg,
6820 gfp_t gfp)
6821 {
6822 struct obj_cgroup *objcg;
6823 long nr_pages = folio_nr_pages(folio);
6824 int ret = 0;
6825
> 6826 objcg = __get_obj_cgroup_from_memcg(memcg);
6827 /* Do not account at the root objcg level. */
6828 if (!obj_cgroup_is_root(objcg))
6829 ret = try_charge(memcg, gfp, nr_pages);
6830 if (ret)
6831 goto out;
6832
6833 obj_cgroup_get(objcg);
6834 commit_charge(folio, objcg);
6835
6836 local_irq_disable();
6837 mem_cgroup_charge_statistics(memcg, nr_pages);
6838 memcg_check_events(memcg, folio_nid(folio));
6839 local_irq_enable();
6840 out:
6841 obj_cgroup_put(objcg);
6842 return ret;
6843 }
6844

--
0-DAY CI Kernel Test Service
https://01.org/lkp

\
 
 \ /
  Last update: 2022-05-24 20:18    [W:1.239 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site