Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 18 files:

Smatch caller information:

drivers/usb/isp1760/isp1760-hcd.c isp1760_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &priv->lock
LOCK2 spinflags
HALF_LOCKED2 irq
TYPE_LOCK (struct isp1760_hcd)->lock

drivers/usb/host/max3421-hcd.c max3421_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &max3421_hcd->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct max3421_hcd)->lock

drivers/usb/host/uhci-hcd.c uhci_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &uhci->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct uhci_hcd)->lock

drivers/usb/gadget/udc/dummy_hcd.c dummy_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &dum_hcd->dum->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dummy)->lock

drivers/usb/host/isp116x-hcd.c isp116x_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &isp116x->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct isp116x)->lock

drivers/usb/host/ehci-hcd.c ehci_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &ehci->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct ehci_hcd)->lock

drivers/usb/usbip/vhci_hcd.c vhci_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &vhci->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct vhci)->lock

drivers/usb/fotg210/fotg210-hcd.c fotg210_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &fotg210->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct fotg210_hcd)->lock

drivers/usb/host/sl811-hcd.c sl811h_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &sl811->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct sl811)->lock

drivers/usb/dwc2/hcd.c _dwc2_hcd_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &hsotg->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/host/xhci.c xhci_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
CAPPED_DATA 0 hcd 1
CAPPED_DATA 0 hcd->primary_hcd 1
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
PARAM_COMPARE 0 hcd >= $0->primary_hcd
PARAM_COMPARE 0 hcd >= $0->primary_hcd
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &xhci->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct xhci_hcd)->lock

drivers/usb/musb/musb_host.c musb_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &musb->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct musb)->lock

drivers/usb/host/ohci-hcd.c ohci_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &ohci->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct ohci_hcd)->lock

drivers/usb/c67x00/c67x00-sched.c c67x00_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &c67x00->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct c67x00_hcd)->lock

drivers/usb/core/hcd.c usb_rh_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 flags
LOCK2 global &hcd_root_hub_lock
HALF_LOCKED2 irq

drivers/usb/host/r8a66597-hcd.c r8a66597_urb_dequeue() -> usb_hcd_check_unlink_urb()

Type Parameter Key Value
PARAM_VALUE 0 hcd 4096-ptr_max
PARAM_VALUE 1 urb 4096-ptr_max
PARAM_VALUE 2 status (-108),(-104),(-2)
BUF_SIZE 1 urb->context s32min-(-1),1-s32max
BUF_SIZE 1 urb->transfer_buffer (-1),1-s32max
DATA_SOURCE 0 hcd $0
DATA_SOURCE 1 urb $1
DATA_SOURCE 2 status $2
NOSPEC 1 urb->transfer_buffer_length
HARD_MAX 2 status (-2)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 urb->start_frame 0-s32max
USER_DATA 1 urb->actual_length 0-u32max[c][u]
USER_DATA 1 urb->transfer_buffer_length 1-s32max
NO_OVERFLOW_SIMPLE 1 urb->actual_length
NO_OVERFLOW_SIMPLE 1 urb->num_mapped_sgs
NO_OVERFLOW_SIMPLE 1 urb->setup_dma
NO_OVERFLOW_SIMPLE 1 urb->sg->length
NO_OVERFLOW_SIMPLE 1 urb->transfer_dma
LOCK2 &r8a66597->lock
LOCK2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct r8a66597)->lock