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_uuid() -> hci_cmd_sync_submit()

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
PARAM_VALUE 0 hdev->mgmt_pending_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->uuids.prev 4096-ptr_max
PARAM_VALUE 0 hdev->uuids.prev->next 4096-ptr_max
PARAM_VALUE 0 hdev->uuids.prev->next->next 4096-ptr_max
PARAM_VALUE 1 func 4071833639472386048
PARAM_VALUE 2 data 4096-ptr_max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 2 data 80
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
DATA_SOURCE 2 data r mgmt_pending_new
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/mgmt.c remove_adv_monitor() -> hci_cmd_sync_submit()

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
PARAM_VALUE 0 hdev->mgmt_pending_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 func 4985754704273387520
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
DATA_SOURCE 2 data r mgmt_pending_new
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/mgmt.c remove_uuid() -> hci_cmd_sync_submit()

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
PARAM_VALUE 0 hdev->mgmt_pending_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 func 8887221073404067840
PARAM_VALUE 2 data 4096-ptr_max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 2 data 80
CAPPED_DATA 0 &hdev->lock 1
CAPPED_DATA 0 &hdev->uuids 1
DATA_SOURCE 0 hdev $1
DATA_SOURCE 2 data r mgmt_pending_new
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/mgmt.c set_dev_class() -> hci_cmd_sync_submit()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->features 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
PARAM_VALUE 0 hdev->mgmt_pending_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 func 6222567846713946112
PARAM_VALUE 2 data 4096-ptr_max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 2 data 80
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
DATA_SOURCE 2 data r mgmt_pending_new
BIT_INFO 0 hdev->major_class 0x0,0x1f
BIT_INFO 0 hdev->minor_class 0x0,0xfc
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 hdev->major_class 0-255[u]
USER_DATA 0 hdev->minor_class 0-255[u]
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_powered() -> hci_cmd_sync_submit()

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
PARAM_VALUE 0 hdev->mgmt_pending.prev 4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending.prev->next 4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mgmt_pending_lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 func 250130195472863232
PARAM_VALUE 2 data 4096-ptr_max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 2 data 80
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
DATA_SOURCE 2 data r mgmt_pending_add
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_sync.c hci_cmd_sync_queue() -> hci_cmd_sync_submit()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->debugfs->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hdev->debugfs->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 hdev->debugfs->d_parent->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 0 hdev->debugfs->d_parent->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 0 hdev->debugfs->d_parent->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 0 hdev->debugfs->d_parent->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 0 hdev->debugfs->d_parent->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 0 hdev->debugfs->d_sb->__s_d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 0 hdev->hci_drv->specific_handler_count 0,2
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev->dev.parent (-1),1616
BUF_SIZE 0 hdev->discovery.uuids (-1),16-65520
BUF_SIZE 0 hdev->recv_event (-1)-s32max
BUF_SIZE 0 hdev->sent_cmd (-1),240
BUF_SIZE 2 data (-1),1,4,7,12,16,40,80,96,5104
BUF_SIZE 2 data (-1),1,4,7,12,16,40,80,96,5104
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 func $1
DATA_SOURCE 2 data $2
DATA_SOURCE 3 destroy $3
STR_LEN 0 hdev (-1),23,63
STR_LEN 0 hdev (-1),23,63
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 hdev->appearance 0-u16max[u]
USER_DATA 0 hdev->devid_product 0-u16max[u]
USER_DATA 0 hdev->devid_source 0-2[u]
USER_DATA 0 hdev->devid_vendor 0-u16max[u]
USER_DATA 0 hdev->devid_version 0-u16max[u]
USER_DATA 0 hdev->discov_timeout 0-u16max[u]
USER_DATA 0 hdev->discovery.rssi (-128)-127[u]
USER_DATA 0 hdev->discovery.type 1,6-7[u]
USER_DATA 0 hdev->discovery.uuid_count 0-4095[u]
NO_OVERFLOW_SIMPLE 0 hdev->adv_data_len
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
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->tail
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->prev->truesize
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->tail
NO_OVERFLOW_SIMPLE 0 hdev->cmd_q.next->truesize
NO_OVERFLOW_SIMPLE 0 hdev->dump.alloc_size
NO_OVERFLOW_SIMPLE 0 hdev->scan_rsp_data_len
UNITS 2 data unit_byte
USER_PTR 0 hdev->recv_event->data
USER_PTR 0 hdev->sent_cmd->data
HALF_LOCKED2 &conn->lock
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 &msft->filter_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &mgmt_chan_list_lock
HALF_LOCKED2 sk
HALF_LOCKED2 0 &hdev->cmd_sync_work_lock
HALF_LOCKED2 0 &hdev->lock
HALF_LOCKED2 0 &hdev->req_lock

net/bluetooth/hci_sync.c hci_cmd_sync_run() -> hci_cmd_sync_submit()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->cmd_sync_work_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->cmd_sync_work_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->cmd_sync_work_lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 func 50068999998357504
PARAM_VALUE 2 data 4096-ptr_max
PARAM_VALUE 3 destroy 1-u64max
BUF_SIZE 2 data (-1),1,3-8196
BUF_SIZE 2 data (-1),1,3-8196
CAPPED_DATA 2 data 1
CAPPED_DATA 3 destroy 1
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 func $1
DATA_SOURCE 2 data $2
DATA_SOURCE 3 destroy $3
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 &hdev->req_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &mgmt_chan_list_lock
HALF_LOCKED2 sk