Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/vfio/pci/vfio_pci_core.c vfio_pci_core_disable() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
PARAM_VALUE 0 dev->dev.power.request 0-4
PARAM_VALUE 0 dev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 dev->dev.power.wakeirq 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 dev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 dev->error_state 0-2,4-u32max
PARAM_VALUE 0 dev->is_busmaster 0
PARAM_VALUE 0 dev->is_virtfn 0
PARAM_VALUE 0 *dev->saved_config_space 0-4294967295
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dev->current_state 0-3[c]
LOCK2 &device->dev_set->lock
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &bridge->dev.mutex
HALF_LOCKED2 &device->group->group_lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct vfio_device_set)->lock

drivers/vfio/pci/vfio_pci_core.c vfio_pci_core_disable() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
DATA_SOURCE 0 dev r pci_upstream_bridge
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &device->dev_set->lock
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &device->group->group_lock
TYPE_LOCK (struct vfio_device_set)->lock

drivers/bluetooth/btintel_pcie.c btintel_pcie_acpi_reset_method() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->error_state 0-2,4-u32max
PARAM_VALUE 0 dev->pcie_cap 0-1
PARAM_VALUE 0 dev->sriov->offset 0-u16max
PARAM_VALUE 0 dev->sriov->stride 0-u16max
PARAM_VALUE 0 dev->state_saved 0
PARAM_VALUE 0 *dev->saved_config_space 0-4294967295
NOCHECK_CALL
HOST_DATA 0 dev->sriov->offset 0-u16max
HOST_DATA 0 dev->sriov->stride 0-u16max
LOCK2 global &pci_rescan_remove_lock
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex

drivers/pci/pci.c __pci_bus_trylock() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->subordinate 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bridge->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 0 &dev->dev.mutex

drivers/pci/pci.c __pci_bus_trylock() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &dev->dev.mutex
HALF_LOCKED2 &of->mutex

drivers/pci/pci.c __pci_bus_unlock() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->subordinate 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/pci/pci.c __pci_bus_unlock() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/pci/pci.c pci_reset_function() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->bus->self->link_bwctrl->cdev (-22),(-19),(-12),0-s64max
PARAM_VALUE 0 dev->dev.cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->driver 0,4096-ptr_max
PARAM_VALUE 0 dev->error_state 0-2,4-u32max
PARAM_VALUE 0 dev->link_bwctrl->cdev (-22),(-19),(-12),0-s64max
PARAM_VALUE 0 dev->pcie_cap 0-1
PARAM_VALUE 0 dev->state_saved 0
PARAM_VALUE 0 *dev->saved_config_space 0-4294967295
BUF_SIZE 0 dev (-1),1-s32max
BUF_SIZE 0 dev (-1),1-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dev->acs_capabilities 0-u16max
HOST_DATA 0 dev->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->class 0-16777215
HOST_DATA 0 dev->current_state 0-3[c]
HOST_DATA 0 dev->devcap 0-u32max
HOST_DATA 0 dev->devfn 0-503[c]
HOST_DATA 0 dev->device 0-u16max
HOST_DATA 0 dev->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->fm_enabled 0-1[c]
HOST_DATA 0 dev->hdr_type 0-255[c]
HOST_DATA 0 dev->ide_cfg 0-1[c]
HOST_DATA 0 dev->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->irq 0-255
HOST_DATA 0 dev->is_cxl 0-1
HOST_DATA 0 dev->multifunction 0-1[c]
HOST_DATA 0 dev->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->acs_capabilities 0-u16max
HOST_DATA 0 dev->physfn->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->class 0-16777215
HOST_DATA 0 dev->physfn->current_state 0-3[c]
HOST_DATA 0 dev->physfn->devcap 0-u32max
HOST_DATA 0 dev->physfn->devfn 1-503[c]
HOST_DATA 0 dev->physfn->device 0-u16max
HOST_DATA 0 dev->physfn->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->physfn->fm_enabled 0-1[c]
HOST_DATA 0 dev->physfn->hdr_type 0-255[c]
HOST_DATA 0 dev->physfn->ide_cfg 0-1[c]
HOST_DATA 0 dev->physfn->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->physfn->irq 0-255
HOST_DATA 0 dev->physfn->is_cxl 0-1
HOST_DATA 0 dev->physfn->multifunction 0-1[c]
HOST_DATA 0 dev->physfn->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->physfn->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->physfn->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->pin 0
HOST_DATA 0 dev->physfn->pme_support 0-31[c]
HOST_DATA 0 dev->physfn->ptm_granularity 0-255[c]
HOST_DATA 0 dev->physfn->revision 0-255
HOST_DATA 0 dev->physfn->sriov->class 0-u32max
HOST_DATA 0 dev->physfn->sriov->hdr_type 0-255
HOST_DATA 0 dev->physfn->sriov->max_VF_buses 0-255[c]
HOST_DATA 0 dev->physfn->sriov->offset 0-u16max
HOST_DATA 0 dev->physfn->sriov->stride 0-u16max
HOST_DATA 0 dev->physfn->sriov->subsystem_device 0-u16max
HOST_DATA 0 dev->physfn->sriov->subsystem_vendor 0-u16max
HOST_DATA 0 dev->physfn->subsystem_device 0-u16max
HOST_DATA 0 dev->physfn->subsystem_vendor 0-u16max
HOST_DATA 0 dev->physfn->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->physfn->transparent 0[c]
HOST_DATA 0 dev->physfn->vendor 0-u16max
HOST_DATA 0 dev->pin 0
HOST_DATA 0 dev->pme_support 0-31[c]
HOST_DATA 0 dev->ptm_granularity 0-255[c]
HOST_DATA 0 dev->rcec_ea->bitmap 0
HOST_DATA 0 dev->rcec_ea->lastbusn 0[c]
HOST_DATA 0 dev->revision 0-255
HOST_DATA 0 dev->sriov->initial_VFs 0
HOST_DATA 0 dev->sriov->max_VF_buses 0-255[c]
HOST_DATA 0 dev->sriov->offset 0-u16max
HOST_DATA 0 dev->sriov->stride 0-u16max
HOST_DATA 0 dev->subsystem_device 0-u16max
HOST_DATA 0 dev->subsystem_vendor 0-u16max
HOST_DATA 0 dev->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->transparent 0[c]
HOST_DATA 0 dev->vendor 0-u16max
HOST_DATA 0 *dev->dev.driver_data s64min-s64max
HOST_DATA 0 *dev->physfn->dev.driver_data s64min-s64max
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &bridge->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &pci_rescan_remove_lock
TYPE_LOCK (struct device)->mutex

drivers/pci/pci.c pci_reset_function() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
DATA_SOURCE 0 dev r pci_upstream_bridge
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &pci_rescan_remove_lock

drivers/pci/pci.c pci_try_reset_function() -> pci_dev_unlock()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->block_cfg_access 1
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 dev->driver 0,4096-ptr_max
PARAM_VALUE 0 dev->error_state 0-2,4-u32max
PARAM_VALUE 0 dev->pcie_cap 0-1
PARAM_VALUE 0 dev->state_saved 0
PARAM_VALUE 0 *dev->saved_config_space 0-4294967295
DATA_SOURCE 0 dev $0
NOCHECK_CALL
HOST_DATA 0 dev->current_state 0-3[c]
HOST_DATA 0 dev->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->sriov->offset 0-u16max
HOST_DATA 0 dev->sriov->stride 0-u16max
UNITS 0 dev unit_byte
LOCK2 0 &dev->dev.mutex
HALF_LOCKED2 &attr->mutex
HALF_LOCKED2 &device->dev_set->lock
HALF_LOCKED2 &vdev->memory_lock
HALF_LOCKED2 global &pci_rescan_remove_lock
TYPE_LOCK (struct device)->mutex