Defined in 3 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/usb/host/ehci-hcd.c end_unlink_intr() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 0 fotg210->intr_unlinking 1
PARAM_VALUE 0 fotg210->rh_state 2
PARAM_VALUE 0 *fotg210->bandwidth 0-255
PARAM_VALUE 0 *fotg210->tt_budget 0-255
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->hw 4096-ptr_max
PARAM_VALUE 1 qh->hw->hw_next 1
PARAM_VALUE 1 qh->qtd_list.next 4096-ptr_max
PARAM_VALUE 1 qh->unlink_node.next->prev 4096-ptr_max
PARAM_VALUE 1 qh->unlink_node.prev->next 4096-ptr_max
CAPPED_DATA 1 &qh->qtd_list 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
PARAM_COMPARE 1 &qh->qtd_list != $1->qtd_list.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &fotg210->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct ehci_hcd)->lock

drivers/usb/host/ehci-hcd.c intr_submit() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->alloc_mutex.osq.tail.counter s32min-s32max
PARAM_VALUE 0 fotg210->qh_pool->dev->dma_uses_io_tlb 1
PARAM_VALUE 0 fotg210->qh_pool->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 fotg210->qh_pool->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fotg210->qtd_pool 4096-ptr_max
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->alloc_mutex.osq.tail.counter s32min-s32max
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 fotg210->qtd_pool->dev->dma_uses_io_tlb 1
PARAM_VALUE 0 fotg210->qtd_pool->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 fotg210->qtd_pool->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fotg210->qtd_pool->size 0-s32max
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->qh_state 3
BUF_SIZE 1 qh (-1),144
BUF_SIZE 1 qh (-1),144
CAPPED_DATA 0 fotg210->qtd_pool->size 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh r qh_append_tds
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &fotg210->lock
TYPE_LOCK (struct ehci_hcd)->lock

drivers/usb/host/ehci-hcd.c qh_link_async() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->clearing_tt 0
BUF_SIZE 1 qh (-1),40,48,56,80,104,128,144,384
BUF_SIZE 1 qh (-1),40,48,56,80,104,128,144,384
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &fotg210->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct ehci_hcd)->lock

drivers/usb/fotg210/fotg210-hcd.c qh_completions() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->needs_rescan 0
BUF_SIZE 0 fotg210->intr_unlink_last (-1),1-s32max
BUF_SIZE 1 qh (-1),1-s32max
BUF_SIZE 1 qh (-1),1-s32max
CAPPED_DATA 1 &qh->qtd_list 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
PARAM_COMPARE 1 &qh->qtd_list != $1->qtd_list.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &fotg210->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct fotg210_hcd)->lock

drivers/usb/fotg210/fotg210-hcd.c qh_link_async() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->clearing_tt 0
BUF_SIZE 1 qh (-1),40,48,56,80,104,128,384
BUF_SIZE 1 qh (-1),40,48,56,80,104,128,384
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &fotg210->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct fotg210_hcd)->lock

drivers/usb/fotg210/fotg210-hcd.c qh_make() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->alloc_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 fotg210->qh_pool->dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 fotg210->qh_pool->dev->dma_mem->spinlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fotg210->qh_pool->dev->dma_uses_io_tlb 1
PARAM_VALUE 0 fotg210->qh_pool->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 fotg210->qh_pool->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fotg210->qh_pool->size 0-s32max
PARAM_VALUE 0 fotg210->qtd_pool 4096-ptr_max
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->alloc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->alloc_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 fotg210->qtd_pool->dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 fotg210->qtd_pool->dev->dma_mem->spinlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fotg210->qtd_pool->dev->dma_uses_io_tlb 1
PARAM_VALUE 0 fotg210->qtd_pool->dev->iommu->attach_deferred 0-1
PARAM_VALUE 0 fotg210->qtd_pool->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 fotg210->qtd_pool->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fotg210->qtd_pool->size 0-s32max
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->dev 4096-ptr_max
PARAM_VALUE 1 qh->dev->bus 4096-ptr_max
PARAM_VALUE 1 qh->dev->can_submit 1
PARAM_VALUE 1 qh->dev->parent 1-u64max
PARAM_VALUE 1 qh->dev->state 4-u32max
PARAM_VALUE 1 qh->dummy 4096-ptr_max
PARAM_VALUE 1 qh->dummy->hw_alt_next 1
PARAM_VALUE 1 qh->dummy->hw_next 1
PARAM_VALUE 1 qh->dummy->hw_token 64
PARAM_VALUE 1 qh->dummy->length 0
PARAM_VALUE 1 qh->dummy->qtd_list.next 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.next->next 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.prev 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.prev->next 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.prev->prev 4096-ptr_max
PARAM_VALUE 1 qh->dummy->urb 0
PARAM_VALUE 1 qh->hw 4096-ptr_max
PARAM_VALUE 1 qh->hw->hw_info1 0-s32max
PARAM_VALUE 1 qh->qh_state 3
PARAM_VALUE 1 qh->qtd_list.next 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.next->next 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.prev 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.prev->next 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.prev->prev 4096-ptr_max
BUF_SIZE 1 qh 104
CAPPED_DATA 0 fotg210->qh_pool->size 1
CAPPED_DATA 0 fotg210->qtd_pool->size 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh r fotg210_qh_alloc
FUZZY_MAX 1 qh->dev->state 7
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &fotg210->lock
TYPE_LOCK (struct fotg210_hcd)->lock

