Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/net/wireless/ath/ath10k/htt_tx.c ath10k_htt_mgmt_tx() -> ath10k_htt_tx_free_msdu_id()

Type Parameter Key Value
PARAM_VALUE 0 htt 4096-ptr_max
PARAM_VALUE 0 htt->ar 4096-ptr_max
PARAM_VALUE 0 htt->ar->htc.ar 4096-ptr_max
PARAM_VALUE 0 htt->tx_lock.rlock.dep_map->name 0-255
BUF_SIZE 0 htt 1560
CAPPED_DATA 0 htt->pending_tx.idr_base 1
DATA_SOURCE 0 htt $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 htt->pending_tx.idr_rt.xa_flags 0-u32max
LOCK2 bh
LOCK2 0 &htt->tx_lock
HALF_LOCKED2 &ar->conf_mutex
TYPE_LOCK (struct ath10k_htt)->tx_lock

drivers/net/wireless/ath/ath10k/htt_tx.c ath10k_htt_tx_32() -> ath10k_htt_tx_free_msdu_id()

Type Parameter Key Value
PARAM_VALUE 0 htt 4096-ptr_max
PARAM_VALUE 0 htt->ar 4096-ptr_max
PARAM_VALUE 0 htt->ar->ce_priv->ce_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 htt->ar->drv_priv->wr_async_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 htt->ar->hif.ops 4096-ptr_max
PARAM_VALUE 0 htt->ar->hif.ops->tx_sg 4096-ptr_max
PARAM_VALUE 0 htt->ar->htc.endpoint 4096-ptr_max
PARAM_VALUE 0 htt->ar->normal_mode_fw.fw_file.firmware_swap_code_seg_info->seg_hw_info.num_segs 0-1
PARAM_VALUE 0 htt->ar->wmi.cmd->pdev_pktlog_disable_cmdid 16389,36872,36874
PARAM_VALUE 0 htt->ar->wmi.cmd->pdev_set_param_cmdid 16387,36870,36872
PARAM_VALUE 0 htt->ar->wmi.cmd->pdev_suspend_cmdid 36938-36939,36949,69633
PARAM_VALUE 0 htt->tx_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 htt->tx_ops 4096-ptr_max
BUF_SIZE 0 htt 1560
CAPPED_DATA 0 htt->pending_tx.idr_base 1
DATA_SOURCE 0 htt $0
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 htt->pending_tx.idr_rt.xa_flags 0-u32max
LOCK2 bh
LOCK2 0 &htt->tx_lock
HALF_LOCKED2 &ar->conf_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ath10k_htt)->tx_lock

drivers/net/wireless/ath/ath10k/htt_tx.c ath10k_htt_tx_64() -> ath10k_htt_tx_free_msdu_id()

Type Parameter Key Value
PARAM_VALUE 0 htt 4096-ptr_max
PARAM_VALUE 0 htt->ar 4096-ptr_max
PARAM_VALUE 0 htt->ar->ce_priv->ce_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 htt->ar->drv_priv->wr_async_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 htt->ar->hif.ops 4096-ptr_max
PARAM_VALUE 0 htt->ar->hif.ops->tx_sg 4096-ptr_max
PARAM_VALUE 0 htt->ar->htc.endpoint 4096-ptr_max
PARAM_VALUE 0 htt->ar->normal_mode_fw.fw_file.firmware_swap_code_seg_info->seg_hw_info.num_segs 0-1
PARAM_VALUE 0 htt->ar->wmi.cmd->pdev_pktlog_disable_cmdid 16389,36872,36874
PARAM_VALUE 0 htt->ar->wmi.cmd->pdev_set_param_cmdid 16387,36870,36872
PARAM_VALUE 0 htt->ar->wmi.cmd->pdev_suspend_cmdid 36938-36939,36949,69633
PARAM_VALUE 0 htt->tx_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 htt->tx_ops 4096-ptr_max
BUF_SIZE 0 htt 1560
CAPPED_DATA 0 htt->pending_tx.idr_base 1
DATA_SOURCE 0 htt $0
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 htt->pending_tx.idr_rt.xa_flags 0-u32max
LOCK2 bh
LOCK2 0 &htt->tx_lock
HALF_LOCKED2 &ar->conf_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ath10k_htt)->tx_lock

drivers/net/wireless/ath/ath10k/txrx.c ath10k_txrx_tx_unref() -> ath10k_htt_tx_free_msdu_id()

Type Parameter Key Value
PARAM_VALUE 0 htt 4096-ptr_max
PARAM_VALUE 0 htt->ar 4096-ptr_max
PARAM_VALUE 0 htt->max_num_pending_tx 1-s32max
PARAM_VALUE 0 htt->tx_lock.rlock.dep_map->name 0-255
BUF_SIZE 0 htt (-1),1560
BUF_SIZE 0 htt (-1),1560
CAPPED_DATA 1 msdu_id 1
DATA_SOURCE 0 htt $0
PARAM_COMPARE 0 htt->max_num_pending_tx > $1
PARAM_COMPARE 1 msdu_id < $0->max_num_pending_tx
CONSTRAINT 1 msdu_id <1063
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 htt->target_version_major 0-255[u]
USER_DATA 0 htt->target_version_minor 0-255[u]
USER_DATA 1 msdu_id 0-u16max[c]
UNITS 1 msdu_id unit_array_size
LOCK2 bh
LOCK2 0 &htt->tx_lock
TYPE_LOCK (struct ath10k_htt)->tx_lock