Documented in 1 files:
Defined in 1 files as a function:
Referenced in 3 files:
Smatch caller information:
net/batman-adv/bat_iv_ogm.c batadv_iv_gw_dump_entry() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| CAPPED_DATA | 0 | gw_node | 1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | &nlk->nl_cb_mutex | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock | ||
| TYPE_LOCK | (struct netlink_sock)->nl_cb_mutex |
net/batman-adv/bat_iv_ogm.c batadv_iv_gw_get_best_gw_node() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/batman-adv/bat_iv_ogm.c batadv_iv_gw_get_best_gw_node() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/batman-adv/bat_iv_ogm.c batadv_iv_gw_get_best_gw_node() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/batman-adv/gateway_client.c batadv_gw_check_client_stop() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| DATA_SOURCE | 0 | gw_node | r batadv_gw_get_selected_gw_node |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/batman-adv/gateway_client.c batadv_gw_election() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| CAPPED_DATA | 0 | gw_node | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/batman-adv/gateway_client.c batadv_gw_election() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| CAPPED_DATA | 0 | gw_node | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/batman-adv/gateway_client.c batadv_gw_get_selected_orig() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| DATA_SOURCE | 0 | gw_node | r batadv_gw_get_selected_gw_node |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/batman-adv/gateway_client.c batadv_gw_node_add() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->bandwidth_down | 1-u32max |
| PARAM_VALUE | 0 | gw_node->list.pprev | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| BUF_SIZE | 0 | gw_node | 56 |
| BUF_SIZE | 0 | gw_node->orig_node | (-1),1656 |
| DATA_SOURCE | 0 | gw_node | r _kzalloc_noprof |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | gw_node->bandwidth_down | 1-u32max |
| USER_DATA | 0 | gw_node->bandwidth_up | 0-u32max |
| USER_DATA | 0 | gw_node->orig_node->last_ttvn | 0-255[u] |
| USER_DATA | 0 | gw_node->orig_node->mcast_flags | 1-255 |
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | list_lock | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock |
net/batman-adv/gateway_client.c batadv_gw_node_free() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock |
net/batman-adv/gateway_client.c batadv_gw_node_free() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->list.pprev | 0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock |
net/batman-adv/gateway_client.c batadv_gw_node_update() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->bandwidth_down | 0 |
| PARAM_VALUE | 0 | gw_node->list->next->pprev | 1-u64max |
| PARAM_VALUE | 0 | gw_node->list.pprev | 0 |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| DATA_SOURCE | 0 | gw_node | r batadv_gw_node_get |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | gw_node->bandwidth_down | 0 |
| USER_DATA | 0 | gw_node->bandwidth_up | 0-u32max |
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | list_lock | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock |
net/batman-adv/gateway_client.c batadv_gw_node_update() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| CAPPED_DATA | 0 | gw_node | 1 |
| DATA_SOURCE | 0 | gw_node | r batadv_gw_get_selected_gw_node |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | list_lock |
net/batman-adv/gateway_client.c batadv_gw_node_update() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| CAPPED_DATA | 0 | gw_node | 1 |
| DATA_SOURCE | 0 | gw_node | r batadv_gw_node_get |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | gw_node->bandwidth_down | 0-u32max |
| USER_DATA | 0 | gw_node->bandwidth_up | 0-u32max |
| HALF_LOCKED2 | list_lock |
net/batman-adv/gateway_client.c batadv_gw_out_of_range() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &mesh_iface->tx_global_lock | ||
| HALF_LOCKED2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
net/batman-adv/gateway_client.c batadv_gw_out_of_range() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &mesh_iface->tx_global_lock | ||
| HALF_LOCKED2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
net/batman-adv/gateway_client.c batadv_gw_select() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock |
net/batman-adv/bat_v.c batadv_v_gw_dump_entry() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| CAPPED_DATA | 0 | gw_node | 1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &bat_priv->gw.list_lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | &nlk->nl_cb_mutex | ||
| TYPE_LOCK | (struct batadv_priv_gw)->list_lock | ||
| TYPE_LOCK | (struct netlink_sock)->nl_cb_mutex |
net/batman-adv/bat_v.c batadv_v_gw_get_best_gw_node() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/batman-adv/bat_v.c batadv_v_gw_get_best_gw_node() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/batman-adv/bat_v.c batadv_v_gw_is_eligible() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| DATA_SOURCE | 0 | gw_node | r batadv_gw_node_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/batman-adv/bat_v.c batadv_v_gw_is_eligible() -> batadv_gw_node_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | gw_node | 0,4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->orig_node | 4096-ptr_max |
| PARAM_VALUE | 0 | gw_node->refcount.refcount.refs.counter | (-1073741824),0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |