From 65a0bc3705bc852d9dca4b6cdb0863d386422bf9 Mon Sep 17 00:00:00 2001 From: Johannes Weiner Date: Thu, 20 Jan 2011 14:44:18 -0800 Subject: [PATCH] --- yaml --- r: 232010 b: refs/heads/master c: 453c719261c0b4030b2676124adb6e81c5fb6833 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/mm/huge_memory.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index d32b20e83a29..25686b0b4a50 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6a108a14fa356ef607be308b68337939e56ea94e +refs/heads/master: 453c719261c0b4030b2676124adb6e81c5fb6833 diff --git a/trunk/mm/huge_memory.c b/trunk/mm/huge_memory.c index 004c9c2aac78..c4f634b3a48e 100644 --- a/trunk/mm/huge_memory.c +++ b/trunk/mm/huge_memory.c @@ -1837,9 +1837,9 @@ static void collapse_huge_page(struct mm_struct *mm, spin_lock(ptl); isolated = __collapse_huge_page_isolate(vma, address, pte); spin_unlock(ptl); - pte_unmap(pte); if (unlikely(!isolated)) { + pte_unmap(pte); spin_lock(&mm->page_table_lock); BUG_ON(!pmd_none(*pmd)); set_pmd_at(mm, address, pmd, _pmd); @@ -1856,6 +1856,7 @@ static void collapse_huge_page(struct mm_struct *mm, anon_vma_unlock(vma->anon_vma); __collapse_huge_page_copy(pte, new_page, vma, address, ptl); + pte_unmap(pte); __SetPageUptodate(new_page); pgtable = pmd_pgtable(_pmd); VM_BUG_ON(page_count(pgtable) != 1);