Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/usb/gadget/function/f_loopback.c alloc_requests() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->comp_desc 0,4096-ptr_max
PARAM_VALUE 0 ep->comp_desc->bDescriptorType 48
PARAM_VALUE 0 ep->desc 4096-ptr_max
PARAM_VALUE 0 ep->desc->bEndpointAddress 128-255
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 0 ep->maxpacket 0-2047
PARAM_VALUE 0 ep->ops 4096-ptr_max
PARAM_VALUE 0 ep->ops->alloc_request 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->complete 6424262469672239104
PARAM_VALUE 1 req->context 4096-ptr_max
BUF_SIZE 1 req 104
BUF_SIZE 1 req->context 104
CAPPED_DATA 0 ep->address 1
DATA_SOURCE 1 req r lb_alloc_ep_req
NOCHECK_CALL

drivers/usb/gadget/function/f_loopback.c loopback_complete() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req->buf (-1)-1000000000,2147479552
BUF_SIZE 1 req->context (-1),96
DATA_SOURCE 0 ep $0 [m]
DATA_SOURCE 1 req $1 [m]
NOSPEC 1 req->actual
NOSPEC 1 req->length
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 req->actual 0-u32max[c]
HOST_DATA 1 req->frame_number 0-16383[c]
HOST_DATA 1 req->length 0-u32max[c]
HOST_DATA 1 req->zero 0-1
USER_DATA 1 req->actual 0-64
USER_DATA 1 req->length 0-u32max
USER_DATA 1 req->zero 0-1[c]
USER_DATA 1 *req->buf s64min-s64max
NO_OVERFLOW_SIMPLE 1 req->dma
NO_OVERFLOW_SIMPLE 1 req->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 req->status
UNITS 1 req unit_byte
USER_PTR 1 req->buf
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &pdev->lock
HALF_LOCKED2 &priv_dev->lock
HALF_LOCKED2 &udc->lock
HALF_LOCKED2 cdev_flags
HALF_LOCKED2 flags

drivers/usb/gadget/function/f_hid.c f_hidg_intout_read() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->length 0-u16max
CAPPED_DATA 1 req->actual 1
NOCHECK_CALL

drivers/usb/gadget/function/f_hid.c f_hidg_write() -> free_ep_req()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
USER_DATA 1 *req->buf s64min-s64max
USER_PTR 1 req->buf
LOCK2 &hidg->write_spinlock
LOCK2 flags
TYPE_LOCK (struct f_hidg)->write_spinlock

drivers/usb/gadget/function/f_hid.c hidg_bind() -> free_ep_req()

Type Parameter Key Value
BUF_SIZE 0 ep (-1),72
BUF_SIZE 0 ep (-1),72
BIT_INFO 1 req 0x0,0x0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 ep->address 0-255[u]

drivers/usb/gadget/function/f_hid.c hidg_disable() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hidg->read_spinlock
LOCK2 flags
TYPE_LOCK (struct f_hidg)->read_spinlock

drivers/usb/gadget/function/f_hid.c hidg_disable() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hidg->write_spinlock
LOCK2 flags
TYPE_LOCK (struct f_hidg)->write_spinlock

drivers/usb/gadget/function/f_hid.c hidg_intout_complete() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->context 4096-ptr_max
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req->buf (-1)-1000000000,2147479552
BUF_SIZE 1 req->context (-1),96
DATA_SOURCE 0 ep $0
DATA_SOURCE 1 req $1
NOSPEC 1 req->actual
NOSPEC 1 req->length
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 req->actual 0-u32max[c]
HOST_DATA 1 req->frame_number 0-16383[c]
HOST_DATA 1 req->length 0-64[c]
HOST_DATA 1 req->zero 0-1
USER_DATA 1 req->actual 0-64
USER_DATA 1 req->length 0-u32max
USER_DATA 1 req->zero 0-1[c]
USER_DATA 1 *req->buf s64min-s64max
NO_OVERFLOW_SIMPLE 1 req->dma
NO_OVERFLOW_SIMPLE 1 req->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 req->status
USER_PTR 1 req->buf
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &pdev->lock
HALF_LOCKED2 &priv_dev->lock
HALF_LOCKED2 &udc->lock
HALF_LOCKED2 cdev_flags
HALF_LOCKED2 flags

drivers/usb/gadget/function/f_hid.c hidg_set_alt() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->comp_desc 0,4096-ptr_max
PARAM_VALUE 0 ep->comp_desc->bDescriptorType 48
PARAM_VALUE 0 ep->desc 4096-ptr_max
PARAM_VALUE 0 ep->desc->bEndpointAddress 128-255
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 0 ep->maxpacket 0-2047
PARAM_VALUE 0 ep->ops 4096-ptr_max
PARAM_VALUE 0 ep->ops->alloc_request 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->complete 6262226951498948608
PARAM_VALUE 1 req->context 4096-ptr_max
BUF_SIZE 1 req 104
CAPPED_DATA 0 ep->address 1
DATA_SOURCE 1 req r hidg_alloc_ep_req
NOCHECK_CALL

