Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/usb/core/hub.c hub_port_connect_change() -> descriptors_changed()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->state 1-u32max
PARAM_VALUE 1 new_device_descriptor 4096-ptr_max
BUF_SIZE 1 new_device_descriptor 18
DATA_SOURCE 1 new_device_descriptor r usb_get_device_descriptor
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_reset_and_verify_device() -> descriptors_changed()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->ep0.hcpriv->data_toggle 0
PARAM_VALUE 0 udev->ep0.hcpriv->needs_rescan 0-1
PARAM_VALUE 0 udev->ep0.hcpriv->qh_next.ptr 0
PARAM_VALUE 0 udev->ep0.hcpriv->qh_state 2,4
PARAM_VALUE 0 udev->ep0.hcpriv->unlink_cycle 0-4294967295
PARAM_VALUE 0 udev->ep0.hcpriv->unlink_reason 0-255
PARAM_VALUE 0 *udev->toggle 0-4294967295
PARAM_VALUE 1 new_device_descriptor 1480466239720919040
CAPPED_DATA 0 udev 1
DATA_SOURCE 0 udev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &port_dev->status_lock
HALF_LOCKED2 0 &udev->dev.mutex
TYPE_LOCK (struct usb_port)->status_lock