diff --git a/[refs] b/[refs] index 2475f89261e8..b7e1a6ee2aa1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d70aa5e4b54aa7e704c886838715ac8a45d5750f +refs/heads/master: eca351336acb2fa943611e0846562ce3997ef53b diff --git a/trunk/mm/memory.c b/trunk/mm/memory.c index 6c1eac92a316..74839b3a3999 100644 --- a/trunk/mm/memory.c +++ b/trunk/mm/memory.c @@ -1345,7 +1345,7 @@ static int do_wp_page(struct mm_struct *mm, struct vm_area_struct *vma, int reuse = can_share_swap_page(old_page); unlock_page(old_page); if (reuse) { - flush_cache_page(vma, address, pfn); + flush_cache_page(vma, address, pte_pfn(orig_pte)); entry = pte_mkyoung(orig_pte); entry = maybe_mkwrite(pte_mkdirty(entry), vma); ptep_set_access_flags(vma, address, page_table, entry, 1); @@ -1389,7 +1389,7 @@ static int do_wp_page(struct mm_struct *mm, struct vm_area_struct *vma, } } else inc_mm_counter(mm, anon_rss); - flush_cache_page(vma, address, pfn); + flush_cache_page(vma, address, pte_pfn(orig_pte)); entry = mk_pte(new_page, vma->vm_page_prot); entry = maybe_mkwrite(pte_mkdirty(entry), vma); ptep_establish(vma, address, page_table, entry); diff --git a/trunk/mm/rmap.c b/trunk/mm/rmap.c index 491ac350048f..f853c6def159 100644 --- a/trunk/mm/rmap.c +++ b/trunk/mm/rmap.c @@ -641,7 +641,7 @@ static void try_to_unmap_cluster(unsigned long cursor, continue; /* Nuke the page table entry. */ - flush_cache_page(vma, address, pfn); + flush_cache_page(vma, address, pte_pfn(*pte)); pteval = ptep_clear_flush(vma, address, pte); /* If nonlinear, store the file page offset in the pte. */