drivers/usb/gadget/function/f_hid.c hidg_set_alt() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->comp_desc 0,4096-ptr_max
PARAM_VALUE 0 ep->comp_desc->bDescriptorType 48
PARAM_VALUE 0 ep->desc 4096-ptr_max
PARAM_VALUE 0 ep->desc->bEndpointAddress 128-255
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 0 ep->maxpacket 0-2047
PARAM_VALUE 0 ep->ops 4096-ptr_max
PARAM_VALUE 0 ep->ops->alloc_request 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
BUF_SIZE 1 req 104
CAPPED_DATA 0 ep->address 1
DATA_SOURCE 1 req r hidg_alloc_ep_req
NOCHECK_CALL

drivers/usb/gadget/function/f_midi.c f_midi_complete() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req->buf (-1)-1000000000,2147479552
BUF_SIZE 1 req->context (-1),96
CAPPED_DATA 0 ep 1
CAPPED_DATA 1 req->actual 1
DATA_SOURCE 0 ep $0
DATA_SOURCE 1 req $1
NOSPEC 1 req->actual
NOSPEC 1 req->length
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 req->actual 0-u32max[c]
HOST_DATA 1 req->frame_number 0-16383[c]
HOST_DATA 1 req->length 0-64[c]
HOST_DATA 1 req->zero 0-1
USER_DATA 1 req->actual 0-64[c]
USER_DATA 1 req->length 0-u32max
USER_DATA 1 req->zero 0-1[c]
USER_DATA 1 *req->buf s64min-s64max
NO_OVERFLOW_SIMPLE 1 req->dma
NO_OVERFLOW_SIMPLE 1 req->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 req->status
USER_PTR 1 req->buf
HALF_LOCKED2 &pdev->lock
HALF_LOCKED2 &priv_dev->lock
HALF_LOCKED2 &udc->lock
HALF_LOCKED2 flags

drivers/usb/gadget/function/f_midi.c f_midi_disable() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 1 req->buf 0
BUF_SIZE 1 req 0
BIT_INFO 1 req 0x0,0x0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/gadget/function/f_midi.c f_midi_set_alt() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->comp_desc 0,4096-ptr_max
PARAM_VALUE 0 ep->comp_desc->bDescriptorType 48
PARAM_VALUE 0 ep->desc 4096-ptr_max
PARAM_VALUE 0 ep->desc->bEndpointAddress 128-255
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 0 ep->maxpacket 0-2047
PARAM_VALUE 0 ep->ops 4096-ptr_max
PARAM_VALUE 0 ep->ops->alloc_request 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->buf 1-u64max
PARAM_VALUE 1 req->complete 5101740866742484992
BUF_SIZE 1 req 104
CAPPED_DATA 0 ep->address 1
DATA_SOURCE 1 req r midi_alloc_ep_req
NOCHECK_CALL

drivers/usb/gadget/function/f_sourcesink.c source_sink_complete() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 0 ep (-1),64,72,640,1744
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req s32min,(-1)-s32max
BUF_SIZE 1 req->buf (-1)-1000000000,2147479552
BUF_SIZE 1 req->context (-1),96
CAPPED_DATA 0 ep 1
DATA_SOURCE 0 ep $0
DATA_SOURCE 1 req $1
NOSPEC 1 req->actual
NOSPEC 1 req->length
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 req->actual 0-u32max[c]
HOST_DATA 1 req->frame_number 0-16383[c]
HOST_DATA 1 req->length 0-64[c]
HOST_DATA 1 req->zero 0-1
USER_DATA 1 req->actual 0-64[c]
USER_DATA 1 req->length 0-u32max
USER_DATA 1 req->zero 0-1[c]
USER_DATA 1 *req->buf s64min-s64max
NO_OVERFLOW_SIMPLE 1 req->dma
NO_OVERFLOW_SIMPLE 1 req->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 req->status
USER_PTR 1 req->buf
HALF_LOCKED2 &pdev->lock
HALF_LOCKED2 &priv_dev->lock
HALF_LOCKED2 &udc->lock
HALF_LOCKED2 flags

drivers/usb/gadget/function/f_sourcesink.c source_sink_start_ep() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->comp_desc 0,4096-ptr_max
PARAM_VALUE 0 ep->desc 4096-ptr_max
PARAM_VALUE 0 ep->desc->bEndpointAddress 128-255
PARAM_VALUE 0 ep->driver_data 4096-ptr_max
PARAM_VALUE 0 ep->maxpacket 0-2047
PARAM_VALUE 0 ep->ops 4096-ptr_max
PARAM_VALUE 0 ep->ops->alloc_request 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->complete 220668763218833408
BUF_SIZE 1 req 104
DATA_SOURCE 1 req r ss_alloc_ep_req
NOCHECK_CALL

drivers/usb/gadget/function/f_midi2.c f_midi2_free_ep_reqs() -> free_ep_req()

Type Parameter Key Value
PARAM_VALUE 1 req 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL