| Function report | 
| Source Code: mm\slub.c | Create Date:2022-07-28 15:47:11 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Interrupts must be disabled (for the fallback code to work right)
Proto:static inline bool __cmpxchg_double_slab(struct kmem_cache *s, struct page *page, void *freelist_old, unsigned long counters_old, void *freelist_new, unsigned long counters_new, const char *n)
Type:bool
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct kmem_cache * | s | |
| struct page * | page | |
| void * | freelist_old | |
| unsigned long | counters_old | |
| void * | freelist_new | |
| unsigned long | counters_new | |
| const char * | n | 
| 380 | If first free object == freelist_old && SLUB == counters_old Then | 
| 387 | slab_unlock(page) | 
| 390 | cpu_relax() | 
| 397 | Return false | 
| Name | Describe | 
|---|---|
| acquire_slab | Remove slab from the partial list, freeze it and* return the pointer to the freelist.* Returns a list of objects or NULL if it fails. | 
| deactivate_slab | Remove the cpu slab | 
| get_freelist | Check the page->freelist of a page and either transfer the freelist to the* per cpu freelist or deactivate the page.* The page is still frozen if the return value is not NULL.* If this function returns NULL then the page has been unfrozen. | 
| 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 |