| Function report | 
| Source Code: mm\memory.c | Create Date:2022-07-28 14:40:08 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:py one vm_area from one task to the other. Assumes the page tables* already present in the new task to be cleared in the whole range* covered by this vma.
Proto:static inline unsigned long copy_one_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm, pte_t *dst_pte, pte_t *src_pte, struct vm_area_struct *vma, unsigned long addr, int *rss)
Type:unsigned long
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct mm_struct * | dst_mm | |
| struct mm_struct * | src_mm | |
| pte_t * | dst_pte | |
| pte_t * | src_pte | |
| struct vm_area_struct * | vma | |
| unsigned long | addr | |
| int * | rss | 
| 700 | vm_flags = Flags, see mm.h. | 
| 706 | entry = Convert the arch-dependent pte representation of a swp_entry_t into an* arch-independent swp_entry_t. | 
| 708 | If Value is more likely to compile time(!non_swap_entry(entry)) Then | 
| 709 | If swap_duplicate(entry) < 0 Then Return val | 
| 714 | spin_lock( & mmlist_lock) | 
| 718 | spin_unlock( & mmlist_lock) | 
| 720 | rss[MM_SWAPENTS]++ | 
| 721 | Else if is_migration_entry(entry) Then | 
| 722 | page = migration_entry_to_page(entry) | 
| 724 | rss[mm_counter(page)]++ | 
| 726 | If is_write_migration_entry(entry) && is_cow_mapping(vm_flags) Then | 
| 738 | Else if is_device_private_entry(entry) Then | 
| 751 | rss[mm_counter(page)]++ | 
| 752 | page_dup_rmap(page, false) | 
| 761 | If is_write_device_private_entry(entry) && is_cow_mapping(vm_flags) Then | 
| 768 | Go to out_set_pte | 
| 775 | If is_cow_mapping(vm_flags) && pte_write(pte) Then | 
| 776 | ptep_set_wrprotect(src_mm, addr, src_pte) | 
| 777 | pte = pte_wrprotect(pte) | 
| 784 | If vm_flags & VM_SHARED Then pte = pte_mkclean(pte) | 
| 789 | If page Then | 
| 793 | Else if pte_devmap(pte) Then | 
| 797 | out_set_pte : | 
| 798 | set_pte_at(dst_mm, addr, dst_pte, pte) | 
| 799 | Return 0 | 
| Name | Describe | 
|---|---|
| copy_pte_range | 
| 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 |