Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

drivers/net/wireless/virtual/mac80211_hwsim_main.c ieee80211_hwsim_wake_tx_queue() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 0 hw 4096-ptr_max
PARAM_VALUE 1 txq 4096-ptr_max
PARAM_VALUE 1 txq->vif 4096-ptr_max
BUF_SIZE 0 hw s32min-(-1),1-s32max
BUF_SIZE 0 hw s32min-(-1),1-s32max
DATA_SOURCE 0 hw $0
DATA_SOURCE 1 txq $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/wireless/virtual/mac80211_hwsim_main.c ieee80211_hwsim_wake_tx_queue() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 0 hw 4096-ptr_max
PARAM_VALUE 1 txq 4096-ptr_max
PARAM_VALUE 1 txq->vif 4096-ptr_max
BUF_SIZE 0 hw s32min-(-1),1-s32max
BUF_SIZE 0 hw s32min-(-1),1-s32max
DATA_SOURCE 0 hw $0
DATA_SOURCE 1 txq $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/wireless/ath/ath10k/mac.c ieee80211_tx_dequeue_ni() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 0 hw 4096-ptr_max
PARAM_VALUE 1 txq 4096-ptr_max
BUF_SIZE 1 txq (-1)-0,24
BUF_SIZE 1 txq (-1)-0,24
DATA_SOURCE 0 hw $0
DATA_SOURCE 1 txq $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 rcu_read

drivers/net/wireless/intel/iwlwifi/mld/tx.c iwl_mld_tx_from_txq() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 1 txq 4096-ptr_max
DATA_SOURCE 1 txq $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/wireless/intel/iwlwifi/mld/tx.c iwl_mld_tx_from_txq() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 1 txq 4096-ptr_max
PARAM_VALUE 1 txq->vif 4096-ptr_max
DATA_SOURCE 1 txq $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

net/mac80211/util.c wake_tx_push_queue() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 0 hw 4096-ptr_max
PARAM_VALUE 1 txq 4096-ptr_max
BUF_SIZE 1 txq 0,24
BUF_SIZE 1 txq 0,24
DATA_SOURCE 1 txq $2
PREEMPT_ADD
TASK_NOT_RUNNING
LOCK2 &local->handle_wake_tx_queue_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct ieee80211_local)->handle_wake_tx_queue_lock

drivers/net/wireless/realtek/rtw88/tx.c rtw_txq_push() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 1 txq 4096-ptr_max
DATA_SOURCE 1 txq r rtwtxq_to_txq
PREEMPT_ADD
TASK_NOT_RUNNING
LOCK2 &rtwdev->txq_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct rtw_dev)->txq_lock

drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c iwl_mvm_mac_itxq_xmit() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 0 hw 4096-ptr_max
PARAM_VALUE 0 hw->priv 4096-ptr_max
PARAM_VALUE 1 txq->drv_priv 4096-ptr_max
BUF_SIZE 0 hw s32min-(-1),1-s32max
BUF_SIZE 0 hw s32min-(-1),1-s32max
DATA_SOURCE 0 hw $0
DATA_SOURCE 1 txq $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &mvm->mutex
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/tx.c mt76_txq_dequeue() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 1 txq 4096-ptr_max
DATA_SOURCE 1 txq r mtxq_to_txq
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 &hwq->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 rcu_read

drivers/net/wireless/ath/ath9k/xmit.c ath_tid_pull() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 1 txq 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 &tid->txq->axq_lock
HALF_LOCKED2 &txq->axq_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct ath_txq)->axq_lock

drivers/net/wireless/realtek/rtw89/core.c ieee80211_tx_dequeue_ni() -> ieee80211_tx_dequeue()

Type Parameter Key Value
PARAM_VALUE 1 txq 4096-ptr_max
DATA_SOURCE 0 hw $0
DATA_SOURCE 1 txq $1
PREEMPT_ADD <- disables preempt
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock