All of lore.kernel.org
 help / color / mirror / Atom feed
* mm/hugetlb.c:4979:10: error: implicit declaration of function 'pmd_page'; did you mean 'pud_page'?
@ 2020-02-15  5:20 ` kbuild test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kbuild test robot @ 2020-02-15  5:20 UTC (permalink / raw)
  To: Nick Hu; +Cc: kbuild-all, linux-kernel, Palmer Dabbelt

[-- Attachment #1: Type: text/plain, Size: 12198 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2019fc96af228b412bdb2e8e0ad4b1fc12046a51
commit: 8ad8b72721d0f07fa02dbe71f901743f9c71c8e6 riscv: Add KASAN support
date:   3 weeks ago
config: riscv-randconfig-a001-20200214 (attached as .config)
compiler: riscv64-linux-gcc (GCC) 7.5.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 8ad8b72721d0f07fa02dbe71f901743f9c71c8e6
        # save the attached .config to linux build tree
        GCC_VERSION=7.5.0 make.cross ARCH=riscv 

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

All errors (new ones prefixed by >>):

           ^
   mm/hugetlb.c: In function 'huge_pmd_share':
   mm/hugetlb.c:4786:19: error: implicit declaration of function 'pmd_alloc'; did you mean '__pmd_alloc'? [-Werror=implicit-function-declaration]
      return (pte_t *)pmd_alloc(mm, pud, addr);
                      ^~~~~~~~~
                      __pmd_alloc
   mm/hugetlb.c:4786:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
      return (pte_t *)pmd_alloc(mm, pud, addr);
             ^
   mm/hugetlb.c:4809:3: error: implicit declaration of function 'pud_populate'; did you mean 'pgd_populate'? [-Werror=implicit-function-declaration]
      pud_populate(mm, pud,
      ^~~~~~~~~~~~
      pgd_populate
   mm/hugetlb.c:4817:8: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
     pte = (pte_t *)pmd_alloc(mm, pud, addr);
           ^
   mm/hugetlb.c: In function 'huge_pmd_unshare':
   mm/hugetlb.c:4836:15: error: implicit declaration of function 'pgd_offset'; did you mean 'pmd_offset'? [-Werror=implicit-function-declaration]
     pgd_t *pgd = pgd_offset(mm, *addr);
                  ^~~~~~~~~~
                  pmd_offset
   mm/hugetlb.c:4836:15: warning: initialization makes pointer from integer without a cast [-Wint-conversion]
   In file included from include/linux/cache.h:5:0,
                    from include/linux/printk.h:9,
                    from include/linux/kernel.h:15,
                    from include/linux/list.h:9,
                    from mm/hugetlb.c:6:
   mm/hugetlb.c:4847:36: error: 'PTRS_PER_PTE' undeclared (first use in this function); did you mean 'PTRS_PER_P4D'?
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
                                       ^
   include/uapi/linux/kernel.h:11:47: note: in definition of macro '__ALIGN_KERNEL_MASK'
    #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask))
                                                  ^~~~
   include/linux/kernel.h:33:22: note: in expansion of macro '__ALIGN_KERNEL'
    #define ALIGN(x, a)  __ALIGN_KERNEL((x), (a))
                         ^~~~~~~~~~~~~~
   mm/hugetlb.c:4847:10: note: in expansion of macro 'ALIGN'
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
             ^~~~~
   mm/hugetlb.c:4847:36: note: each undeclared identifier is reported only once for each function it appears in
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
                                       ^
   include/uapi/linux/kernel.h:11:47: note: in definition of macro '__ALIGN_KERNEL_MASK'
    #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask))
                                                  ^~~~
   include/linux/kernel.h:33:22: note: in expansion of macro '__ALIGN_KERNEL'
    #define ALIGN(x, a)  __ALIGN_KERNEL((x), (a))
                         ^~~~~~~~~~~~~~
   mm/hugetlb.c:4847:10: note: in expansion of macro 'ALIGN'
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
             ^~~~~
   mm/hugetlb.c: In function 'huge_pte_alloc':
   mm/hugetlb.c:4878:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     pgd = pgd_offset(mm, addr);
         ^
   mm/hugetlb.c:4879:8: error: implicit declaration of function 'p4d_alloc'; did you mean '__p4d_alloc'? [-Werror=implicit-function-declaration]
     p4d = p4d_alloc(mm, pgd, addr);
           ^~~~~~~~~
           __p4d_alloc
   mm/hugetlb.c:4879:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     p4d = p4d_alloc(mm, pgd, addr);
         ^
   mm/hugetlb.c:4882:8: error: implicit declaration of function 'pud_alloc'; did you mean '__pud_alloc'? [-Werror=implicit-function-declaration]
     pud = pud_alloc(mm, p4d, addr);
           ^~~~~~~~~
           __pud_alloc
   mm/hugetlb.c:4882:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     pud = pud_alloc(mm, p4d, addr);
         ^
   mm/hugetlb.c:4891:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
        pte = (pte_t *)pmd_alloc(mm, pud, addr);
              ^
   In file included from include/linux/kernel.h:11:0,
                    from include/linux/list.h:9,
                    from mm/hugetlb.c:6:
   mm/hugetlb.c:4894:38: error: implicit declaration of function 'pte_huge'; did you mean 'pud_huge'? [-Werror=implicit-function-declaration]
     BUG_ON(pte && pte_present(*pte) && !pte_huge(*pte));
                                         ^
   include/linux/compiler.h:33:34: note: in definition of macro '__branch_check__'
       ______r = __builtin_expect(!!(x), expect); \
                                     ^
   include/asm-generic/bug.h:62:36: note: in expansion of macro 'unlikely'
    #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0)
                                       ^~~~~~~~
   mm/hugetlb.c:4894:2: note: in expansion of macro 'BUG_ON'
     BUG_ON(pte && pte_present(*pte) && !pte_huge(*pte));
     ^~~~~~
   mm/hugetlb.c: In function 'huge_pte_offset':
   mm/hugetlb.c:4916:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     pgd = pgd_offset(mm, addr);
         ^
   mm/hugetlb.c:4931:24: error: implicit declaration of function 'pmd_none'; did you mean 'pud_none'? [-Werror=implicit-function-declaration]
     if (sz != PMD_SIZE && pmd_none(*pmd))
                           ^~~~~~~~
                           pud_none
   mm/hugetlb.c:4934:25: error: implicit declaration of function 'pmd_present'; did you mean 'pud_present'? [-Werror=implicit-function-declaration]
     if (pmd_huge(*pmd) || !pmd_present(*pmd))
                            ^~~~~~~~~~~
                            pud_present
   mm/hugetlb.c: In function 'follow_huge_pmd':
>> mm/hugetlb.c:4979:10: error: implicit declaration of function 'pmd_page'; did you mean 'pud_page'? [-Werror=implicit-function-declaration]
      page = pmd_page(*pmd) + ((address & ~PMD_MASK) >> PAGE_SHIFT);
             ^~~~~~~~
             pud_page
   mm/hugetlb.c:4979:8: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
      page = pmd_page(*pmd) + ((address & ~PMD_MASK) >> PAGE_SHIFT);
           ^
   mm/hugetlb.c:4985:4: error: implicit declaration of function '__migration_entry_wait'; did you mean '__list_del_entry_valid'? [-Werror=implicit-function-declaration]
       __migration_entry_wait(mm, (pte_t *)pmd, ptl);
       ^~~~~~~~~~~~~~~~~~~~~~
       __list_del_entry_valid
   mm/hugetlb.c: In function 'follow_huge_pud':
   mm/hugetlb.c:5005:33: warning: return makes pointer from integer without a cast [-Wint-conversion]
     return pte_page(*(pte_t *)pud) + ((address & ~PUD_MASK) >> PAGE_SHIFT);
            ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   mm/hugetlb.c: In function 'follow_huge_pgd':
   mm/hugetlb.c:5014:33: warning: return makes pointer from integer without a cast [-Wint-conversion]
     return pte_page(*(pte_t *)pgd) + ((address & ~PGDIR_MASK) >> PAGE_SHIFT);
            ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/riscv/include/asm/hugetlb.h:5:0,
                    from include/linux/hugetlb.h:536,
                    from mm/hugetlb.c:37:
   include/asm-generic/hugetlb.h: In function 'huge_ptep_get_and_clear':
   include/asm-generic/hugetlb.h:65:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'huge_pte_mkwrite':
   include/asm-generic/hugetlb.h:23:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'mk_huge_pte':
   include/asm-generic/hugetlb.h:8:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'huge_pte_wrprotect':
   include/asm-generic/hugetlb.h:87:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'huge_pte_mkdirty':
   include/asm-generic/hugetlb.h:28:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   cc1: some warnings being treated as errors

vim +4979 mm/hugetlb.c

4dc71451a2078ef Aneesh Kumar K.V 2017-07-06  4960  
61f77eda9bbf0d2 Naoya Horiguchi  2015-02-11  4961  struct page * __weak
9e5fc74c3025056 Steve Capper     2013-04-30  4962  follow_huge_pmd(struct mm_struct *mm, unsigned long address,
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4963  		pmd_t *pmd, int flags)
9e5fc74c3025056 Steve Capper     2013-04-30  4964  {
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4965  	struct page *page = NULL;
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4966  	spinlock_t *ptl;
c9d398fa237882e Naoya Horiguchi  2017-03-31  4967  	pte_t pte;
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4968  retry:
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4969  	ptl = pmd_lockptr(mm, pmd);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4970  	spin_lock(ptl);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4971  	/*
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4972  	 * make sure that the address range covered by this pmd is not
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4973  	 * unmapped from other threads.
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4974  	 */
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4975  	if (!pmd_huge(*pmd))
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4976  		goto out;
c9d398fa237882e Naoya Horiguchi  2017-03-31  4977  	pte = huge_ptep_get((pte_t *)pmd);
c9d398fa237882e Naoya Horiguchi  2017-03-31  4978  	if (pte_present(pte)) {
97534127012f0e3 Gerald Schaefer  2015-04-14 @4979  		page = pmd_page(*pmd) + ((address & ~PMD_MASK) >> PAGE_SHIFT);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4980  		if (flags & FOLL_GET)
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4981  			get_page(page);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4982  	} else {
c9d398fa237882e Naoya Horiguchi  2017-03-31  4983  		if (is_hugetlb_entry_migration(pte)) {
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4984  			spin_unlock(ptl);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4985  			__migration_entry_wait(mm, (pte_t *)pmd, ptl);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4986  			goto retry;
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4987  		}
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4988  		/*
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4989  		 * hwpoisoned entry is treated as no_page_table in
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4990  		 * follow_page_mask().
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4991  		 */
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4992  	}
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4993  out:
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4994  	spin_unlock(ptl);
9e5fc74c3025056 Steve Capper     2013-04-30  4995  	return page;
9e5fc74c3025056 Steve Capper     2013-04-30  4996  }
9e5fc74c3025056 Steve Capper     2013-04-30  4997  

:::::: The code at line 4979 was first introduced by commit
:::::: 97534127012f0e396eddea4691f4c9b170aed74b mm/hugetlb: use pmd_page() in follow_huge_pmd()

:::::: TO: Gerald Schaefer <gerald.schaefer@de.ibm.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 27008 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* mm/hugetlb.c:4979:10: error: implicit declaration of function 'pmd_page'; did you mean 'pud_page'?
@ 2020-02-15  5:20 ` kbuild test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kbuild test robot @ 2020-02-15  5:20 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 12412 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2019fc96af228b412bdb2e8e0ad4b1fc12046a51
commit: 8ad8b72721d0f07fa02dbe71f901743f9c71c8e6 riscv: Add KASAN support
date:   3 weeks ago
config: riscv-randconfig-a001-20200214 (attached as .config)
compiler: riscv64-linux-gcc (GCC) 7.5.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 8ad8b72721d0f07fa02dbe71f901743f9c71c8e6
        # save the attached .config to linux build tree
        GCC_VERSION=7.5.0 make.cross ARCH=riscv 

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

