Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a macro:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/usb/core/devio.c proc_allow_suspend() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev->state 1-u32max
NOCHECK_CALL
LOCK2 &dev->dev.mutex
TYPE_LOCK (struct device)->mutex

drivers/usb/core/devio.c usbdev_release() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
CAPPED_DATA 0 udev->maxchild 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &udev->dev.mutex
TYPE_LOCK (struct device)->mutex

drivers/usb/core/message.c usb_set_configuration() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
DATA_SOURCE 0 udev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(sdev->udev)->dev.mutex
HALF_LOCKED2 &dev->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 0 &udev->dev.mutex

drivers/usb/core/message.c usb_set_configuration() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->actconfig 0
PARAM_VALUE 0 udev->dev.kobj.sd->__parent 0
PARAM_VALUE 0 udev->dev.power.can_wakeup 0
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->state 0,2,5-8
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
DATA_SOURCE 0 udev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(sdev->udev)->dev.mutex
HALF_LOCKED2 &dev->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 0 &udev->dev.mutex

drivers/usb/core/message.c usb_set_configuration() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->actconfig 4096-ptr_max
PARAM_VALUE 0 udev->bus->sysdev->iommu->attach_deferred 0-1
PARAM_VALUE 0 udev->dev.kobj.sd->__parent 0
PARAM_VALUE 0 udev->dev.power.can_wakeup 0
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->state 0,2,5-8
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
DATA_SOURCE 0 udev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(sdev->udev)->dev.mutex
HALF_LOCKED2 &dev->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 0 &udev->dev.mutex

drivers/usb/core/driver.c usb_probe_interface() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->authorized 1
PARAM_VALUE 0 udev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/core/driver.c usb_probe_interface() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->authorized 1
PARAM_VALUE 0 udev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/core/driver.c usb_unbind_device() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 *udev->toggle 0-4294967295
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex

drivers/usb/core/driver.c usb_unbind_interface() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &dev->mutex

drivers/usb/core/hub.c usb_authorize_device() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->authorized 1
PARAM_VALUE 0 udev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.driver 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 *udev->toggle 0-4294967295
CAPPED_DATA 0 udev 1
DATA_SOURCE 0 udev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
LOCK2 0 &udev->dev.mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/usb/core/hub.c usb_remote_wakeup() -> usb_autosuspend_device()

Type Parameter Key Value
PARAM_VALUE 0 udev 4096-ptr_max
PARAM_VALUE 0 udev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 udev->dev.power.request 0-4
PARAM_VALUE 0 udev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 udev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 udev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 udev->state 8
DATA_SOURCE 0 udev $0
NOCHECK_CALL
LOCK2 0 &udev->dev.mutex
HALF_LOCKED2 &hdev->dev.mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port_dev->status_lock
TYPE_LOCK (struct device)->mutex

drivers/usb/core/hub.c usb_reset_device() -> usb_autosuspend_device()

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->toggle 0-4294967295
DATA_SOURCE 0 udev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &desc->rlock
HALF_LOCKED2 &desc->wlock
HALF_LOCKED2 &dev->dev.mutex
HALF_LOCKED2 &hdev->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &port_dev->status_lock
HALF_LOCKED2 &ucr->dev_mutex
HALF_LOCKED2 &ud->sysfs_lock
HALF_LOCKED2 global &ati_remote2_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 0 &udev->dev.mutex