Conflicts:
        mm/huge_memory.c
---
 mm/huge_memory.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index 55ec681..2e6f106 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -701,7 +701,8 @@ static inline pmd_t mk_huge_pmd(struct page *page, struct 
vm_area_struct *vma)
 
 static int __do_huge_pmd_anonymous_page(struct mm_struct *mm,
                                        struct vm_area_struct *vma,
-                                       unsigned long haddr, pmd_t *pmd,
+                                       unsigned long haddr,
+                                       unsigned long address, pmd_t *pmd,
                                        struct page *page)
 {
        pgtable_t pgtable;
@@ -711,12 +712,12 @@ static int __do_huge_pmd_anonymous_page(struct mm_struct 
*mm,
        if (unlikely(!pgtable))
                return VM_FAULT_OOM;
 
-       clear_huge_page(page, haddr, HPAGE_PMD_NR);
        /*
         * The memory barrier inside __SetPageUptodate makes sure that
         * clear_huge_page writes become visible before the set_pmd_at()
         * write.
         */
+       clear_huge_page(page, address, HPAGE_PMD_NR);
        __SetPageUptodate(page);
 
        spin_lock(&mm->page_table_lock);
@@ -825,8 +826,8 @@ int do_huge_pmd_anonymous_page(struct mm_struct *mm, struct 
vm_area_struct *vma,
                        put_page(page);
                        goto out;
                }
-               if (unlikely(__do_huge_pmd_anonymous_page(mm, vma, haddr, pmd,
-                                                         page))) {
+               if (unlikely(__do_huge_pmd_anonymous_page(mm, vma, haddr,
+                                               address, pmd, page))) {
                        mem_cgroup_uncharge_page(page);
                        put_page(page);
                        goto out;
-- 
1.7.12.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to