Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/tipc/node.c tipc_nl_peer_rm() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->addr 1-u32max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->preliminary 0
CAPPED_DATA 0 n->addr 1
DATA_SOURCE 0 n r tipc_node_find
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tn->node_list_lock
LOCK2 bh
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct tipc_net)->node_list_lock

net/tipc/node.c tipc_node_add_conn() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->addr 1-u32max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->preliminary 0
CAPPED_DATA 0 n->addr 1
DATA_SOURCE 0 n r tipc_node_find
NOSPEC 0 n->addr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 n->addr 1-u32max[c]
HALF_LOCKED2 new_sk
HALF_LOCKED2 sk

net/tipc/node.c tipc_node_apply_property() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rtnl_mutex
LOCK2 rcu_read
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
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 &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rx_queue_mutex

net/tipc/node.c tipc_node_check_dest() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->bc_entry.link->acked 0-u16max
PARAM_VALUE 0 n->bc_entry.link->ackers 0-u16max
PARAM_VALUE 0 n->bc_entry.link->bc_peer_is_up 0-1
PARAM_VALUE 0 n->bc_entry.link->failover_reasm_skb 0-s64max
PARAM_VALUE 0 n->bc_entry.link->in_session 0-1
PARAM_VALUE 0 n->bc_entry.link->last_gap 0-u16max
PARAM_VALUE 0 n->bc_entry.link->rcv_nxt 0-u16max
PARAM_VALUE 0 n->bc_entry.link->rcv_nxt_state 0-u16max
PARAM_VALUE 0 n->bc_entry.link->rcv_unacked 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->reasm_tnlmsg 0-s64max
PARAM_VALUE 0 n->bc_entry.link->rst_cnt 0-u16max
PARAM_VALUE 0 n->bc_entry.link->silent_intv_cnt 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->snd_nxt 0-u16max
PARAM_VALUE 0 n->bc_entry.link->snd_nxt_state 0-u16max
PARAM_VALUE 0 n->bc_entry.link->state 0-4294967295
PARAM_VALUE 0 n->keepalive_intv 10000
PARAM_VALUE 0 n->lock.dep_map->name 0-255
PARAM_VALUE 0 n->timer.entry.pprev 0,4096-ptr_max
PARAM_VALUE 0 n->timer.lockdep_map->name 0-255
BUF_SIZE 0 n (-1),1464
BUF_SIZE 0 n (-1),1464
CAPPED_DATA 0 n 1
DATA_SOURCE 0 n r tipc_node_create
NOSPEC 0 n->addr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 n->addr 1-u32max[c]
USER_DATA 0 n->capabilities 0-u16max[c]
USER_DATA 0 n->peer_hash_mix 0-u32max
USER_DATA 0 *n->peer_id_string 0-255
HALF_LOCKED2 rcu_read

net/tipc/node.c tipc_node_cleanup() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->net 4096-ptr_max
PARAM_VALUE 0 n->net->gen 4096-ptr_max
CAPPED_DATA 0 n->net->gen 1
DATA_SOURCE 0 n $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tn->node_list_lock
LOCK2 bh
TYPE_LOCK (struct tipc_net)->node_list_lock

net/tipc/node.c tipc_node_create() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->lock.dep_map->name 0-255
PARAM_VALUE 0 n->preliminary 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tn->node_list_lock
LOCK2 bh
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct tipc_net)->node_list_lock

net/tipc/node.c tipc_node_create() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->addr 1-u32max
PARAM_VALUE 0 n->bc_entry.link 4096-ptr_max
PARAM_VALUE 0 n->bc_entry.link->acked 0
PARAM_VALUE 0 n->bc_entry.link->ackers 0
PARAM_VALUE 0 n->bc_entry.link->bc_peer_is_up 0
PARAM_VALUE 0 n->bc_entry.link->bc_rcvlink->rcv_nxt 1
PARAM_VALUE 0 n->bc_entry.link->bc_rcvlink->rcv_nxt_state 1
PARAM_VALUE 0 n->bc_entry.link->bc_rcvlink->snd_nxt 1
PARAM_VALUE 0 n->bc_entry.link->bc_rcvlink->snd_nxt_state 1
PARAM_VALUE 0 n->bc_entry.link->bc_rcvlink->state 256
PARAM_VALUE 0 n->bc_entry.link->failover_reasm_skb 0
PARAM_VALUE 0 n->bc_entry.link->in_session 0
PARAM_VALUE 0 n->bc_entry.link->inputq->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 n->bc_entry.link->last_ga 0
PARAM_VALUE 0 n->bc_entry.link->last_gap 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.acked_gen 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.list_gen 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.monitoring 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.peer_gen 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.probing 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.reset 0
PARAM_VALUE 0 n->bc_entry.link->mon_state.synched 0
PARAM_VALUE 0 n->bc_entry.link->rcv_nxt 1
PARAM_VALUE 0 n->bc_entry.link->rcv_nxt_state 1
PARAM_VALUE 0 n->bc_entry.link->rcv_unacked 0
PARAM_VALUE 0 n->bc_entry.link->reasm_buf 0
PARAM_VALUE 0 n->bc_entry.link->reasm_tnlmsg 0
PARAM_VALUE 0 n->bc_entry.link->rst_cnt 0
PARAM_VALUE 0 n->bc_entry.link->silent_intv_cnt 0
PARAM_VALUE 0 n->bc_entry.link->snd_nxt 1
PARAM_VALUE 0 n->bc_entry.link->snd_nxt_state 1
PARAM_VALUE 0 n->bc_entry.link->state 14,256
PARAM_VALUE 0 n->bc_entry.link->stats.accu_queue_sz 0
PARAM_VALUE 0 n->bc_entry.link->stats.deferred_recv 0
PARAM_VALUE 0 n->bc_entry.link->stats.duplicates 0
PARAM_VALUE 0 n->bc_entry.link->stats.link_congs 0
PARAM_VALUE 0 n->bc_entry.link->stats.max_queue_sz 0
PARAM_VALUE 0 n->bc_entry.link->stats.queue_sz_counts 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_bundled 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_bundles 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_fragmented 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_fragments 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_nacks 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_pkts 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_probes 0
PARAM_VALUE 0 n->bc_entry.link->stats.recv_states 0
PARAM_VALUE 0 n->bc_entry.link->stats.retransmitted 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_acks 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_bundled 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_bundles 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_fragmented 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_fragments 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_nacks 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_pkts 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_probes 0
PARAM_VALUE 0 n->bc_entry.link->stats.sent_states 0
PARAM_VALUE 0 n->bc_entry.link->wakeupq.qlen 0
PARAM_VALUE 0 n->hash.pprev 4096-ptr_max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->list.next 4096-ptr_max
PARAM_VALUE 0 n->list.next->prev 4096-ptr_max
PARAM_VALUE 0 n->lock.dep_map->name 0-255
PARAM_VALUE 0 n->lock.owner (-1)
PARAM_VALUE 0 n->lock.owner_cpu u32max
PARAM_VALUE 0 n->lock.raw_lock.wlocked 0
PARAM_VALUE 0 n->preliminary 0
PARAM_VALUE 0 *n->bc_entry.link->failover_reasm_skb->sk->sk_callback_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *n->bc_entry.link->name 0-255
PARAM_VALUE 0 *n->bc_entry.link->reasm_buf->sk->sk_callback_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *n->bc_entry.link->reasm_tnlmsg->sk->sk_callback_lock.owner (-4611686018427387904)-4611686018427387903
NOSPEC 0 n->addr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 n->addr 1-u32max[c]
USER_DATA 0 n->peer_hash_mix 0-u32max
LOCK2 &tn->node_list_lock
HALF_LOCKED2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct tipc_net)->node_list_lock

