mm,numa: fix update_mmu_cache_pmd call
authorStephen Rothwell <sfr@canb.auug.org.au>
Mon, 10 Dec 2012 08:50:57 +0000 (19:50 +1100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 18 Dec 2012 03:37:03 +0000 (19:37 -0800)
This build error is currently hidden by the fact that the x86
implementation of 'update_mmu_cache_pmd()' is a macro that doesn't use
its last argument, but commit b32967ff101a ("mm: numa: Add THP migration
for the NUMA working set scanning fault case") introduced a call with
the wrong third argument.

In the akpm tree, it causes this build error:

  mm/migrate.c: In function 'migrate_misplaced_transhuge_page_put':
  mm/migrate.c:1666:2: error: incompatible type for argument 3 of 'update_mmu_cache_pmd'
  arch/x86/include/asm/pgtable.h:792:20: note: expected 'struct pmd_t *' but argument is of type 'pmd_t'

Fix it.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/migrate.c

index 32efd80..3b676b0 100644 (file)
@@ -1734,7 +1734,7 @@ int migrate_misplaced_transhuge_page(struct mm_struct *mm,
        page_add_new_anon_rmap(new_page, vma, haddr);
 
        set_pmd_at(mm, haddr, pmd, entry);
        page_add_new_anon_rmap(new_page, vma, haddr);
 
        set_pmd_at(mm, haddr, pmd, entry);
-       update_mmu_cache_pmd(vma, address, entry);
+       update_mmu_cache_pmd(vma, address, &entry);
        page_remove_rmap(page);
        /*
         * Finish the charge transaction under the page table lock to
        page_remove_rmap(page);
        /*
         * Finish the charge transaction under the page table lock to