Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/net/wireless/purelifi/plfxlc/usb.c plfxlc_send_packet_from_data_queue() -> plfxlc_usb_wreq_async()

Type Parameter Key Value
PARAM_VALUE 0 usb 4096-ptr_max
PARAM_VALUE 0 usb->sidx 0-8
PARAM_VALUE 0 usb->tx.station 4096-ptr_max
PARAM_VALUE 3 usb_req_id 8
PARAM_VALUE 5 context 4096-ptr_max
BUF_SIZE 0 usb s32min-(-1),1-s32max
BUF_SIZE 0 usb s32min-(-1),1-s32max
BUF_SIZE 1 buffer 1-s32max
CAPPED_DATA 0 usb->sidx 1
DATA_SOURCE 0 usb $0
DATA_SOURCE 5 context r skb_dequeue
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 usb unit_byte
UNITS 1 buffer unit_byte
UNITS 2 buffer_len unit_byte
LOCK2 &tx->lock
LOCK2 flags
TYPE_LOCK (struct plfxlc_usb_tx)->lock

drivers/net/wireless/purelifi/plfxlc/mac.c plfxlc_op_tx() -> plfxlc_usb_wreq_async()

Type Parameter Key Value
PARAM_VALUE 0 usb 4096-ptr_max
PARAM_VALUE 3 usb_req_id 8
PARAM_VALUE 5 context 4096-ptr_max
BUF_SIZE 1 buffer 1-s32max
DATA_SOURCE 5 context $2
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
HOST_DATA 1 *buffer 0-255
HOST_DATA 2 buffer_len 14-s32max[c]
NO_OVERFLOW_SIMPLE 2 buffer_len
UNITS 1 buffer unit_byte
UNITS 2 buffer_len unit_byte
LOCK2 &usb->tx.lock
LOCK2 flags
HALF_LOCKED2 &local->handle_wake_tx_queue_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct plfxlc_usb_tx)->lock