Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

net/wireless/scan.c cfg80211_scan_6ghz() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 0 wdev 4096-ptr_max
PARAM_VALUE 1 chan 4096-ptr_max
DATA_SOURCE 1 chan r ieee80211_get_channel
BIT_INFO 1 chan->flags 0x0,0xfffffffe
RX_PATH
TASK_NOT_RUNNING

net/wireless/scan.c cfg80211_wext_siwscan() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 1 chan 4096-ptr_max
BIT_INFO 1 chan->flags 0x0,0xfffffffe
LOCK2 global &rtnl_mutex

net/wireless/nl80211.c cfg80211_off_channel_oper_allowed() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 0 wdev 4096-ptr_max
PARAM_VALUE 0 wdev->wiphy 4096-ptr_max
BUF_SIZE 0 wdev s32min-(-2),1-s32max
BUF_SIZE 0 wdev s32min-(-2),1-s32max
DATA_SOURCE 0 wdev $0
DATA_SOURCE 1 chan $1
RX_PATH
TASK_NOT_RUNNING
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 &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/wireless/nl80211.c nl80211_trigger_scan() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 0 wdev 4096-ptr_max
PARAM_VALUE 1 chan 4096-ptr_max
BUF_SIZE 0 wdev s32min-(-2),1-s32max
BUF_SIZE 0 wdev s32min-(-2),1-s32max
DATA_SOURCE 1 chan r ieee80211_get_channel_khz
BIT_INFO 1 chan->flags 0x0,0xf7fffffe
RX_PATH
TASK_NOT_RUNNING
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

net/wireless/nl80211.c nl80211_trigger_scan() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 0 wdev 4096-ptr_max
PARAM_VALUE 1 chan 4096-ptr_max
BUF_SIZE 0 wdev s32min-(-2),1-s32max
BUF_SIZE 0 wdev s32min-(-2),1-s32max
BIT_INFO 1 chan->flags 0x0,0xf7fffffe
RX_PATH
TASK_NOT_RUNNING
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

net/mac80211/scan.c ieee80211_request_ibss_scan() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 0 wdev 4096-ptr_max
PARAM_VALUE 1 chan 4096-ptr_max
BIT_INFO 1 chan->flags 0x0,0xfffffffc
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rdev->wiphy.mtx

net/mac80211/scan.c ieee80211_request_ibss_scan() -> cfg80211_wdev_channel_allowed()

Type Parameter Key Value
PARAM_VALUE 0 wdev 4096-ptr_max
PARAM_VALUE 1 chan 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rdev->wiphy.mtx