Function report |
Source Code:mm\ksm.c |
Create Date:2022-07-28 15:40:47 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:ry_to_merge_one_page - take two pages and merge them into one*@vma: the vma that holds the pte pointing to page*@page: the PageAnon page that we want to replace with kpage*@kpage: the PageKsm page that we want to map instead of page,
Proto:static int try_to_merge_one_page(struct vm_area_struct *vma, struct page *page, struct page *kpage)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct vm_area_struct * | vma | |
struct page * | page | |
struct page * | kpage |
1220 | If Not Return true if the page was successfully locked Then Go to out |
1224 | If split_huge_page(page) Then Go to out_unlock |
1234 | If write_protect_page(vma, page, & orig_pte) == 0 Then |
1235 | If Not kpage Then |
1241 | set_page_stable_node(page, NULL) |
1247 | If Not PageDirty(page) Then SetPageDirty(page) |
1249 | err = 0 |
1254 | If Flags, see mm.h. & VM_LOCKED && kpage && Not err Then |
1256 | If Not PageMlocked(kpage) Then |
1264 | out_unlock : |
1266 | out : |
1267 | Return err |
Name | Describe |
---|---|
try_to_merge_with_ksm_page | ry_to_merge_with_ksm_page - like try_to_merge_two_pages,* but no new kernel page is allocated: kpage must already be a ksm page.* This function returns 0 if the pages were merged, -EFAULT otherwise. |
cmp_and_merge_page | mp_and_merge_page - first see if page can be merged into the stable tree;* if not, compare checksum to previous and if it's the same, see if page can* be inserted into the unstable tree, or merged with a page already there and |
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 |