Re: [next:master 114/486] fs/proc/task_mmu.c:1120:31: error: 'pagemap_hugetlb' undeclared

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 31 Mar 2014 09:39:37 -0400 Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx> wrote:

> On Mon, Mar 31, 2014 at 05:08:49PM +0800, kbuild test robot wrote:
> > tree:   git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> > head:   8a896813a328f23aeee5f56d3139361534796636
> > commit: 64aa967f459ba0bb91ea8b127c9bd586db1beabc [114/486] pagemap: redefine callback functions for page table walker
> > config: x86_64-randconfig-br2-03311043 (attached as .config)
> > 
> > Note: the next/master HEAD 8a896813a328f23aeee5f56d3139361534796636 builds fine.
> >       It only hurts bisectibility.
> > 
> > All error/warnings:
> > 
> >    fs/proc/task_mmu.c: In function 'pagemap_read':
> > >> fs/proc/task_mmu.c:1120:31: error: 'pagemap_hugetlb' undeclared (first use in this function)
> >      pagemap_walk.hugetlb_entry = pagemap_hugetlb;
> >                                   ^
> >    fs/proc/task_mmu.c:1120:31: note: each undeclared identifier is reported only once for each function it appears in
> >    fs/proc/task_mmu.c: At top level:
> >    fs/proc/task_mmu.c:1025:12: warning: 'pagemap_hugetlb_range' defined but not used [-Wunused-function]
> >     static int pagemap_hugetlb_range(pte_t *pte, unsigned long hmask,
> >                ^
> 
> pagemap_hugetlb_range() should be renamed to pagemap_hugetlb() at 64aa967f459b
> ("pagemap: redefine callback functions for page table walker"), while it is
> currently done by dc86a8715d79 ("pagewalk: remove argument hmask from
> hugetlb_entry()") afterward like below:
> 
> @@ -1022,8 +1022,7 @@ static void huge_pte_to_pagemap_entry(pagemap_entry_t *pme, struct pagemapread *
>  }
>  
>  /* This function walks within one hugetlb entry in the single call */
> -static int pagemap_hugetlb_range(pte_t *pte, unsigned long hmask,
> -				 unsigned long addr, unsigned long end,
> +static int pagemap_hugetlb(pte_t *pte, unsigned long addr, unsigned long end,
>  				 struct mm_walk *walk)
>  {
>  	struct pagemapread *pm = walk->private;
> 
> Obviously, dc86a8715d79 should only remove hmask.
> Sorry for my poor patch separation.

It gets messy.  I tried this
pagemap-redefine-callback-functions-for-page-table-walker-fix.patch:


--- a/fs/proc/task_mmu.c~pagemap-redefine-callback-functions-for-page-table-walker-fix
+++ a/fs/proc/task_mmu.c
@@ -1022,15 +1022,15 @@ static void huge_pte_to_pagemap_entry(pa
 }
 
 /* This function walks within one hugetlb entry in the single call */
-static int pagemap_hugetlb_range(pte_t *pte, unsigned long hmask,
-				 unsigned long addr, unsigned long end,
-				 struct mm_walk *walk)
+static int pagemap_hugetlb(pte_t *pte, unsigned long addr, unsigned long end,
+			   struct mm_walk *walk)
 {
 	struct pagemapread *pm = walk->private;
 	struct vm_area_struct *vma = walk->vma;
 	int err = 0;
 	int flags2;
 	pagemap_entry_t pme;
+	unsigned long hmask;
 
 	WARN_ON_ONCE(!vma);
 

and got 

fs/proc/task_mmu.c: In function 'pagemap_read':
fs/proc/task_mmu.c:1120: warning: assignment from incompatible pointer type

from

#ifdef CONFIG_HUGETLB_PAGE
        pagemap_walk.hugetlb_entry = pagemap_hugetlb;
#endif

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]