函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:__mod_lruvec_state - update lruvec memory statistics*@lruvec: the lruvec*@idx: the stat item*@val: delta to add to the counter, can be negative* The lruvec is the intersection of the NUMA node and a cgroup

函数原型:void __mod_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, int val)

返回类型:void

参数:

类型参数名称
struct lruvec *lruvec
enum node_stat_itemidx
intval
729  pgdat等于lruvec_pgdat(lruvec)
735  __mod_node_page_state(pgdat, idx, val)
737  如果mem_cgroup_disabled()则返回
740  pn等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(lruvec, structmem_cgroup_per_node, lruvec)
741  memcg等于Back pointer, we cannot
744  __mod_memcg_state - update cgroup memory statistics*@memcg: the memory cgroup*@idx: the stat item - can be enum memcg_stat_item or enum node_stat_item*@val: delta to add to the counter, can be negative
747  __this_cpu_add(count[idx], val)
749  x等于valOperations for contexts that are safe from preemption/interrupts. These* operations verify that preemption is disabled.(count[idx])
750  如果此条件成立可能性小(为编译器优化)(abs - return absolute value of an argument*@x: the value. If it is unsigned type, it is converted to signed type first.* char is treated as if it was signed (regardless of whether it really is)* but the macro's return type is preserved as char.(x) > size of first charge trial. "32" comes from vmscan.c's magic value.* TODO: maybe necessary to use big numbers in big irons.)则
753 pi循环atomic_long_add(x, & lruvec_stat[idx])
755  x等于0
757  __this_cpu_write(count[idx], x)
调用者
名称描述
__mod_lruvec_slab_state
mem_cgroup_move_accountmem_cgroup_move_account - move account of the page*@page: the page*@compound: charge the page as compound or small page*@from: mem_cgroup which the page is moved from.*@to: mem_cgroup which the page is moved to. @from != @to.
mod_lruvec_state
__mod_lruvec_page_state
__inc_lruvec_state
__dec_lruvec_state