| Function report | 
| Source Code: mm\migrate.c | Create Date:2022-07-28 15:59:26 | 
| Last Modify:2022-05-20 09:53:13 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Resolves the given address to a struct page, isolates it from the LRU and* puts it to the given pagelist
Proto:static int add_page_for_migration(struct mm_struct *mm, unsigned long addr, int node, struct list_head *pagelist, bool migrate_all)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct mm_struct * | mm | |
| unsigned long | addr | |
| int | node | |
| struct list_head * | pagelist | |
| bool | migrate_all | 
| 1529 | lock for reading | 
| 1532 | If Not vma || addr < Our start address within vm_mm. || Not Check if a vma is migratable Then Go to out | 
| 1537 | page = follow_page(vma, addr, follflags) | 
| 1547 | err = 0 | 
| 1548 | If page_to_nid(page) == node Then Go to out_putpage | 
| 1552 | If page_mapcount(page) > 1 && Not migrate_all Then Go to out_putpage | 
| 1560 | Else | 
| 1563 | head = compound_head(page) | 
| 1565 | If err Then Go to out_putpage | 
| 1568 | err = 1 | 
| 1574 | out_putpage : | 
| 1581 | out : | 
| 1582 | lease a read lock | 
| 1583 | Return err | 
| Name | Describe | 
|---|---|
| do_pages_move | Migrate an array of page address onto an array of nodes and fill* the corresponding array of status. | 
| 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 |