Function report |
Source Code:mm\memcontrol.c |
Create Date:2022-07-28 16:14:14 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:mem_cgroup_commit_charge - commit a page charge*@page: page to charge*@memcg: memcg to charge the page to*@lrucare: page might be on LRU already*@compound: charge the page as compound or small page* Finalize a charge transaction started by
Proto:void mem_cgroup_commit_charge(struct page *page, struct mem_cgroup *memcg, bool lrucare, bool compound)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct page * | page | |
| struct mem_cgroup * | memcg | |
| bool | lrucare | |
| bool | compound |
| 6410 | nr_pages = If compound Then hpage_nr_pages(page) Else 1 |
| 6413 | VM_BUG_ON_PAGE(PageLRU(page) && !lrucare, page) |
| 6415 | If mem_cgroup_disabled() Then Return |
| 6422 | If Not memcg Then Return |
| 6425 | commit_charge(page, memcg, lrucare) |
| 6427 | local_irq_disable() |
| 6432 | If Whether legacy memory+swap accounting is active && PageSwapCache(page) Then |
| 6433 | swp_entry_t entry = {val = page_private(page)} |
| Name | Describe |
|---|---|
| wp_page_copy | Handle the case of a page which we actually need to copy to a new page.* Called with mmap_sem locked and the old page referenced, but* without the ptl held.* High level logic flow:* - Allocate a page, copy the content of the old page to the new one. |
| do_swap_page | We enter with non-exclusive mmap_sem (to exclude vma changes,* but allow concurrent faults), and pte mapped but not yet locked.* We return with pte unmapped and unlocked.* We return with the mmap_sem locked or unlocked in the same cases |
| do_anonymous_page | We enter with non-exclusive mmap_sem (to exclude vma changes,* but allow concurrent faults), and pte mapped but not yet locked.* We return with mmap_sem still held, but pte unmapped and unlocked. |
| alloc_set_pte | alloc_set_pte - setup new PTE entry for given page and add reverse page* mapping |
| unuse_pte | No need to decide whether this PTE shares the swap entry with others,* just let do_wp_page work it out if a write is requested later - to* force COW, vm_page_prot omits write permission from any private vma. |
| __do_huge_pmd_anonymous_page | |
| do_huge_pmd_wp_page_fallback | |
| do_huge_pmd_wp_page | |
| collapse_huge_page | |
| mcopy_atomic_pte |
| 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 |