Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/usb/class/usblp.c usblp_ioctl() -> usblp_set_protocol()

Type Parameter Key Value
PARAM_VALUE 0 usblp 4096-ptr_max
PARAM_VALUE 0 usblp->mut.dep_map->name 0-255
PARAM_VALUE 0 usblp->mut.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 usblp->mut.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 usblp->mut.osq.tail.counter 0-s32max
PARAM_VALUE 0 usblp->mut.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 usblp->mut.wait_lock.owner (-1)
PARAM_VALUE 0 usblp->mut.wait_lock.owner_cpu u32max
PARAM_VALUE 0 usblp->present 1-255
PARAM_VALUE 0 usblp->urbs.suspend_wakeups.counter 0
BUF_SIZE 0 usblp s32min-(-2),1-s32max
BUF_SIZE 0 usblp s32min-(-2),1-s32max
CAPPED_DATA 0 &usblp->mut 1
DATA_SOURCE 1 protocol $2
PARAM_COMPARE 0 &usblp->urbs.urb_list == $0->urbs.urb_list.next
USER_DATA 1 protocol s32min-s32max
LOCK2 0 &usblp->mut
TYPE_LOCK (struct usblp)->mut

drivers/usb/class/usblp.c usblp_ioctl() -> usblp_set_protocol()

Type Parameter Key Value
PARAM_VALUE 0 usblp 4096-ptr_max
PARAM_VALUE 0 usblp->mut.dep_map->name 0-255
PARAM_VALUE 0 usblp->mut.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 usblp->mut.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 usblp->mut.osq.tail.counter 0-s32max
PARAM_VALUE 0 usblp->mut.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 usblp->mut.wait_lock.owner (-1)
PARAM_VALUE 0 usblp->mut.wait_lock.owner_cpu u32max
PARAM_VALUE 0 usblp->present 1-255
PARAM_VALUE 0 usblp->urbs.suspend_wakeups.counter 0
BUF_SIZE 0 usblp s32min-(-2),1-s32max
BUF_SIZE 0 usblp s32min-(-2),1-s32max
CAPPED_DATA 0 &usblp->mut 1
PARAM_COMPARE 0 &usblp->urbs.urb_list == $0->urbs.urb_list.next
NOCHECK_CALL
LOCK2 0 &usblp->mut
TYPE_LOCK (struct usblp)->mut

drivers/usb/class/usblp.c usblp_probe() -> usblp_set_protocol()

Type Parameter Key Value
PARAM_VALUE 0 usblp 4096-ptr_max
PARAM_VALUE 0 usblp->dev 4096-ptr_max
PARAM_VALUE 0 usblp->device_id_string 4096-ptr_max
PARAM_VALUE 0 usblp->ifnum 0-255
PARAM_VALUE 0 usblp->intf 4096-ptr_max
PARAM_VALUE 0 usblp->intf->num_altsetting 0-s32max
PARAM_VALUE 0 usblp->mut.dep_map->name 0-255
PARAM_VALUE 0 usblp->mut.first_waiter 0
PARAM_VALUE 0 usblp->mut.magic 4096-ptr_max
PARAM_VALUE 0 usblp->mut.osq.tail.counter 0
PARAM_VALUE 0 usblp->mut.owner.counter 0
PARAM_VALUE 0 usblp->readbuf 4096-ptr_max
PARAM_VALUE 0 usblp->rwait.head.next 4096-ptr_max
PARAM_VALUE 0 usblp->rwait.head.next->next 4096-ptr_max
PARAM_VALUE 0 usblp->rwait.head.prev 4096-ptr_max
PARAM_VALUE 0 usblp->rwait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 usblp->rwait.head.prev->prev 4096-ptr_max
PARAM_VALUE 0 usblp->statusbuf 4096-ptr_max
PARAM_VALUE 0 usblp->urbs.poisoned 0
PARAM_VALUE 0 usblp->urbs.suspend_wakeups.counter 0
PARAM_VALUE 0 usblp->urbs.wait.head.next 4096-ptr_max
PARAM_VALUE 0 usblp->urbs.wait.head.next->next 4096-ptr_max
PARAM_VALUE 0 usblp->urbs.wait.head.prev 4096-ptr_max
PARAM_VALUE 0 usblp->urbs.wait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 usblp->urbs.wait.head.prev->prev 4096-ptr_max
PARAM_VALUE 0 usblp->wmut.dep_map->name 0-255
PARAM_VALUE 0 usblp->wmut.first_waiter 0
PARAM_VALUE 0 usblp->wmut.magic 4096-ptr_max
PARAM_VALUE 0 usblp->wmut.osq.tail.counter 0
PARAM_VALUE 0 usblp->wmut.owner.counter 0
PARAM_VALUE 0 usblp->wwait.head.next 4096-ptr_max
PARAM_VALUE 0 usblp->wwait.head.next->next 4096-ptr_max
PARAM_VALUE 0 usblp->wwait.head.prev 4096-ptr_max
PARAM_VALUE 0 usblp->wwait.head.prev->next 4096-ptr_max
PARAM_VALUE 0 usblp->wwait.head.prev->prev 4096-ptr_max
PARAM_VALUE 1 protocol 1-3
BUF_SIZE 0 usblp 920
BUF_SIZE 0 usblp->device_id_string 1024
BUF_SIZE 0 usblp->readbuf 1024
BUF_SIZE 0 usblp->statusbuf 8
CAPPED_DATA 0 usblp->intf->num_altsetting 1
DATA_SOURCE 0 usblp r _kzalloc_noprof
DATA_SOURCE 1 protocol r usblp_select_alts
MEM_ZERO 0 &usblp->urbs
RX_PATH
TASK_NOT_RUNNING