Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/bluetooth/hci_sock.c hci_si_event() -> hci_send_to_sock()

Type Parameter Key Value
PARAM_VALUE 0 hdev 0
PARAM_VALUE 1 skb 4096-ptr_max
PARAM_VALUE 1 skb->cb 4096-ptr_max
PARAM_VALUE 1 skb->data 4096-ptr_max
PARAM_VALUE 1 skb->data_len 0
PARAM_VALUE 1 skb->tstamp_type 0
BUF_SIZE 1 skb 0-s32max
BUF_SIZE 1 skb 0-s32max
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 skb r bt_skb_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &hdev->req_lock

net/bluetooth/hci_core.c hci_rx_work() -> hci_send_to_sock()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->promisc.counter s32min-(-1),1-s32max
PARAM_VALUE 0 hdev->rx_q.lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 skb 4096-ptr_max
PARAM_VALUE 1 skb->next 0
PARAM_VALUE 1 skb->prev 0
CAPPED_DATA 0 &hdev->rx_q 1
DATA_SOURCE 1 skb r skb_dequeue
RX_PATH
NOCHECK_CALL
USER_DATA 0 hdev->sent_cmd->data->plen 0-255[u]
HALF_LOCKED2 &pool->lock

net/bluetooth/hci_core.c hci_send_frame() -> hci_send_to_sock()

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->hci_drv->specific_handler_count 0,2
PARAM_VALUE 0 hdev->promisc.counter s32min-(-1),1-s32max
PARAM_VALUE 1 skb 4096-ptr_max
PARAM_VALUE 1 skb->tstamp_type 0
BUF_SIZE 0 hdev (-1),1-u16max
BUF_SIZE 0 hdev (-1),1-u16max
BUF_SIZE 0 hdev->sent_cmd (-1),240
BUF_SIZE 1 skb (-1)-s32max
BUF_SIZE 1 skb (-1)-s32max
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 skb $1
STR_LEN 0 hdev (-1),23,63
STR_LEN 0 hdev (-1),23,63
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 skb->sk->sk_backlog.len
USER_PTR 0 hdev->sent_cmd->data
HALF_LOCKED2 0 &hdev->req_lock