Function report |
Source Code:include\linux\page-flags.h |
Create Date:2022-07-28 05:37:06 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:A KSM page is one of those write-protected "shared pages" or "merged pages"* which KSM maps into multiple mms, wherever identical anonymous page content* is found in VM_MERGEABLE vmas. It's a PageAnon page, pointing not to any
Proto:static __always_inline int PageKsm(struct page *page)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct page * | page |
482 | page = compound_head(page) |
483 | Return ( See page-flags.h for PAGE_MAPPING_FLAGS & PAGE_MAPPING_FLAGS) == PAGE_MAPPING_KSM |
Name | Describe |
---|---|
__dump_page | |
do_wp_page | This routine handles present pages, when users try to write* to a shared page. It is done by copying the page to a new address* and decrementing the shared-page counter for the old page.* Note that this routine assumes that the protection checks have been |
change_pte_range | |
page_referenced | page_referenced - test if the page was referenced*@page: the page to test*@is_locked: caller holds lock on the page*@memcg: target memory cgroup*@vm_flags: collect encountered vma->vm_flags who actually referenced the page* Quick test_and_clear_referenced |
do_page_add_anon_rmap | Special version of the above for do_swap_page, which often runs* into pages that are exclusively owned by the current process.* Everybody else should continue to use page_add_anon_rmap above. |
try_to_unmap | ry_to_unmap - try to remove all page table mappings to a page*@page: the page to get unmapped*@flags: action and flags* Tries to remove all the page table entries which are mapping this* page, used in the pageout path. Caller must hold the page lock. |
rmap_walk | |
rmap_walk_locked | Like rmap_walk, but caller holds relevant rmap lock |
reuse_swap_page | We can write to an anon page without COW if there are no other references* to it. And as a side-effect, free up its swap: because the old content* on disk will never be read, and seeking back there to write new content |
break_ksm | We use break_ksm to break COW on a ksm page: it's a stripped down* if (get_user_pages(addr, 1, 1, 1, &page, NULL) == 1)* put_page(page);* but taking great care only to touch a ksm page, in a VM_MERGEABLE vma, |
page_stable_node | |
ksm_might_need_to_copy | |
rmap_walk_ksm | |
remove_migration_pte | Restore a potential migration pte to a working pte entry |
__unmap_and_move | |
hwpoison_user_mappings | Do all that is necessary to remove user space mappings. Unmap* the pages and send SIGBUS to the processes if the data was dirty. |
page_idle_clear_pte_refs |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |