tree:
https://github.com/hnaz/linux-mm master
head: a017b085735719105714da692a82a6eeb8830718
commit: eb0f7fa78a5ced856259e759b6bad1bed2a9295c [59/194] mm: pgtable: add shortcuts for
accessing kernel PMD and PTE
config: powerpc-ep88xc_defconfig (attached as .config)
compiler: powerpc-linux-gcc (GCC) 9.3.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
git checkout eb0f7fa78a5ced856259e759b6bad1bed2a9295c
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
arch/powerpc/mm/pgtable.c: In function 'set_huge_pte_at':
> arch/powerpc/mm/pgtable.c:267:15: error: implicit declaration of
function 'pmd_ptr' [-Werror=implicit-function-declaration]
267 | pmd_t *pmd
= pmd_ptr(mm, addr);
| ^~~~~~~
> arch/powerpc/mm/pgtable.c:267:15: error: initialization of
'pmd_t *' {aka 'struct <anonymous> *'} from 'int' makes
pointer from integer without a cast [-Werror=int-conversion]
arch/powerpc/mm/pgtable.c: At top level:
arch/powerpc/mm/pgtable.c:341:8: error: no previous prototype for
'__find_linux_pte' [-Werror=missing-prototypes]
341 | pte_t *__find_linux_pte(pgd_t *pgdir, unsigned long ea,
| ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +/pmd_ptr +267 arch/powerpc/mm/pgtable.c
f159bcb25fdb31 Andrew Morton 2020-06-09 263
f159bcb25fdb31 Andrew Morton 2020-06-09 264 #if defined(CONFIG_PPC_8xx)
f159bcb25fdb31 Andrew Morton 2020-06-09 265 void set_huge_pte_at(struct mm_struct
*mm, unsigned long addr, pte_t *ptep, pte_t pte)
f159bcb25fdb31 Andrew Morton 2020-06-09 266 {
f159bcb25fdb31 Andrew Morton 2020-06-09 @267 pmd_t *pmd = pmd_ptr(mm, addr);
f159bcb25fdb31 Andrew Morton 2020-06-09 268 pte_basic_t val;
f159bcb25fdb31 Andrew Morton 2020-06-09 269 pte_basic_t *entry = &ptep->pte;
f159bcb25fdb31 Andrew Morton 2020-06-09 270 int num = is_hugepd(*((hugepd_t *)pmd))
? 1 : SZ_512K / SZ_4K;
f159bcb25fdb31 Andrew Morton 2020-06-09 271 int i;
f159bcb25fdb31 Andrew Morton 2020-06-09 272
f159bcb25fdb31 Andrew Morton 2020-06-09 273 /*
f159bcb25fdb31 Andrew Morton 2020-06-09 274 * Make sure hardware valid bit is not
set. We don't do
f159bcb25fdb31 Andrew Morton 2020-06-09 275 * tlb flush for this update.
f159bcb25fdb31 Andrew Morton 2020-06-09 276 */
f159bcb25fdb31 Andrew Morton 2020-06-09 277 VM_WARN_ON(pte_hw_valid(*ptep)
&& !pte_protnone(*ptep));
f159bcb25fdb31 Andrew Morton 2020-06-09 278
f159bcb25fdb31 Andrew Morton 2020-06-09 279 pte = pte_mkpte(pte);
f159bcb25fdb31 Andrew Morton 2020-06-09 280
f159bcb25fdb31 Andrew Morton 2020-06-09 281 pte = set_pte_filter(pte);
f159bcb25fdb31 Andrew Morton 2020-06-09 282
f159bcb25fdb31 Andrew Morton 2020-06-09 283 val = pte_val(pte);
f159bcb25fdb31 Andrew Morton 2020-06-09 284 for (i = 0; i < num; i++, entry++,
val += SZ_4K)
f159bcb25fdb31 Andrew Morton 2020-06-09 285 *entry = val;
f159bcb25fdb31 Andrew Morton 2020-06-09 286 }
f159bcb25fdb31 Andrew Morton 2020-06-09 287 #endif
f069ff396d657a Aneesh Kumar K.V 2018-05-29 288 #endif /* CONFIG_HUGETLB_PAGE */
f069ff396d657a Aneesh Kumar K.V 2018-05-29 289
:::::: The code at line 267 was first introduced by commit
:::::: f159bcb25fdb31b93da0d50db40bc34e8cdcc713 origin
:::::: TO: Andrew Morton <akpm(a)linux-foundation.org>
:::::: CC: Johannes Weiner <hannes(a)cmpxchg.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org