Re: [PATCH v1 39/46] powerpc/8xx: Add a function to early map kernel via huge pages

From: Christophe Leroy
Date: Thu Apr 02 2020 - 06:13:31 EST




Le 17/03/2020 à 15:43, Christophe Leroy a écrit :


Le 17/03/2020 à 02:39, kbuild test robot a écrit :
Hi Christophe,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on next-20200316]
[cannot apply to powerpc/next v5.6-rc6 v5.6-rc5 v5.6-rc4 v5.6-rc6]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url: https://github.com/0day-ci/linux/commits/Christophe-Leroy/Use-hugepages-to-map-kernel-mem-on-8xx/20200317-065610
base:    8548fd2f20ed19b0e8c0585b71fdfde1ae00ae3c
config: powerpc-tqm8xx_defconfig (attached as .config)
compiler: powerpc-linux-gcc (GCC) 9.2.0
reproduce:
         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
         chmod +x ~/bin/make.cross
         # save the attached .config to linux build tree
         GCC_VERSION=9.2.0 make.cross ARCH=powerpc

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

    In file included from arch/powerpc/mm/fault.c:33:
    include/linux/hugetlb.h: In function 'hstate_inode':
include/linux/hugetlb.h:522:9: error: implicit declaration of function 'HUGETLBFS_SB'; did you mean 'HUGETLBFS_MAGIC'? [-Werror=implicit-function-declaration]
      522 |  return HUGETLBFS_SB(i->i_sb)->hstate;
          |         ^~~~~~~~~~~~
          |         HUGETLBFS_MAGIC
include/linux/hugetlb.h:522:30: error: invalid type argument of '->' (have 'int')
      522 |  return HUGETLBFS_SB(i->i_sb)->hstate;
          |                              ^~
    cc1: all warnings being treated as errors

hstate_inode() shouldn't use HUGETLBFS_SB() which CONFIG_HUGETLBFS is not set.

Proposed fix at https://patchwork.ozlabs.org/patch/1256108/

The fix is going in 5.7 via mm tree it seems, see https://patchwork.kernel.org/patch/11470105/

Christophe


[...]


include/linux/hugetlb.h:522:30: error: invalid type argument of '->' (have 'int')
      522 |  return HUGETLBFS_SB(i->i_sb)->hstate;
          |                              ^~
    At top level:
    arch/powerpc//mm/nohash/8xx.c:73:18: error: '__early_map_kernel_hugepage' defined but not used [-Werror=unused-function]
       73 | static int __ref __early_map_kernel_hugepage(unsigned long va, phys_addr_t pa,
          |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
    cc1: all warnings being treated as errors

This patch is a preparation patch. The function is not used yet, that's normal. Ok, it breaks bisectability. Should it be squashed with the first user of the function ?

Christophe