函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\slub.c Create Date:2022-07-27 17:21:36
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:remove_partial

函数原型:static inline void remove_partial(struct kmem_cache_node *n, struct page *page)

返回类型:void

参数:

类型参数名称
struct kmem_cache_node *n
struct page *page
1779  lockdep_assert_held( & list_lock)
1780  删除链表项
1781  nr_partial自减
调用者
名称描述
acquire_slabRemove 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_slabRemove the cpu slab
__slab_freeSlow path handling. This may still be called frequently since objects* have a longer lifetime than the cpu slabs in most processing loads.* So we still attempt to reduce cache line usage. Just take the slab* lock and free the item
free_partialAttempt to free all partial slabs on a node.* This is called from __kmem_cache_shutdown(). We must take list_lock* because sysfs file might still access partial list after the shutdowning.