Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 9 files:

Smatch caller information:

drivers/pci/ide.c pci_ide_stream_alloc() -> pci_iov_virtfn_devfn()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->is_physfn 1
PARAM_VALUE 1 vf_id 0-65534
CAPPED_DATA 0 dev->tsm->dsm_dev 1
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/pci/iov.c pci_iov_remove_virtfn() -> pci_iov_virtfn_devfn()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->is_physfn 1
PARAM_VALUE 0 dev->sriov 4096-ptr_max
PARAM_VALUE 1 vf_id 0-65534
BUF_SIZE 0 dev (-1),1-s32max
BUF_SIZE 0 dev (-1),1-s32max
CAPPED_DATA 1 vf_id 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 vf_id $1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->acs_capabilities 0-u16max
HOST_DATA 0 dev->bus->bridge_ctl 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->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->revision 0-255
HOST_DATA 0 dev->sriov->offset 0
HOST_DATA 0 dev->sriov->stride 0
HOST_DATA 0 dev->sriov->vf_device 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
NO_OVERFLOW_SIMPLE 1 vf_id
UNITS 0 dev unit_byte
UNITS 1 vf_id unit_array_size
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &pci_rescan_remove_lock
HALF_LOCKED2 0 &dev->dev.mutex

drivers/pci/iov.c pci_iov_scan_device() -> pci_iov_virtfn_devfn()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->is_physfn 1
PARAM_VALUE 0 dev->sriov 4096-ptr_max
PARAM_VALUE 0 dev->sriov->offset 0
PARAM_VALUE 0 dev->sriov->stride 0
PARAM_VALUE 1 vf_id 0
BUF_SIZE 0 dev (-1),1-s32max
BUF_SIZE 0 dev (-1),1-s32max
CAPPED_DATA 0 dev->bus 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 vf_id $1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->acs_capabilities 0-u16max
HOST_DATA 0 dev->bus->bridge_ctl 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_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->revision 0-255
HOST_DATA 0 dev->sriov->max_VF_buses 0-255[c]
HOST_DATA 0 dev->sriov->offset 0
HOST_DATA 0 dev->sriov->stride 0
HOST_DATA 0 dev->sriov->vf_device 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
NO_OVERFLOW_SIMPLE 1 vf_id
UNITS 0 dev unit_byte
UNITS 1 vf_id unit_array_size
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &pci_rescan_remove_lock
HALF_LOCKED2 0 &dev->dev.mutex

drivers/pci/tsm.c pci_tsm_walk_fns() -> pci_iov_virtfn_devfn()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->is_physfn 1
PARAM_VALUE 1 vf_id 0-65534
CAPPED_DATA 1 vf_id 1
DATA_SOURCE 0 dev r pci_get_slot
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/pci/tsm.c pci_tsm_walk_fns_reverse() -> pci_iov_virtfn_devfn()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 vf_id 0-s32max
DATA_SOURCE 0 dev r pci_get_slot
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/gpu/drm/xe/xe_pci_sriov.c xe_pci_sriov_get_vf_pdev() -> pci_iov_virtfn_devfn()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 vf_id 0-65534
CAPPED_DATA 1 vf_id 1
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pdev->dev.mutex
HALF_LOCKED2 global &pci_rescan_remove_lock