Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/usb/core/hub.c hub_handle_remote_wakeup() -> hub_port_disable()

Type Parameter Key Value
PARAM_VALUE 0 hub 4096-ptr_max
PARAM_VALUE 0 hub->change_bits 4096-ptr_max
PARAM_VALUE 0 hub->event_bits 4096-ptr_max
PARAM_VALUE 0 hub->hdev 4096-ptr_max
PARAM_VALUE 0 hub->hdev->descriptor.bDeviceProtocol 0-2,4-255
PARAM_VALUE 0 hub->hdev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hub->hdev->parent->bus->sysdev->iommu->attach_deferred 0-1
PARAM_VALUE 0 hub->ports 4096-ptr_max
PARAM_VALUE 0 hub->status_mutex.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hub->status_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hub->wakeup_bits 4096-ptr_max
PARAM_VALUE 0 *hub->hdev->toggle 0-4294967295
PARAM_VALUE 1 port1 1-s32max
PARAM_VALUE 2 set_state 1
CAPPED_DATA 1 port1 1
DATA_SOURCE 0 hub $0
DATA_SOURCE 1 port1 $1
NOCHECK_CALL
UNITS 1 port1 unit_array_size
LOCK2 &hdev->dev.mutex
LOCK2 &port_dev->status_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct usb_port)->status_lock

drivers/usb/core/hub.c hub_port_connect() -> hub_port_disable()

Type Parameter Key Value
PARAM_VALUE 0 hub 4096-ptr_max
PARAM_VALUE 0 hub->change_bits 4096-ptr_max
PARAM_VALUE 0 hub->event_bits 4096-ptr_max
PARAM_VALUE 0 hub->hdev->bus 4096-ptr_max
PARAM_VALUE 0 hub->hdev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hub->removed_bits 4096-ptr_max
PARAM_VALUE 0 hub->status_mutex.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hub->wakeup_bits 4096-ptr_max
PARAM_VALUE 0 *hub->hdev->toggle 0-4294967295
PARAM_VALUE 1 port1 1-s32max
PARAM_VALUE 2 set_state 1
CAPPED_DATA 1 port1 1
DATA_SOURCE 0 hub $0
DATA_SOURCE 1 port1 $1 [m]
CONSTRAINT 1 port1 <=3318
NOCHECK_CALL
UNITS 1 port1 unit_array_size
LOCK2 &hdev->dev.mutex
LOCK2 &port_dev->status_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex

drivers/usb/core/hub.c hub_port_connect() -> hub_port_disable()

Type Parameter Key Value
PARAM_VALUE 0 hub 4096-ptr_max
PARAM_VALUE 0 hub->change_bits 4096-ptr_max
PARAM_VALUE 0 hub->event_bits 4096-ptr_max
PARAM_VALUE 0 hub->hdev->bus 4096-ptr_max
PARAM_VALUE 0 hub->hdev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hub->removed_bits 4096-ptr_max
PARAM_VALUE 0 hub->status_mutex.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hub->wakeup_bits 4096-ptr_max
PARAM_VALUE 0 *hub->hdev->toggle 0-4294967295
PARAM_VALUE 1 port1 1-s32max
PARAM_VALUE 2 set_state 1
CAPPED_DATA 1 port1 1
DATA_SOURCE 0 hub $0
DATA_SOURCE 1 port1 $1 [m]
CONSTRAINT 1 port1 <=3318
NOCHECK_CALL
UNITS 1 port1 unit_array_size
LOCK2 &hdev->dev.mutex
LOCK2 &port_dev->status_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex

drivers/usb/core/hub.c hub_port_logical_disconnect() -> hub_port_disable()

Type Parameter Key Value
PARAM_VALUE 0 hub 4096-ptr_max
PARAM_VALUE 2 set_state 1
BUF_SIZE 0 hub s32min-(-1),1-s32max
BUF_SIZE 0 hub s32min-(-1),1-s32max
DATA_SOURCE 0 hub $0
DATA_SOURCE 1 port1 $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 port1 unit_array_size
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &port_dev->status_lock
HALF_LOCKED2 &udev->dev.mutex

drivers/usb/core/hub.c port_event() -> hub_port_disable()

Type Parameter Key Value
PARAM_VALUE 0 hub 4096-ptr_max
PARAM_VALUE 0 hub->change_bits 4096-ptr_max
PARAM_VALUE 0 hub->event_bits 4096-ptr_max
PARAM_VALUE 0 hub->hdev 4096-ptr_max
PARAM_VALUE 0 hub->hdev->descriptor.bDeviceProtocol 3
PARAM_VALUE 0 hub->hdev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hub->ports 4096-ptr_max
PARAM_VALUE 0 hub->status_mutex.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hub->status_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hub->wakeup_bits 4096-ptr_max
PARAM_VALUE 0 *hub->hdev->toggle 0-4294967295
PARAM_VALUE 1 port1 1-s32max
PARAM_VALUE 2 set_state 1
CAPPED_DATA 1 port1 1
DATA_SOURCE 0 hub $0
DATA_SOURCE 1 port1 $1
CONSTRAINT 1 port1 <=3318
NOCHECK_CALL
UNITS 1 port1 unit_array_size
LOCK2 &hdev->dev.mutex
LOCK2 &port_dev->status_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct usb_port)->status_lock

drivers/usb/core/hub.c usb_port_disable() -> hub_port_disable()

Type Parameter Key Value
PARAM_VALUE 2 set_state 0
BUF_SIZE 0 hub s32min-(-1),1-s32max
BUF_SIZE 0 hub s32min-(-1),1-s32max
DATA_SOURCE 0 hub r usb_hub_to_struct_hub
RX_PATH
TASK_NOT_RUNNING
UNITS 1 port1 unit_array_size
HALF_LOCKED2 &dev->mutex