drivers/usb/fotg210/fotg210-hcd.c qh_schedule() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 1 qh 4096-ptr_max
BUF_SIZE 0 fotg210->intr_unlink_last (-1),1-s32max
BUF_SIZE 1 qh (-1),1-s32max
BUF_SIZE 1 qh (-1),1-s32max
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &fotg210->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct fotg210_hcd)->lock

drivers/usb/host/oxu210hp-hcd.c qh_completions() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210->async->qh_next.qh->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 0 fotg210->reclaim->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 0 *fotg210->reclaim->oxu->db_used 0-255
PARAM_VALUE 0 *fotg210->reclaim->oxu->qh_used 0-255
PARAM_VALUE 0 *fotg210->reclaim->oxu->qtd_used 0-255
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 1 qh->dummy->transfer_dma 0
BUF_SIZE 1 qh (-1),1-s32max
BUF_SIZE 1 qh (-1),1-s32max
CAPPED_DATA 1 qh 1
CAPPED_DATA 1 &qh->qtd_list 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
PARAM_COMPARE 1 &qh->qtd_list != $1->qtd_list.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 fotg210->actions 0-u64max
HOST_DATA 0 fotg210->bus_suspended 0-u64max
HOST_DATA 0 fotg210->command 0-u32max
HOST_DATA 0 fotg210->companion_ports 0-u64max
HOST_DATA 0 fotg210->hcs_params 0-u32max
HOST_DATA 0 fotg210->i_thresh 0-u32max
HOST_DATA 0 fotg210->is_otg 0-1
HOST_DATA 0 fotg210->next_statechange 0-u64max
HOST_DATA 0 fotg210->next_uframe s32min-s32max
HOST_DATA 0 fotg210->periodic_dma 0-u64max
HOST_DATA 0 fotg210->periodic_sched 0-u32max
HOST_DATA 0 fotg210->periodic_size 0-u32max
HOST_DATA 0 fotg210->reclaim_ready 0
HOST_DATA 0 fotg210->sbrn 0-255
HOST_DATA 0 fotg210->scanning 0-1
HOST_DATA 0 fotg210->stamp 0-u32max
HOST_DATA 0 fotg210->urb_len 0-u32max
HOST_DATA 0 fotg210->urb_timer.expires 0-u64max
HOST_DATA 0 fotg210->urb_timer.flags 0-u32max
HOST_DATA 0 fotg210->watchdog.expires 0-u64max
HOST_DATA 0 fotg210->watchdog.flags 0-u32max
HOST_DATA 1 qh->stamp 1-u32max[c]
HALF_LOCKED2 flags
HALF_LOCKED2 0 &fotg210->lock

drivers/usb/host/oxu210hp-hcd.c qh_link_async() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 0 fotg210->async 4096-ptr_max
PARAM_VALUE 0 fotg210->async->qh_next.qh->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 0 fotg210->reclaim->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 0 *fotg210->db_used 0-255
PARAM_VALUE 0 *fotg210->qh_used 0-255
PARAM_VALUE 0 *fotg210->qtd_used 0-255
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 1 qh->dummy->transfer_dma 0
PARAM_VALUE 1 qh->qh_state 3
CAPPED_DATA 1 qh 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 fotg210->actions 0-u64max
HOST_DATA 0 fotg210->bus_suspended 0-u64max
HOST_DATA 0 fotg210->command 0-u32max
HOST_DATA 0 fotg210->companion_ports 0-u64max
HOST_DATA 0 fotg210->hcs_params 0-u32max
HOST_DATA 0 fotg210->i_thresh 0-u32max
HOST_DATA 0 fotg210->is_otg 0-1
HOST_DATA 0 fotg210->next_statechange 0-u64max
HOST_DATA 0 fotg210->next_uframe s32min-s32max
HOST_DATA 0 fotg210->periodic_dma 0-u64max
HOST_DATA 0 fotg210->periodic_sched 0-u32max
HOST_DATA 0 fotg210->periodic_size 0-u32max
HOST_DATA 0 fotg210->sbrn 0-255
HOST_DATA 0 fotg210->scanning 0-1
HOST_DATA 0 fotg210->stamp 0-u32max
HOST_DATA 0 fotg210->urb_len 0-u32max
HOST_DATA 0 fotg210->urb_timer.expires 0-u64max
HOST_DATA 0 fotg210->urb_timer.flags 0-u32max
HOST_DATA 0 fotg210->watchdog.expires 0-u64max
HOST_DATA 0 fotg210->watchdog.flags 0-u32max
HALF_LOCKED2 flags
HALF_LOCKED2 0 &fotg210->lock