net/tipc/node.c tipc_node_link_down() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->bc_entry.link->acked 0-u16max
PARAM_VALUE 0 n->bc_entry.link->ackers 0-u16max
PARAM_VALUE 0 n->bc_entry.link->bc_peer_is_up 0-1
PARAM_VALUE 0 n->bc_entry.link->cong_acks 0-u16max
PARAM_VALUE 0 n->bc_entry.link->drop_point 0-u16max
PARAM_VALUE 0 n->bc_entry.link->failover_reasm_skb 0-s64max
PARAM_VALUE 0 n->bc_entry.link->in_session 0-1
PARAM_VALUE 0 n->bc_entry.link->last_gap 0-u16max
PARAM_VALUE 0 n->bc_entry.link->mtu s32min-4294967295
PARAM_VALUE 0 n->bc_entry.link->nack_state 0-255
PARAM_VALUE 0 n->bc_entry.link->net_plane 0-255
PARAM_VALUE 0 n->bc_entry.link->peer_bearer_id 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->peer_caps 0-u16max
PARAM_VALUE 0 n->bc_entry.link->peer_session 0-u16max
PARAM_VALUE 0 n->bc_entry.link->priority 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->rcv_nxt 0-u16max
PARAM_VALUE 0 n->bc_entry.link->rcv_nxt_state 0-u16max
PARAM_VALUE 0 n->bc_entry.link->rcv_unacked 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->reasm_tnlmsg 0-s64max
PARAM_VALUE 0 n->bc_entry.link->rst_cnt 0-u16max
PARAM_VALUE 0 n->bc_entry.link->session 0-u16max
PARAM_VALUE 0 n->bc_entry.link->silent_intv_cnt 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->snd_nxt 0-u16max
PARAM_VALUE 0 n->bc_entry.link->snd_nxt_state 0-u16max
PARAM_VALUE 0 n->bc_entry.link->ssthresh 0-u16max
PARAM_VALUE 0 n->bc_entry.link->state 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->tolerance 0-4294967295
PARAM_VALUE 0 n->bc_entry.link->window 0-u16max
BUF_SIZE 0 n (-1),1464
BUF_SIZE 0 n (-1),1464
CAPPED_DATA 0 n 1
DATA_SOURCE 0 n $0
NOSPEC 0 n->addr
NOSPEC 0 n->signature
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 n->addr 1-u32max[c]
USER_DATA 0 n->capabilities 0-u16max[c]
USER_DATA 0 n->peer_hash_mix 0-u32max
USER_DATA 0 n->signature 0-u16max[c]
HALF_LOCKED2 rcu_read

net/tipc/node.c tipc_node_link_up() -> tipc_node_write_lock()

Type Parameter Key Value
DATA_SOURCE 0 n $0
NOCHECK_CALL

net/tipc/node.c tipc_node_pre_cleanup_net() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->peer_net 4096-ptr_max
CAPPED_DATA 0 n->peer_net 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tn->node_list_lock
LOCK2 bh
LOCK2 global &pernet_ops_rwsem
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tipc_net)->node_list_lock

net/tipc/node.c tipc_node_remove_conn() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->addr 1-u32max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->preliminary 0
CAPPED_DATA 0 n->addr 1
DATA_SOURCE 0 n r tipc_node_find
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

net/tipc/node.c tipc_node_subscribe() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->addr 1-u32max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->preliminary 0
CAPPED_DATA 0 n->addr 1
DATA_SOURCE 0 n r tipc_node_find
NOSPEC 0 n->addr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 n->addr 1-u32max[c]
LOCK2 &tn->nametbl_lock
LOCK2 bh
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct tipc_net)->nametbl_lock

net/tipc/node.c tipc_node_unsubscribe() -> tipc_node_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 n 4096-ptr_max
PARAM_VALUE 0 n->addr 1-u32max
PARAM_VALUE 0 n->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 n->preliminary 0
CAPPED_DATA 0 n->addr 1
DATA_SOURCE 0 n r tipc_node_find
NOSPEC 0 n->addr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 n->addr 1-u32max[c]
LOCK2 &tn->nametbl_lock
LOCK2 bh
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct tipc_net)->nametbl_lock