Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

kernel/cgroup/cpuset.c dl_rebuild_rd_accounting() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 global &sched_domains_mutex
LOCK2 rcu_read
HALF_LOCKED2 global &cpuset_mutex

kernel/cgroup/cpuset.c generate_sched_domains() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c partition_is_populated() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 rcu_read
HALF_LOCKED2 global &cpuset_mutex

kernel/cgroup/cpuset.c update_cpumasks_hier() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c update_cpumasks_hier() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c update_nodemasks_hier() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 &of->mutex
LOCK2 global &cpuset_mutex
LOCK2 global &cpuset_top_mutex
LOCK2 rcu_read
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/cgroup/freezer.c cgroup_freeze() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 0 pos->cgroup 4096-ptr_max
PARAM_VALUE 0 pos->cgroup->self.flags 2-u32max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 &of->mutex
LOCK2 global &cgroup_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/cgroup/cpuset-v1.c cpuset1_generate_sched_domains() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset-v1.c update_domain_attr_tree() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
CAPPED_DATA 0 pos 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/sched/core.c cpu_util_update_eff() -> css_rightmost_descendant()

Type Parameter Key Value
PARAM_VALUE 0 pos 1-u64max
PARAM_VALUE 0 pos->ss->attach 0,2246200204970172416,2360154984384167936,3019800169015222272,5185209237867978752,6679637330912739328,6722154200619556864,8437287443062427648
PARAM_VALUE 0 pos->ss->bind 0,5398039129788481536
PARAM_VALUE 0 pos->ss->can_attach 0,1539697653209010176,2596895394050748416,3636412751287525376
PARAM_VALUE 0 pos->ss->can_fork 0,5638613885127380992,6961295853237211136
PARAM_VALUE 0 pos->ss->cancel_attach 0,1511532066655358976,4508251095385354240,4853635904863272960
PARAM_VALUE 0 pos->ss->cancel_fork 0,5691029669975453696,7415222397819719680
PARAM_VALUE 0 pos->ss->css_alloc 0,4096-ptr_max
PARAM_VALUE 0 pos->ss->css_extra_stat_show 0,3458187449253036032
PARAM_VALUE 0 pos->ss->css_free 0,4096-ptr_max
PARAM_VALUE 0 pos->ss->css_killed 0,8358574337692954624
PARAM_VALUE 0 pos->ss->css_local_stat_show 0,3145639222211608576
PARAM_VALUE 0 pos->ss->css_offline 0,4096-ptr_max
PARAM_VALUE 0 pos->ss->css_online 0,4096-ptr_max
PARAM_VALUE 0 pos->ss->css_released 0,4856339823753781248,9148075606814478336
PARAM_VALUE 0 pos->ss->css_reset 0,7327419871178485760
PARAM_VALUE 0 pos->ss->css_rstat_flush 0,4093796338165313536,4446828206639517696
PARAM_VALUE 0 pos->ss->depends_on 0,16
PARAM_VALUE 0 pos->ss->dfl_cftypes 0,4096-ptr_max
PARAM_VALUE 0 pos->ss->exit 0,7702225149594865664,8372473530682335232
PARAM_VALUE 0 pos->ss->fork 0,4540472734013444096,7578242414286561280,8835910921598877696
PARAM_VALUE 0 pos->ss->id 0-15
PARAM_VALUE 0 pos->ss->legacy_cftypes 0,4096-ptr_max
PARAM_VALUE 0 pos->ss->release 0,1980470231377797120
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
DATA_SOURCE 0 pos $0 [m]
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pos->refcnt.percpu_count_ptr
LOCK2 _T->lock
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex