| Submitter | Aneesh Kumar K.V |
|---|---|
| Date | March 6, 2013, 6:10 a.m. |
| Message ID | <1362550227-575-19-git-send-email-aneesh.kumar@linux.vnet.ibm.com> |
| Download | mbox | patch |
| Permalink | /patch/225359/ |
| State | Superseded, archived |
| Headers | show |
Comments
Patch
diff --git a/mm/huge_memory.c b/mm/huge_memory.c index e91b763..5c7cd7d 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -1380,9 +1380,10 @@ int zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma, struct page *page; pgtable_t pgtable; pmd_t orig_pmd; - pgtable = pgtable_trans_huge_withdraw(tlb->mm, pmd); + orig_pmd = pmdp_get_and_clear(tlb->mm, addr, pmd); tlb_remove_pmd_tlb_entry(tlb, pmd, addr); + pgtable = pgtable_trans_huge_withdraw(tlb->mm, pmd); if (is_huge_zero_pmd(orig_pmd)) { tlb->mm->nr_ptes--; spin_unlock(&tlb->mm->page_table_lock);