Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/ipv4/fib_trie.c collapse() -> put_child_root()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
HALF_LOCKED2 &ops->lock
HALF_LOCKED2 global &rtnl_mutex

net/ipv4/fib_trie.c fib_insert_node() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp 4096-ptr_max
PARAM_VALUE 0 tp->tnode 4096-ptr_max
PARAM_VALUE 2 n 4096-ptr_max
PARAM_VALUE 2 n->bits 1
PARAM_VALUE 2 n->pos 0-32
BUF_SIZE 2 n 16
DATA_SOURCE 0 tp $1
DATA_SOURCE 1 key $3
DATA_SOURCE 2 n r tnode_new
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 key 0-u32max
UNITS 1 key unit_byte
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 &ops->lock
HALF_LOCKED2 global &rtnl_mutex

net/ipv4/fib_trie.c fib_insert_node() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp 4096-ptr_max
PARAM_VALUE 0 tp->tnode 4096-ptr_max
PARAM_VALUE 2 n 4096-ptr_max
PARAM_VALUE 2 n->bits 0
PARAM_VALUE 2 n->leaf.first 4096-ptr_max
PARAM_VALUE 2 n->pos 0
BUF_SIZE 0 tp (-1),16
BUF_SIZE 0 tp (-1),16
BUF_SIZE 2 n 16
DATA_SOURCE 0 tp $1 [m]
DATA_SOURCE 1 key $3
DATA_SOURCE 2 n r leaf_new
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 key 0-u32max
USER_DATA 2 n->key 0-u32max
UNITS 1 key unit_byte
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 &ops->lock
HALF_LOCKED2 global &rtnl_mutex

net/ipv4/fib_trie.c fib_remove_alias() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp 4096-ptr_max
PARAM_VALUE 2 n 0
DATA_SOURCE 0 tp $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

net/ipv4/fib_trie.c fib_table_flush() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp 4096-ptr_max
PARAM_VALUE 0 tp->tnode 4096-ptr_max
PARAM_VALUE 2 n 0
BUF_SIZE 0 tp (-1),16
BUF_SIZE 0 tp (-1),16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &pernet_ops_rwsem
HALF_LOCKED2 global &rtnl_mutex

net/ipv4/fib_trie.c fib_table_flush_external() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp 4096-ptr_max
PARAM_VALUE 0 tp->tnode 4096-ptr_max
PARAM_VALUE 2 n 0
BUF_SIZE 0 tp (-1),16
BUF_SIZE 0 tp (-1),16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
LOCK2 &ops->lock
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct fib_rules_ops)->lock

net/ipv4/fib_trie.c fib_trie_free() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp->tnode 4096-ptr_max
PARAM_VALUE 2 n 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
LOCK2 &ops->lock
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct fib_rules_ops)->lock

net/ipv4/fib_trie.c fib_trie_free() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 0 tp 4096-ptr_max
PARAM_VALUE 0 tp->tnode 4096-ptr_max
PARAM_VALUE 2 n 0
BUF_SIZE 0 tp (-1),16
BUF_SIZE 0 tp (-1),16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
LOCK2 &ops->lock
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct fib_rules_ops)->lock

net/ipv4/fib_trie.c replace() -> put_child_root()

Type Parameter Key Value
PARAM_VALUE 2 n 4096-ptr_max
PARAM_VALUE 2 n->bits 1-255
BUF_SIZE 2 n 16
CAPPED_DATA 2 n->bits 1
DATA_SOURCE 2 n $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 key unit_byte
HALF_LOCKED2 &ops->lock
HALF_LOCKED2 global &rtnl_mutex