All errors (new ones prefixed by >>):

           ^
   mm/hugetlb.c: In function 'huge_pmd_share':
   mm/hugetlb.c:4786:19: error: implicit declaration of function 'pmd_alloc'; did you mean '__pmd_alloc'? [-Werror=implicit-function-declaration]
      return (pte_t *)pmd_alloc(mm, pud, addr);
                      ^~~~~~~~~
                      __pmd_alloc
   mm/hugetlb.c:4786:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
      return (pte_t *)pmd_alloc(mm, pud, addr);
             ^
   mm/hugetlb.c:4809:3: error: implicit declaration of function 'pud_populate'; did you mean 'pgd_populate'? [-Werror=implicit-function-declaration]
      pud_populate(mm, pud,
      ^~~~~~~~~~~~
      pgd_populate
   mm/hugetlb.c:4817:8: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
     pte = (pte_t *)pmd_alloc(mm, pud, addr);
           ^
   mm/hugetlb.c: In function 'huge_pmd_unshare':
   mm/hugetlb.c:4836:15: error: implicit declaration of function 'pgd_offset'; did you mean 'pmd_offset'? [-Werror=implicit-function-declaration]
     pgd_t *pgd = pgd_offset(mm, *addr);
                  ^~~~~~~~~~
                  pmd_offset
   mm/hugetlb.c:4836:15: warning: initialization makes pointer from integer without a cast [-Wint-conversion]
   In file included from include/linux/cache.h:5:0,
                    from include/linux/printk.h:9,
                    from include/linux/kernel.h:15,
                    from include/linux/list.h:9,
                    from mm/hugetlb.c:6:
   mm/hugetlb.c:4847:36: error: 'PTRS_PER_PTE' undeclared (first use in this function); did you mean 'PTRS_PER_P4D'?
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
                                       ^
   include/uapi/linux/kernel.h:11:47: note: in definition of macro '__ALIGN_KERNEL_MASK'
    #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask))
                                                  ^~~~
   include/linux/kernel.h:33:22: note: in expansion of macro '__ALIGN_KERNEL'
    #define ALIGN(x, a)  __ALIGN_KERNEL((x), (a))
                         ^~~~~~~~~~~~~~
   mm/hugetlb.c:4847:10: note: in expansion of macro 'ALIGN'
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
             ^~~~~
   mm/hugetlb.c:4847:36: note: each undeclared identifier is reported only once for each function it appears in
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
                                       ^
   include/uapi/linux/kernel.h:11:47: note: in definition of macro '__ALIGN_KERNEL_MASK'
    #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask))
                                                  ^~~~
   include/linux/kernel.h:33:22: note: in expansion of macro '__ALIGN_KERNEL'
    #define ALIGN(x, a)  __ALIGN_KERNEL((x), (a))
                         ^~~~~~~~~~~~~~
   mm/hugetlb.c:4847:10: note: in expansion of macro 'ALIGN'
     *addr = ALIGN(*addr, HPAGE_SIZE * PTRS_PER_PTE) - HPAGE_SIZE;
             ^~~~~
   mm/hugetlb.c: In function 'huge_pte_alloc':
   mm/hugetlb.c:4878:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     pgd = pgd_offset(mm, addr);
         ^
   mm/hugetlb.c:4879:8: error: implicit declaration of function 'p4d_alloc'; did you mean '__p4d_alloc'? [-Werror=implicit-function-declaration]
     p4d = p4d_alloc(mm, pgd, addr);
           ^~~~~~~~~
           __p4d_alloc
   mm/hugetlb.c:4879:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     p4d = p4d_alloc(mm, pgd, addr);
         ^
   mm/hugetlb.c:4882:8: error: implicit declaration of function 'pud_alloc'; did you mean '__pud_alloc'? [-Werror=implicit-function-declaration]
     pud = pud_alloc(mm, p4d, addr);
           ^~~~~~~~~
           __pud_alloc
   mm/hugetlb.c:4882:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     pud = pud_alloc(mm, p4d, addr);
         ^
   mm/hugetlb.c:4891:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
        pte = (pte_t *)pmd_alloc(mm, pud, addr);
              ^
   In file included from include/linux/kernel.h:11:0,
                    from include/linux/list.h:9,
                    from mm/hugetlb.c:6:
   mm/hugetlb.c:4894:38: error: implicit declaration of function 'pte_huge'; did you mean 'pud_huge'? [-Werror=implicit-function-declaration]
     BUG_ON(pte && pte_present(*pte) && !pte_huge(*pte));
                                         ^
   include/linux/compiler.h:33:34: note: in definition of macro '__branch_check__'
       ______r = __builtin_expect(!!(x), expect); \
                                     ^
   include/asm-generic/bug.h:62:36: note: in expansion of macro 'unlikely'
    #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0)
                                       ^~~~~~~~
   mm/hugetlb.c:4894:2: note: in expansion of macro 'BUG_ON'
     BUG_ON(pte && pte_present(*pte) && !pte_huge(*pte));
     ^~~~~~
   mm/hugetlb.c: In function 'huge_pte_offset':
   mm/hugetlb.c:4916:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     pgd = pgd_offset(mm, addr);
         ^
   mm/hugetlb.c:4931:24: error: implicit declaration of function 'pmd_none'; did you mean 'pud_none'? [-Werror=implicit-function-declaration]
     if (sz != PMD_SIZE && pmd_none(*pmd))
                           ^~~~~~~~
                           pud_none
   mm/hugetlb.c:4934:25: error: implicit declaration of function 'pmd_present'; did you mean 'pud_present'? [-Werror=implicit-function-declaration]
     if (pmd_huge(*pmd) || !pmd_present(*pmd))
                            ^~~~~~~~~~~
                            pud_present
   mm/hugetlb.c: In function 'follow_huge_pmd':
>> mm/hugetlb.c:4979:10: error: implicit declaration of function 'pmd_page'; did you mean 'pud_page'? [-Werror=implicit-function-declaration]
      page = pmd_page(*pmd) + ((address & ~PMD_MASK) >> PAGE_SHIFT);
             ^~~~~~~~
             pud_page
   mm/hugetlb.c:4979:8: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
      page = pmd_page(*pmd) + ((address & ~PMD_MASK) >> PAGE_SHIFT);
           ^
   mm/hugetlb.c:4985:4: error: implicit declaration of function '__migration_entry_wait'; did you mean '__list_del_entry_valid'? [-Werror=implicit-function-declaration]
       __migration_entry_wait(mm, (pte_t *)pmd, ptl);
       ^~~~~~~~~~~~~~~~~~~~~~
       __list_del_entry_valid
   mm/hugetlb.c: In function 'follow_huge_pud':
   mm/hugetlb.c:5005:33: warning: return makes pointer from integer without a cast [-Wint-conversion]
     return pte_page(*(pte_t *)pud) + ((address & ~PUD_MASK) >> PAGE_SHIFT);
            ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   mm/hugetlb.c: In function 'follow_huge_pgd':
   mm/hugetlb.c:5014:33: warning: return makes pointer from integer without a cast [-Wint-conversion]
     return pte_page(*(pte_t *)pgd) + ((address & ~PGDIR_MASK) >> PAGE_SHIFT);
            ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/riscv/include/asm/hugetlb.h:5:0,
                    from include/linux/hugetlb.h:536,
                    from mm/hugetlb.c:37:
   include/asm-generic/hugetlb.h: In function 'huge_ptep_get_and_clear':
   include/asm-generic/hugetlb.h:65:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'huge_pte_mkwrite':
   include/asm-generic/hugetlb.h:23:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'mk_huge_pte':
   include/asm-generic/hugetlb.h:8:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'huge_pte_wrprotect':
   include/asm-generic/hugetlb.h:87:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   include/asm-generic/hugetlb.h: In function 'huge_pte_mkdirty':
   include/asm-generic/hugetlb.h:28:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   cc1: some warnings being treated as errors

vim +4979 mm/hugetlb.c

4dc71451a2078ef Aneesh Kumar K.V 2017-07-06  4960  
61f77eda9bbf0d2 Naoya Horiguchi  2015-02-11  4961  struct page * __weak
9e5fc74c3025056 Steve Capper     2013-04-30  4962  follow_huge_pmd(struct mm_struct *mm, unsigned long address,
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4963  		pmd_t *pmd, int flags)
9e5fc74c3025056 Steve Capper     2013-04-30  4964  {
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4965  	struct page *page = NULL;
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4966  	spinlock_t *ptl;
c9d398fa237882e Naoya Horiguchi  2017-03-31  4967  	pte_t pte;
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4968  retry:
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4969  	ptl = pmd_lockptr(mm, pmd);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4970  	spin_lock(ptl);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4971  	/*
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4972  	 * make sure that the address range covered by this pmd is not
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4973  	 * unmapped from other threads.
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4974  	 */
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4975  	if (!pmd_huge(*pmd))
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4976  		goto out;
c9d398fa237882e Naoya Horiguchi  2017-03-31  4977  	pte = huge_ptep_get((pte_t *)pmd);
c9d398fa237882e Naoya Horiguchi  2017-03-31  4978  	if (pte_present(pte)) {
97534127012f0e3 Gerald Schaefer  2015-04-14 @4979  		page = pmd_page(*pmd) + ((address & ~PMD_MASK) >> PAGE_SHIFT);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4980  		if (flags & FOLL_GET)
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4981  			get_page(page);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4982  	} else {
c9d398fa237882e Naoya Horiguchi  2017-03-31  4983  		if (is_hugetlb_entry_migration(pte)) {
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4984  			spin_unlock(ptl);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4985  			__migration_entry_wait(mm, (pte_t *)pmd, ptl);
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4986  			goto retry;
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4987  		}
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4988  		/*
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4989  		 * hwpoisoned entry is treated as no_page_table in
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4990  		 * follow_page_mask().
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4991  		 */
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4992  	}
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4993  out:
e66f17ff71772b2 Naoya Horiguchi  2015-02-11  4994  	spin_unlock(ptl);
9e5fc74c3025056 Steve Capper     2013-04-30  4995  	return page;
9e5fc74c3025056 Steve Capper     2013-04-30  4996  }
9e5fc74c3025056 Steve Capper     2013-04-30  4997  

:::::: The code at line 4979 was first introduced by commit
:::::: 97534127012f0e396eddea4691f4c9b170aed74b mm/hugetlb: use pmd_page() in follow_huge_pmd()

:::::: TO: Gerald Schaefer <gerald.schaefer@de.ibm.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 27008 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-02-15  5:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-15  5:20 mm/hugetlb.c:4979:10: error: implicit declaration of function 'pmd_page'; did you mean 'pud_page'? kbuild test robot
2020-02-15  5:20 ` kbuild test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.