Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/bluetooth/mgmt.c add_device() -> hci_update_scan()

Type Parameter Key Value
PARAM_VALUE 0 hdev 0,4096-ptr_max
PARAM_VALUE 0 hdev->accept_list.next 4096-ptr_max
PARAM_VALUE 0 hdev->accept_list.next->next 4096-ptr_max
PARAM_VALUE 0 hdev->accept_list.next->prev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
CAPPED_DATA 0 &hdev->accept_list 1
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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/mgmt.c remove_device() -> hci_update_scan()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
CAPPED_DATA 0 &hdev->accept_list 1
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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/mgmt.c remove_device() -> hci_update_scan()

Type Parameter Key Value
PARAM_VALUE 0 hdev 0,4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
CAPPED_DATA 0 &hdev->accept_list 1
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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/mgmt.c set_connectable_update_settings() -> hci_update_scan()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mgmt_chan_list_lock
LOCK2 sk
LOCK2 0 &hdev->lock
HALF_LOCKED2 &vq->mutex
TYPE_LOCK (struct hci_dev)->lock

net/bluetooth/hci_event.c hci_conn_complete_evt() -> hci_update_scan()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->hci_drv->specific_handler_count 0,2
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 hdev->recv_event 0,4096-ptr_max
PARAM_VALUE 0 hdev->recv_event->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 hdev->recv_event->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 hdev->recv_event->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 hdev->recv_event->sk->sk_bpf_storage->owner_refcnt.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->recv_event->sk->sk_rcu.func 1-u64max
PARAM_VALUE 0 hdev->req_skb 0,4096-ptr_max
PARAM_VALUE 0 hdev->rx_q.lock.rlock.dep_map->name 0-255
BUF_SIZE 0 hdev->recv_event (-1),240
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $0
RX_PATH
NOCHECK_CALL
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->prev->data_len
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->end
USER_PTR 0 hdev->recv_event->data
LOCK2 0 &hdev->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hci_dev)->lock

net/bluetooth/hci_event.c hci_disconn_complete_evt() -> hci_update_scan()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 hdev->recv_event 0,4096-ptr_max
PARAM_VALUE 0 hdev->recv_event->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 hdev->recv_event->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 hdev->recv_event->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 hdev->recv_event->sk->sk_bpf_storage->owner_refcnt.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->recv_event->sk->sk_rcu.func 1-u64max
PARAM_VALUE 0 hdev->req_skb 0,4096-ptr_max
PARAM_VALUE 0 hdev->rx_q.lock.rlock.dep_map->name 0-255
BUF_SIZE 0 hdev->recv_event (-1),240
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $0
RX_PATH
NOCHECK_CALL
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->prev->data_len
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->end
USER_PTR 0 hdev->recv_event->data
LOCK2 0 &hdev->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hci_dev)->lock