diff options
Diffstat (limited to 'mm/memory.c')
-rw-r--r-- | mm/memory.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/mm/memory.c b/mm/memory.c index 7e91b5f9f690..7a3b0ad5594a 100644 --- a/mm/memory.c +++ b/mm/memory.c | |||
@@ -2539,7 +2539,7 @@ static int do_swap_page(struct mm_struct *mm, struct vm_area_struct *vma, | |||
2539 | } else if (PageHWPoison(page)) { | 2539 | } else if (PageHWPoison(page)) { |
2540 | ret = VM_FAULT_HWPOISON; | 2540 | ret = VM_FAULT_HWPOISON; |
2541 | delayacct_clear_flag(DELAYACCT_PF_SWAPIN); | 2541 | delayacct_clear_flag(DELAYACCT_PF_SWAPIN); |
2542 | goto out; | 2542 | goto out_release; |
2543 | } | 2543 | } |
2544 | 2544 | ||
2545 | lock_page(page); | 2545 | lock_page(page); |
@@ -2611,6 +2611,7 @@ out_nomap: | |||
2611 | pte_unmap_unlock(page_table, ptl); | 2611 | pte_unmap_unlock(page_table, ptl); |
2612 | out_page: | 2612 | out_page: |
2613 | unlock_page(page); | 2613 | unlock_page(page); |
2614 | out_release: | ||
2614 | page_cache_release(page); | 2615 | page_cache_release(page); |
2615 | return ret; | 2616 | return ret; |
2616 | } | 2617 | } |