Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/usb/gadget/function/f_fs.c ffs_ep0_read() -> __ffs_ep0_queue_wait()

Type Parameter Key Value
PARAM_VALUE 0 ffs 4096-ptr_max
PARAM_VALUE 0 ffs->ev.waitq.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ffs->mutex.dep_map->name 0-255
PARAM_VALUE 0 ffs->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ffs->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ffs->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ffs->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ffs->state 2
PARAM_VALUE 1 data 0,4096-ptr_max
PARAM_VALUE 2 len 0-u16max
BUF_SIZE 0 ffs s32min-(-2),1-s32max
BUF_SIZE 0 ffs s32min-(-2),1-s32max
BUF_SIZE 1 data 0-u16max
BUF_SIZE 1 data 0-u16max
CAPPED_DATA 0 &ffs->mutex 1
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 2 len $2 [m]
BIT_INFO 0 ffs->ev.setup.bRequestType 0x0,0x7f
NOSPEC 2 len
PREEMPT_ADD <- disables preempt
USER_DATA 2 len 0-65534[c]
UNITS 2 len unit_byte
BYTE_COUNT 1 ==data2 8050
LOCK2 irq
LOCK2 0 &ffs->ev.waitq.lock
HALF_LOCKED2 0 &ffs->mutex
TYPE_LOCK (struct wait_queue_head)->lock

drivers/usb/gadget/function/f_fs.c ffs_ep0_write() -> __ffs_ep0_queue_wait()

Type Parameter Key Value
PARAM_VALUE 0 ffs 4096-ptr_max
PARAM_VALUE 0 ffs->ev.setup.bRequestType 128-255
PARAM_VALUE 0 ffs->ev.waitq.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ffs->mutex.dep_map->name 0-255
PARAM_VALUE 0 ffs->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ffs->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ffs->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ffs->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ffs->state 2
PARAM_VALUE 1 data 0-ptr_max
PARAM_VALUE 2 len 0-u16max
BUF_SIZE 0 ffs s32min-(-2),1-s32max
BUF_SIZE 0 ffs s32min-(-2),1-s32max
BUF_SIZE 1 data (-1),1-1000000000,2147479552
BUF_SIZE 1 data (-1),1-1000000000,2147479552
CAPPED_DATA 0 &ffs->mutex 1
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 1 data r ffs_prepare_buffer
DATA_SOURCE 2 len $2 [m]
BIT_INFO 0 ffs->ev.setup.bRequestType 0x80,0xffffffffffffffff
PREEMPT_ADD <- disables preempt
USER_DATA 1 *data 0-255
USER_DATA 2 len 0-65534[c]
UNITS 2 len unit_byte
USER_PTR 1 data
LOCK2 irq
LOCK2 0 &ffs->ev.waitq.lock
HALF_LOCKED2 0 &ffs->mutex
TYPE_LOCK (struct wait_queue_head)->lock