Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

net/bluetooth/mgmt.c mgmt_adv_monitor_device_found() -> msft_monitor_supported()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
BUF_SIZE 0 hdev->recv_event (-1)-s32max
CAPPED_DATA 0 &hdev->monitored_devices 1
DATA_SOURCE 0 hdev $0
RX_PATH
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->data_len
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->end
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->len
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->data_len
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->end
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->len
USER_PTR 0 hdev->recv_event->data
LOCK2 0 &hdev->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hci_dev)->lock

net/bluetooth/mgmt.c read_adv_mon_features() -> msft_monitor_supported()

Type Parameter Key Value
PARAM_VALUE 0 hdev 0,4096-ptr_max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &mgmt_chan_list_lock
LOCK2 sk
LOCK2 0 &hdev->lock
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk
TYPE_LOCK (struct hci_dev)->lock

net/bluetooth/hci_core.c hci_get_adv_monitor_offload_ext() -> msft_monitor_supported()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 hdev->adv_data_len
NO_OVERFLOW_SIMPLE 0 hdev->scan_rsp_data_len
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &hdev->req_lock

net/bluetooth/msft.c msft_do_open() -> msft_monitor_supported()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->msft_data 4096-ptr_max
CAPPED_DATA 0 hdev 1
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &hdev->req_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hci_dev)->req_lock

net/bluetooth/msft.c msft_resume_sync() -> msft_monitor_supported()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->msft_data 1-u64max
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &hdev->req_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hci_dev)->req_lock

net/bluetooth/msft.c msft_suspend_sync() -> msft_monitor_supported()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->msft_data 1-u64max
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &hdev->req_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hci_dev)->req_lock