diff options
-rw-r--r-- | mm/huge_memory.c | 1 | ||||
-rw-r--r-- | mm/khugepaged.c | 8 | ||||
-rw-r--r-- | mm/migrate.c | 3 | ||||
-rw-r--r-- | mm/rmap.c | 3 |
4 files changed, 7 insertions, 8 deletions
diff --git a/mm/huge_memory.c b/mm/huge_memory.c index f3c4f9d22821..17f6008f2827 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c | |||
@@ -2399,7 +2399,6 @@ int split_huge_page_to_list(struct page *page, struct list_head *list) | |||
2399 | 2399 | ||
2400 | VM_BUG_ON_PAGE(is_huge_zero_page(page), page); | 2400 | VM_BUG_ON_PAGE(is_huge_zero_page(page), page); |
2401 | VM_BUG_ON_PAGE(!PageLocked(page), page); | 2401 | VM_BUG_ON_PAGE(!PageLocked(page), page); |
2402 | VM_BUG_ON_PAGE(!PageSwapBacked(page), page); | ||
2403 | VM_BUG_ON_PAGE(!PageCompound(page), page); | 2402 | VM_BUG_ON_PAGE(!PageCompound(page), page); |
2404 | 2403 | ||
2405 | if (PageAnon(head)) { | 2404 | if (PageAnon(head)) { |
diff --git a/mm/khugepaged.c b/mm/khugepaged.c index ba40b7f673f4..88e4b1737c90 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c | |||
@@ -483,8 +483,7 @@ void __khugepaged_exit(struct mm_struct *mm) | |||
483 | 483 | ||
484 | static void release_pte_page(struct page *page) | 484 | static void release_pte_page(struct page *page) |
485 | { | 485 | { |
486 | /* 0 stands for page_is_file_cache(page) == false */ | 486 | dec_node_page_state(page, NR_ISOLATED_ANON + page_is_file_cache(page)); |
487 | dec_node_page_state(page, NR_ISOLATED_ANON + 0); | ||
488 | unlock_page(page); | 487 | unlock_page(page); |
489 | putback_lru_page(page); | 488 | putback_lru_page(page); |
490 | } | 489 | } |
@@ -532,7 +531,6 @@ static int __collapse_huge_page_isolate(struct vm_area_struct *vma, | |||
532 | 531 | ||
533 | VM_BUG_ON_PAGE(PageCompound(page), page); | 532 | VM_BUG_ON_PAGE(PageCompound(page), page); |
534 | VM_BUG_ON_PAGE(!PageAnon(page), page); | 533 | VM_BUG_ON_PAGE(!PageAnon(page), page); |
535 | VM_BUG_ON_PAGE(!PageSwapBacked(page), page); | ||
536 | 534 | ||
537 | /* | 535 | /* |
538 | * We can do it before isolate_lru_page because the | 536 | * We can do it before isolate_lru_page because the |
@@ -579,8 +577,8 @@ static int __collapse_huge_page_isolate(struct vm_area_struct *vma, | |||
579 | result = SCAN_DEL_PAGE_LRU; | 577 | result = SCAN_DEL_PAGE_LRU; |
580 | goto out; | 578 | goto out; |
581 | } | 579 | } |
582 | /* 0 stands for page_is_file_cache(page) == false */ | 580 | inc_node_page_state(page, |
583 | inc_node_page_state(page, NR_ISOLATED_ANON + 0); | 581 | NR_ISOLATED_ANON + page_is_file_cache(page)); |
584 | VM_BUG_ON_PAGE(!PageLocked(page), page); | 582 | VM_BUG_ON_PAGE(!PageLocked(page), page); |
585 | VM_BUG_ON_PAGE(PageLRU(page), page); | 583 | VM_BUG_ON_PAGE(PageLRU(page), page); |
586 | 584 | ||
diff --git a/mm/migrate.c b/mm/migrate.c index 5c5df09ac962..b32630d10329 100644 --- a/mm/migrate.c +++ b/mm/migrate.c | |||
@@ -1944,7 +1944,8 @@ int migrate_misplaced_transhuge_page(struct mm_struct *mm, | |||
1944 | 1944 | ||
1945 | /* Prepare a page as a migration target */ | 1945 | /* Prepare a page as a migration target */ |
1946 | __SetPageLocked(new_page); | 1946 | __SetPageLocked(new_page); |
1947 | __SetPageSwapBacked(new_page); | 1947 | if (PageSwapBacked(page)) |
1948 | __SetPageSwapBacked(new_page); | ||
1948 | 1949 | ||
1949 | /* anon mapping, we can simply copy page->mapping to the new page: */ | 1950 | /* anon mapping, we can simply copy page->mapping to the new page: */ |
1950 | new_page->mapping = page->mapping; | 1951 | new_page->mapping = page->mapping; |
@@ -1424,7 +1424,8 @@ static int try_to_unmap_one(struct page *page, struct vm_area_struct *vma, | |||
1424 | * Store the swap location in the pte. | 1424 | * Store the swap location in the pte. |
1425 | * See handle_pte_fault() ... | 1425 | * See handle_pte_fault() ... |
1426 | */ | 1426 | */ |
1427 | VM_BUG_ON_PAGE(!PageSwapCache(page), page); | 1427 | VM_BUG_ON_PAGE(!PageSwapCache(page) && PageSwapBacked(page), |
1428 | page); | ||
1428 | 1429 | ||
1429 | if (!PageDirty(page)) { | 1430 | if (!PageDirty(page)) { |
1430 | /* It's a freeable page by MADV_FREE */ | 1431 | /* It's a freeable page by MADV_FREE */ |