Function report |
Source Code:mm\hugetlb.c |
Create Date:2022-07-28 15:28:31 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:This is called when the original mapper is failing to COW a MAP_PRIVATE* mappping it owns the reserve page for. The intention is to unmap the page* from other VMAs and let the children be SIGKILLed if they are faulting the* same region.
Proto:static void unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma, struct page *page, unsigned long address)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct mm_struct * | mm | |
| struct vm_area_struct * | vma | |
| struct page * | page | |
| unsigned long | address |
| 3555 | h = hstate_vma(vma) |
| 3564 | address = address & huge_page_mask(h) |
| 3565 | pgoff = ( address - Our start address within vm_mm. >> PAGE_SHIFT determines the page size ) + Offset (within vm_file) in PAGE_SIZEunits |
| 3574 | i_mmap_lock_write(mapping) |
| 3585 | If Flags, see mm.h. & VM_MAYSHARE Then Continue |
| 3599 | i_mmap_unlock_write(mapping) |
| Name | Describe |
|---|---|
| hugetlb_cow | Hugetlb_cow() should be called with page lock of the original hugepage held.* Called with hugetlb_instantiation_mutex held and pte_page locked so we* cannot race with other handlers or page migration. |
| 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 |