aboutsummaryrefslogtreecommitdiffstats
path: root/mm/rmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/rmap.c')
-rw-r--r--mm/rmap.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/mm/rmap.c b/mm/rmap.c
index 0c9a2df06c39..997f06907b6d 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -335,6 +335,7 @@ static int page_referenced_anon(struct page *page,
335/** 335/**
336 * page_referenced_file - referenced check for object-based rmap 336 * page_referenced_file - referenced check for object-based rmap
337 * @page: the page we're checking references on. 337 * @page: the page we're checking references on.
338 * @mem_cont: target memory controller
338 * 339 *
339 * For an object-based mapped page, find all the places it is mapped and 340 * For an object-based mapped page, find all the places it is mapped and
340 * check/clear the referenced flag. This is done by following the page->mapping 341 * check/clear the referenced flag. This is done by following the page->mapping
@@ -402,6 +403,7 @@ static int page_referenced_file(struct page *page,
402 * page_referenced - test if the page was referenced 403 * page_referenced - test if the page was referenced
403 * @page: the page to test 404 * @page: the page to test
404 * @is_locked: caller holds lock on the page 405 * @is_locked: caller holds lock on the page
406 * @mem_cont: target memory controller
405 * 407 *
406 * Quick test_and_clear_referenced for all mappings to a page, 408 * Quick test_and_clear_referenced for all mappings to a page,
407 * returns the number of ptes which referenced the page. 409 * returns the number of ptes which referenced the page.
@@ -506,7 +508,7 @@ int page_mkclean(struct page *page)
506EXPORT_SYMBOL_GPL(page_mkclean); 508EXPORT_SYMBOL_GPL(page_mkclean);
507 509
508/** 510/**
509 * page_set_anon_rmap - setup new anonymous rmap 511 * __page_set_anon_rmap - setup new anonymous rmap
510 * @page: the page to add the mapping to 512 * @page: the page to add the mapping to
511 * @vma: the vm area in which the mapping is added 513 * @vma: the vm area in which the mapping is added
512 * @address: the user virtual address mapped 514 * @address: the user virtual address mapped
@@ -530,7 +532,7 @@ static void __page_set_anon_rmap(struct page *page,
530} 532}
531 533
532/** 534/**
533 * page_set_anon_rmap - sanity check anonymous rmap addition 535 * __page_check_anon_rmap - sanity check anonymous rmap addition
534 * @page: the page to add the mapping to 536 * @page: the page to add the mapping to
535 * @vma: the vm area in which the mapping is added 537 * @vma: the vm area in which the mapping is added
536 * @address: the user virtual address mapped 538 * @address: the user virtual address mapped
@@ -583,7 +585,7 @@ void page_add_anon_rmap(struct page *page,
583 } 585 }
584} 586}
585 587
586/* 588/**
587 * page_add_new_anon_rmap - add pte mapping to a new anonymous page 589 * page_add_new_anon_rmap - add pte mapping to a new anonymous page
588 * @page: the page to add the mapping to 590 * @page: the page to add the mapping to
589 * @vma: the vm area in which the mapping is added 591 * @vma: the vm area in which the mapping is added
@@ -623,6 +625,8 @@ void page_add_file_rmap(struct page *page)
623/** 625/**
624 * page_dup_rmap - duplicate pte mapping to a page 626 * page_dup_rmap - duplicate pte mapping to a page
625 * @page: the page to add the mapping to 627 * @page: the page to add the mapping to
628 * @vma: the vm area being duplicated
629 * @address: the user virtual address mapped
626 * 630 *
627 * For copy_page_range only: minimal extract from page_add_file_rmap / 631 * For copy_page_range only: minimal extract from page_add_file_rmap /
628 * page_add_anon_rmap, avoiding unnecessary tests (already checked) so it's 632 * page_add_anon_rmap, avoiding unnecessary tests (already checked) so it's
@@ -642,6 +646,7 @@ void page_dup_rmap(struct page *page, struct vm_area_struct *vma, unsigned long
642/** 646/**
643 * page_remove_rmap - take down pte mapping from a page 647 * page_remove_rmap - take down pte mapping from a page
644 * @page: page to remove mapping from 648 * @page: page to remove mapping from
649 * @vma: the vm area in which the mapping is removed
645 * 650 *
646 * The caller needs to hold the pte lock. 651 * The caller needs to hold the pte lock.
647 */ 652 */
@@ -890,6 +895,7 @@ static int try_to_unmap_anon(struct page *page, int migration)
890/** 895/**
891 * try_to_unmap_file - unmap file page using the object-based rmap method 896 * try_to_unmap_file - unmap file page using the object-based rmap method
892 * @page: the page to unmap 897 * @page: the page to unmap
898 * @migration: migration flag
893 * 899 *
894 * Find all the mappings of a page using the mapping pointer and the vma chains 900 * Find all the mappings of a page using the mapping pointer and the vma chains
895 * contained in the address_space struct it points to. 901 * contained in the address_space struct it points to.
@@ -986,6 +992,7 @@ out:
986/** 992/**
987 * try_to_unmap - try to remove all page table mappings to a page 993 * try_to_unmap - try to remove all page table mappings to a page
988 * @page: the page to get unmapped 994 * @page: the page to get unmapped
995 * @migration: migration flag
989 * 996 *
990 * Tries to remove all the page table entries which are mapping this 997 * Tries to remove all the page table entries which are mapping this
991 * page, used in the pageout path. Caller must hold the page lock. 998 * page, used in the pageout path. Caller must hold the page lock.