diff options
Diffstat (limited to 'mm')
-rw-r--r-- | mm/migrate.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/mm/migrate.c b/mm/migrate.c index bf436c15f055..a88c12f2235d 100644 --- a/mm/migrate.c +++ b/mm/migrate.c | |||
@@ -1715,7 +1715,8 @@ int migrate_misplaced_transhuge_page(struct mm_struct *mm, | |||
1715 | putback_lru_page(page); | 1715 | putback_lru_page(page); |
1716 | mod_zone_page_state(page_zone(page), | 1716 | mod_zone_page_state(page_zone(page), |
1717 | NR_ISOLATED_ANON + page_lru, -HPAGE_PMD_NR); | 1717 | NR_ISOLATED_ANON + page_lru, -HPAGE_PMD_NR); |
1718 | goto out_fail; | 1718 | |
1719 | goto out_unlock; | ||
1719 | } | 1720 | } |
1720 | 1721 | ||
1721 | /* | 1722 | /* |
@@ -1765,6 +1766,7 @@ out_dropref: | |||
1765 | set_pmd_at(mm, haddr, pmd, entry); | 1766 | set_pmd_at(mm, haddr, pmd, entry); |
1766 | update_mmu_cache_pmd(vma, address, &entry); | 1767 | update_mmu_cache_pmd(vma, address, &entry); |
1767 | 1768 | ||
1769 | out_unlock: | ||
1768 | unlock_page(page); | 1770 | unlock_page(page); |
1769 | put_page(page); | 1771 | put_page(page); |
1770 | return 0; | 1772 | return 0; |