drivers/usb/host/oxu210hp-hcd.c qh_make() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210 4096-ptr_max
PARAM_VALUE 0 fotg210->mem_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 *fotg210->db_used 0-255
PARAM_VALUE 0 *fotg210->qh_used 1
PARAM_VALUE 0 *fotg210->qtd_used 0-255
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->dev 4096-ptr_max
PARAM_VALUE 1 qh->dummy 4096-ptr_max
PARAM_VALUE 1 qh->dummy->hw_alt_next 1
PARAM_VALUE 1 qh->dummy->hw_next 1
PARAM_VALUE 1 qh->dummy->hw_token 64
PARAM_VALUE 1 qh->dummy->qtd_list.next 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.next->next 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.prev 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.prev->next 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_list.prev->prev 4096-ptr_max
PARAM_VALUE 1 qh->hw_info1 0-268435455,1077960704-1077964799,1107304448-1107308543
PARAM_VALUE 1 qh->hw_info2 0,1073741824-u32max
PARAM_VALUE 1 qh->kref.refcount.refs.counter 1
PARAM_VALUE 1 qh->oxu 4096-ptr_max
PARAM_VALUE 1 qh->qh_state 3
PARAM_VALUE 1 qh->qtd_list.next 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.next->next 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.prev 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.prev->next 4096-ptr_max
PARAM_VALUE 1 qh->qtd_list.prev->prev 4096-ptr_max
CAPPED_DATA 1 qh 1
CAPPED_DATA 1 qh->dummy 1
CAPPED_DATA 1 qh->dummy->qtd_dma 1
CAPPED_DATA 1 qh->qh_dma 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh r oxu_qh_alloc
BIT_INFO 1 qh->hw_info1 0x0,0x4fff7f7f
BIT_INFO 1 qh->hw_info2 0x40000000,0xff800000
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &fotg210->lock
TYPE_LOCK (struct oxu_hcd)->lock

drivers/usb/host/oxu210hp-hcd.c qh_schedule() -> qh_refresh()

Type Parameter Key Value
PARAM_VALUE 0 fotg210->async->qh_next.qh->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 0 fotg210->reclaim->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 0 *fotg210->reclaim->oxu->db_used 0-255
PARAM_VALUE 0 *fotg210->reclaim->oxu->qh_used 0-255
PARAM_VALUE 0 *fotg210->reclaim->oxu->qtd_used 0-255
PARAM_VALUE 1 qh 4096-ptr_max
PARAM_VALUE 1 qh->dummy->qtd_buffer_len 0,512-2048
PARAM_VALUE 1 qh->dummy->transfer_dma 0
PARAM_VALUE 1 *qh->oxu->db_used 0-255
PARAM_VALUE 1 *qh->oxu->qh_used 0-255
PARAM_VALUE 1 *qh->oxu->qtd_used 0-255
BUF_SIZE 1 qh (-1),1-s32max
BUF_SIZE 1 qh (-1),1-s32max
CAPPED_DATA 1 qh 1
DATA_SOURCE 0 fotg210 $0
DATA_SOURCE 1 qh $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 fotg210->actions 0-u64max
HOST_DATA 0 fotg210->bus_suspended 0-u64max
HOST_DATA 0 fotg210->command 0-u32max
HOST_DATA 0 fotg210->companion_ports 0-u64max
HOST_DATA 0 fotg210->hcs_params 0-u32max
HOST_DATA 0 fotg210->i_thresh 0-u32max
HOST_DATA 0 fotg210->is_otg 0-1
HOST_DATA 0 fotg210->next_statechange 0-u64max
HOST_DATA 0 fotg210->next_uframe s32min-s32max
HOST_DATA 0 fotg210->periodic_dma 0-u64max
HOST_DATA 0 fotg210->periodic_size 0-u32max[c]
HOST_DATA 0 fotg210->reclaim_ready 0
HOST_DATA 0 fotg210->sbrn 0-255
HOST_DATA 0 fotg210->scanning 0-1
HOST_DATA 0 fotg210->stamp 0-u32max
HOST_DATA 0 fotg210->urb_len 0-u32max
HOST_DATA 0 fotg210->urb_timer.expires 0-u64max
HOST_DATA 0 fotg210->urb_timer.flags 0-u32max
HOST_DATA 0 fotg210->watchdog.expires 0-u64max
HOST_DATA 0 fotg210->watchdog.flags 0-u32max
HOST_DATA 1 qh->stamp 1-u32max[c]
HALF_LOCKED2 flags
HALF_LOCKED2 0 &fotg210->lock