| Function report | 
| Source Code: mm\page_alloc.c | Create Date:2022-07-28 15:04:37 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Obtain a specified number of elements from the buddy allocator, all under* a single hold of the lock, for efficiency. Add them to the supplied list.* Returns the number of new pages which were placed at *list.
Proto:static int rmqueue_bulk(struct zone *zone, unsigned int order, unsigned long count, struct list_head *list, int migratetype, unsigned int alloc_flags)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct zone * | zone | |
| unsigned int | order | |
| unsigned long | count | |
| struct list_head * | list | |
| int | migratetype | |
| unsigned int | alloc_flags | 
| 2738 | alloced = 0 | 
| 2740 | spin_lock( & Primarily protects free_area ) | 
| 2742 | page = Do the hard work of removing an element from the buddy allocator.* Call me with the zone->lock already held. | 
| 2744 | If Value for the false possibility is greater at compile time(page == NULL) Then Break | 
| 2761 | alloced++ | 
| 2774 | spin_unlock( & Primarily protects free_area ) | 
| 2775 | Return alloced | 
| Name | Describe | 
|---|---|
| __rmqueue_pcplist | Remove page from the per-cpu list, caller must protect the list | 
| 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 |