Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

kernel/cgroup/legacy_freezer.c update_if_frozen() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
BUF_SIZE 1 parent (-1),392
BUF_SIZE 1 parent (-1),392
DATA_SOURCE 1 parent $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
LOCK2 global &freezer_mutex
LOCK2 rcu_read
TYPE_LOCK (struct seq_file)->lock

kernel/cgroup/legacy_freezer.c update_if_frozen() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
BUF_SIZE 1 parent (-1),392
BUF_SIZE 1 parent (-1),392
DATA_SOURCE 1 parent $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
LOCK2 global &freezer_mutex
LOCK2 rcu_read
TYPE_LOCK (struct seq_file)->lock

kernel/bpf/cgroup_iter.c bpf_iter_css_next() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 1 parent 1-u64max

kernel/bpf/cgroup_iter.c cgroup_iter_seq_next() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 1-ptr_max
DATA_SOURCE 0 pos $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

kernel/bpf/cgroup_iter.c cgroup_iter_seq_start() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
LOCK2 global &cgroup_mutex
TYPE_LOCK (struct seq_file)->lock

kernel/cgroup/cpuset.c compute_partition_effective_cpumask() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
PARAM_VALUE 1 parent->cgroup 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &cpuset_mutex

kernel/cgroup/cpuset.c compute_partition_effective_cpumask() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
PARAM_VALUE 1 parent->cgroup 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &cpuset_mutex

kernel/cgroup/cpuset.c rm_siblings_excl_cpus() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c rm_siblings_excl_cpus() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c update_parent_effective_cpumask() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c update_parent_effective_cpumask() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c update_sibling_cpumasks() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c update_sibling_cpumasks() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c validate_change() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset.c validate_change() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cgroup.c css_has_online_children() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
DATA_SOURCE 1 parent $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &devcgroup_mutex

kernel/cgroup/cgroup.c css_has_online_children() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
DATA_SOURCE 1 parent $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &devcgroup_mutex

kernel/cgroup/cgroup.c css_leftmost_descendant() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
BUF_SIZE 1 parent (-1),392
BUF_SIZE 1 parent (-1),392
DATA_SOURCE 1 parent $0 [m]
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &q->queue_lock
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &freezer_mutex
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c css_next_descendant_post() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1),392
BUF_SIZE 0 pos (-1),392
DATA_SOURCE 0 pos $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &q->queue_lock
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &freezer_mutex
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c css_next_descendant_pre() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 1-u64max
BUF_SIZE 1 parent (-1)-0,392
BUF_SIZE 1 parent (-1)-0,392
DATA_SOURCE 1 parent $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bdev->bd_queue->rq_qos_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 &sf->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex
HALF_LOCKED2 global &css_set_lock
HALF_LOCKED2 global &devcgroup_mutex
HALF_LOCKED2 global &freezer_mutex
HALF_LOCKED2 global &sched_domains_mutex
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c css_next_descendant_pre() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
BUF_SIZE 0 pos (-1)-0,392
BUF_SIZE 0 pos (-1)-0,392
DATA_SOURCE 0 pos $0 [m]
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bdev->bd_queue->rq_qos_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 &sf->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex
HALF_LOCKED2 global &css_set_lock
HALF_LOCKED2 global &devcgroup_mutex
HALF_LOCKED2 global &freezer_mutex
HALF_LOCKED2 global &sched_domains_mutex
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c css_rightmost_descendant() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 1-u64max
BUF_SIZE 1 parent (-1),392
BUF_SIZE 1 parent (-1),392
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex
HALF_LOCKED2 global &sched_domains_mutex
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c css_rightmost_descendant() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 1-u64max
BUF_SIZE 1 parent (-1),392
BUF_SIZE 1 parent (-1),392
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex
HALF_LOCKED2 global &sched_domains_mutex
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c rebind_subsystems() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
RX_PATH
TASK_NOT_RUNNING

kernel/cgroup/cpuset-v1.c cpuset1_online_css() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &cpuset_mutex
LOCK2 global &cpuset_top_mutex
LOCK2 rcu_read
HALF_LOCKED2 global &cgroup_mutex

kernel/cgroup/cpuset-v1.c cpuset1_online_css() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &cpuset_mutex
LOCK2 global &cpuset_top_mutex
LOCK2 rcu_read
HALF_LOCKED2 global &cgroup_mutex

kernel/cgroup/cpuset-v1.c cpuset1_validate_change() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 0
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex

kernel/cgroup/cpuset-v1.c cpuset1_validate_change() -> css_next_child()

Type Parameter Key Value
PARAM_VALUE 0 pos 4096-ptr_max
PARAM_VALUE 1 parent 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex