Re: [PATCH v3 3/7] mm: Add PG_arch_3 page flag
From: Catalin Marinas <catalin.marinas@arm.com>
Date: 2022-09-05 18:47:41
Also in:
kvm, kvmarm, oe-kbuild-all
On Thu, Sep 01, 2022 at 06:59:23PM +0100, Catalin Marinas wrote:
On Thu, Aug 11, 2022 at 03:16:08PM +0800, kernel test robot wrote:quoted
Thank you for the patch! Perhaps something to improve: [auto build test WARNING on arm64/for-next/core] [also build test WARNING on linus/master next-20220811] [cannot apply to kvmarm/next arm/for-next soc/for-next xilinx-xlnx/master v5.19] [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/Peter-Collingbourne/KVM-arm64-permit-MAP_SHARED-mappings-with-MTE-enabled/20220811-033310 base: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core config: loongarch-defconfig (https://download.01.org/0day-ci/archive/20220811/202208111500.62e0Bl2l-lkp@intel.com/config) compiler: loongarch64-linux-gcc (GCC) 12.1.0 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 # https://github.com/intel-lab-lkp/linux/commit/1a400517d8428df0ec9f86f8d303b2227ee9702f git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Peter-Collingbourne/KVM-arm64-permit-MAP_SHARED-mappings-with-MTE-enabled/20220811-033310 git checkout 1a400517d8428df0ec9f86f8d303b2227ee9702f # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <redacted> All warnings (new ones prefixed by >>):quoted
quoted
mm/memory.c:92:2: warning: #warning Unfortunate NUMA and NUMA Balancing config, growing page-frame for last_cpupid. [-Wcpp]92 | #warning Unfortunate NUMA and NUMA Balancing config, growing page-frame for last_cpupid. | ^~~~~~~ vim +92 mm/memory.c 42b7772812d15b Jan Beulich 2008-07-23 90 af27d9403f5b80 Arnd Bergmann 2018-02-16 91 #if defined(LAST_CPUPID_NOT_IN_PAGE_FLAGS) && !defined(CONFIG_COMPILE_TEST) 90572890d20252 Peter Zijlstra 2013-10-07 @92 #warning Unfortunate NUMA and NUMA Balancing config, growing page-frame for last_cpupid. 75980e97daccfc Peter Zijlstra 2013-02-22 93 #endif 75980e97daccfc Peter Zijlstra 2013-02-22 94It looks like ith CONFIG_NUMA_BALANCING=y on loongarch we run out of spare bits in page->flags to fit last_cpupid. The reason we don't see it on arm64 is that we select SPARSEMEM_VMEMMAP and SECTIONS_WIDTH becomes 0. On loongarch SECTIONS_WIDTH takes 19 bits (48 - 29) in page->flags. I think instead of always defining PG_arch_{2,3} if CONFIG_64BIT, we could add a CONFIG_ARCH_WANTS_PG_ARCH_23 option and only select it on arm64 for the time being.
I pushed a patch as the first one on the arm64 devel/mte-pg-flags branch. Also updated the last patch on this branch following Steven's comments. Peter, please let me know if you want to pick this series up together with your other KVM patches. Otherwise I can post it separately, it's worth merging it on its own as it clarifies the page flag vs tag setting ordering. -- Catalin _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel