Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/ipv6/ip6_fib.c fib6_dump_table() -> fib6_walk_continue()

Type Parameter Key Value
PARAM_VALUE 0 w 4096-ptr_max
PARAM_VALUE 0 w->root 4096-ptr_max
BUF_SIZE 0 w->node (-1),72
BUF_SIZE 0 w->root 72
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &table->tb6_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct fib6_table)->tb6_lock

net/ipv6/ip6_fib.c fib6_walk() -> fib6_walk_continue()

Type Parameter Key Value
PARAM_VALUE 0 w 4096-ptr_max
PARAM_VALUE 0 w->lh.next 4096-ptr_max
PARAM_VALUE 0 w->lh.prev 4096-ptr_max
PARAM_VALUE 0 w->node 4096-ptr_max
PARAM_VALUE 0 w->root 4096-ptr_max
PARAM_VALUE 0 w->state 0
BUF_SIZE 0 w (-1),72
BUF_SIZE 0 w (-1),72
BUF_SIZE 0 w->args (-1),24
BUF_SIZE 0 w->node (-1),72
BUF_SIZE 0 w->root (-1),72
DATA_SOURCE 0 w $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &table->tb6_lock
HALF_LOCKED2 &tb->tb6_lock
TYPE_LOCK (struct fib6_table)->tb6_lock

net/ipv6/ip6_fib.c ipv6_route_seq_next() -> fib6_walk_continue()

Type Parameter Key Value
PARAM_VALUE 0 w 4096-ptr_max
PARAM_VALUE 0 w->root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &iter->tbl->tb6_lock
LOCK2 &seq->lock
LOCK2 bh
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct fib6_table)->tb6_lock
TYPE_LOCK (struct seq_file)->lock