Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 rdev 4096-ptr_max
PARAM_VALUE 0 rdev->ops 4096-ptr_max
PARAM_VALUE 0 rdev->ops->scan 1-u64max
PARAM_VALUE 0 rdev->scan_msg 0
PARAM_VALUE 0 rdev->scan_req 4096-ptr_max
PARAM_VALUE 0 rdev->scan_req->req.n_channels 1-s32max
PARAM_VALUE 0 rdev->scan_req->req.n_ssids 0-255
PARAM_VALUE 0 rdev->scan_req->req.wdev 4096-ptr_max
PARAM_VALUE 0 rdev->scan_req->req.wiphy 4096-ptr_max
PARAM_VALUE 0 rdev->wiphy.bands 4096-ptr_max
BUF_SIZE 0 rdev s32min-(-2),1-s32max
BUF_SIZE 0 rdev s32min-(-2),1-s32max
BUF_SIZE 0 rdev->scan_req 0-u64max
CAPPED_DATA 0 rdev->scan_req->req.n_channels 1
CAPPED_DATA 0 rdev->scan_req->req.n_ssids 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 rdev->scan_req->req.n_ssids
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/sme.c cfg80211_conn_scan() -> cfg80211_scan()

Type Parameter Key Value
PARAM_VALUE 0 rdev 4096-ptr_max
PARAM_VALUE 0 rdev->scan_msg 0
PARAM_VALUE 0 rdev->scan_req 4096-ptr_max
PARAM_VALUE 0 rdev->scan_req->req.n_channels 0-s32max
PARAM_VALUE 0 rdev->scan_req->req.n_ssids 1
PARAM_VALUE 0 rdev->scan_req->req.ssids 4096-ptr_max
PARAM_VALUE 0 rdev->scan_req->req.wdev 4096-ptr_max
PARAM_VALUE 0 rdev->scan_req->req.wiphy 4096-ptr_max
BUF_SIZE 0 rdev->scan_req 0-u64max
DATA_SOURCE 0 rdev r wiphy_to_rdev
HALF_LOCKED2 &rdev->wiphy.mtx
TYPE_LOCK (struct wiphy)->mtx