Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\zsmalloc.c Create Date:2022-07-28 16:26:53
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Each size class maintains zspages in different fullness groups depending* on the number of live objects they contain. When allocating or freeing* objects, the fullness status of the page can change, say, from ALMOST_FULL

Proto:static enum fullness_group fix_fullness_group(struct size_class *class, struct zspage *zspage)

Type:enum fullness_group

Parameter:

TypeParameterName
struct size_class *class
struct zspage *zspage
772  get_zspage_mapping(zspage, & class_idx, & currfg)
773  newfg = For each size class, zspages are divided into different groups* depending on how "full" they are. This was done so that we could* easily find empty or nearly empty zspages when we try to shrink* the pool (not yet implemented)
774  If newfg == currfg Then Go to out
777  If Not is_zspage_isolated(zspage) Then
778  This function removes the given zspage from the freelist identified* by .
779  Each size class maintains various freelists and zspages are assigned* to one of these freelists based on the number of live objects they* have. This functions inserts the given zspage into the freelist* identified by .
782  set_zspage_mapping(zspage, class_idx, newfg)
784  out :
785  Return newfg
Caller
NameDescribe
zs_malloczs_malloc - Allocate block of given size from pool.*@pool: pool to allocate from*@size: size of block to allocate*@gfp: gfp flags when allocating object* On success, handle to the allocated object is returned,* otherwise 0.
zs_free