Function report |
Source Code:fs\exec.c |
Create Date:2022-07-28 20:03:55 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:During bprm_mm_init(), we create a temporary stack at STACK_TOP_MAX. Once* the binfmt code determines where the new stack should reside, we shift it to* its final location. The process proceeds as follows:* 1) Use shift to calculate the new vma endpoints.
Proto:static int shift_arg_pages(struct vm_area_struct *vma, unsigned long shift)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct vm_area_struct * | vma | |
| unsigned long | shift |
| 641 | If vma != look up the first VMA in which addr resides, NULL if none* - should be called with mm->mmap_sem at least held readlocked Then Return -EFAULT |
| 647 | If vma_adjust(vma, new_start, old_end, Offset (within vm_file) in PAGE_SIZEunits , NULL) Then Return -ENOMEM |
| 654 | If length != move_page_tables(vma, old_start, vma, new_start, length, false) Then Return -ENOMEM |
| 658 | lru_add_drain() |
| 666 | Else |
| 681 | vma_adjust(vma, new_start, new_end, Offset (within vm_file) in PAGE_SIZEunits , NULL) |
| 683 | Return 0 |
| Name | Describe |
|---|---|
| setup_arg_pages | Finalizes the stack vm_area_struct. The flags and permissions are updated,* the stack is optionally relocated, and some extra space is added. |
| 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 |