Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/mt76_connac_mac.c mt76_connac2_mac_tx_rate_val() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 2 link_conf 4096-ptr_max
PARAM_VALUE 2 *link_conf->mu_group.membership 0-4294967295
BUF_SIZE 2 link_conf (-1)-0,1176
BUF_SIZE 2 link_conf (-1)-0,1176
CAPPED_DATA 2 link_conf 1
DATA_SOURCE 2 link_conf $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
USER_DATA 2 link_conf->qos 0-1[c]
HALF_LOCKED2 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt7996/mcu.c mt7996_mcu_set_timing() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 1 vif 4096-ptr_max
PARAM_VALUE 1 vif->drv_priv 4096-ptr_max
PARAM_VALUE 2 link_conf 4096-ptr_max
PARAM_VALUE 2 link_conf->bssid 4096-ptr_max
PARAM_VALUE 2 *link_conf->mu_group.membership 0-4294967295
CAPPED_DATA 2 link_conf 1
DATA_SOURCE 1 vif $1
DATA_SOURCE 2 link_conf $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vif->active_links 0-u16max[c]
USER_DATA 1 vif->bss_conf.qos 0-1[c]
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0-1[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
NO_OVERFLOW_SIMPLE 1 vif->active_links
LOCK2 &dev->mt76.mutex
TYPE_LOCK (struct mt76_dev)->mutex

drivers/net/wireless/mediatek/mt76/mt7996/mcu.c mt7996_vif_conf_link() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 vif 4096-ptr_max
PARAM_VALUE 1 vif->drv_priv 4096-ptr_max
PARAM_VALUE 2 link_conf 1-u64max
PARAM_VALUE 2 *link_conf->mu_group.membership 0-4294967295
BUF_SIZE 2 link_conf (-1),1176
BUF_SIZE 2 link_conf (-1),1176
CAPPED_DATA 2 link_conf 1
DATA_SOURCE 1 vif $1
DATA_SOURCE 2 link_conf $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vif->active_links 0-u16max[c]
USER_DATA 1 vif->bss_conf.qos 0-1[c]
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
HALF_LOCKED2 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt7996/main.c mt7996_get_rates_table() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 2 link_conf 4096-ptr_max
PARAM_VALUE 2 link_conf->bssid 4096-ptr_max
PARAM_VALUE 2 *link_conf->mu_group.membership 0-4294967295
CAPPED_DATA 2 link_conf 1
DATA_SOURCE 2 link_conf $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0-1[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
LOCK2 &dev->mt76.mutex
TYPE_LOCK (struct mt76_dev)->mutex

drivers/net/wireless/mediatek/mt76/mt7996/main.c mt7996_vif_conf_link() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 vif 4096-ptr_max
PARAM_VALUE 2 *link_conf->mu_group.membership 0-4294967295
DATA_SOURCE 1 vif $1
DATA_SOURCE 2 link_conf $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vif->active_links 0-u16max[c]
USER_DATA 1 vif->bss_conf.qos 0-1[c]
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0-1[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
NO_OVERFLOW_SIMPLE 1 vif->active_links
LOCK2 &dev->mt76.mutex
TYPE_LOCK (struct mt76_dev)->mutex

drivers/net/wireless/mediatek/mt76/channel.c mt76_assign_vif_chanctx() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 vif 4096-ptr_max
PARAM_VALUE 1 vif->addr 4096-ptr_max
PARAM_VALUE 1 vif->drv_priv 4096-ptr_max
PARAM_VALUE 2 link_conf 4096-ptr_max
CAPPED_DATA 0 &dev->mutex 1
CAPPED_DATA 1 vif 1
CAPPED_DATA 2 link_conf 1
DATA_SOURCE 1 vif $1
DATA_SOURCE 2 link_conf $2
TASK_NOT_RUNNING
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
NO_OVERFLOW_SIMPLE 0 dev->scan.vif->active_links
LOCK2 0 &dev->mutex
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct mt76_dev)->mutex

drivers/net/wireless/mediatek/mt76/channel.c mt76_switch_vif_chanctx() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 0 dev->mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mutex.wait_lock.owner_cpu u32max
CAPPED_DATA 0 &dev->mutex 1
TASK_NOT_RUNNING
LOCK2 0 &dev->mutex
TYPE_LOCK (struct mt76_dev)->mutex

drivers/net/wireless/mediatek/mt76/channel.c mt76_unassign_vif_chanctx() -> mt76_vif_conf_link()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 vif 4096-ptr_max
PARAM_VALUE 1 vif->addr 4096-ptr_max
PARAM_VALUE 1 vif->type 0-11,13-u32max
PARAM_VALUE 2 link_conf 4096-ptr_max
PARAM_VALUE 2 link_conf->chanctx_conf 1-u64max
CAPPED_DATA 0 &dev->mutex 1
CAPPED_DATA 1 vif 1
DATA_SOURCE 1 vif $1
DATA_SOURCE 2 link_conf $2
FUZZY_MAX 1 vif->type 6
TASK_NOT_RUNNING
USER_DATA 2 link_conf->npca.init_qsrc 0-3[c]
USER_DATA 2 link_conf->npca.min_dur_thresh 0-15[c]
USER_DATA 2 link_conf->npca.moplen 0[c]
USER_DATA 2 link_conf->npca.switch_back_delay 0-63[c]
USER_DATA 2 link_conf->npca.switch_delay 0-63[c]
NO_OVERFLOW_SIMPLE 0 dev->scan.vif->active_links
LOCK2 0 &dev->mutex
TYPE_LOCK (struct mt76_dev)->mutex