Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/pci/controller/pci-hyperv.c hv_pcifront_write_config() -> _hv_pcifront_write_config()

Type Parameter Key Value
PARAM_VALUE 0 hpdev 4096-ptr_max
CAPPED_DATA 0 hpdev->desc.win_slot.slot 1
DATA_SOURCE 0 hpdev r get_pcichild_wslot
DATA_SOURCE 1 where $2
DATA_SOURCE 2 size $3
DATA_SOURCE 3 val $4
NOSPEC 1 where
NOSPEC 1 where
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 3 val 0-u32max
USER_DATA 1 where 0-1000000012[c]
USER_DATA 3 val 0-u32max
HALF_LOCKED2 global &inject_lock
HALF_LOCKED2 global &pci_lock
HALF_LOCKED2 irq

drivers/pci/controller/pci-hyperv.c prepopulate_bars() -> _hv_pcifront_write_config()

Type Parameter Key Value
PARAM_VALUE 0 hpdev 4096-ptr_max
PARAM_VALUE 0 hpdev->hbus 4096-ptr_max
PARAM_VALUE 0 hpdev->hbus->config_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 where 4
PARAM_VALUE 2 size 2
BIT_INFO 3 val 0x0,0xfffffffd
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 3 val 0-u32max[c]
LOCK2 &hbus->device_list_lock
LOCK2 &hbus->state_lock
LOCK2 flags
TYPE_LOCK (struct hv_pcibus_device)->device_list_lock
TYPE_LOCK (struct hv_pcibus_device)->state_lock

drivers/pci/controller/pci-hyperv.c prepopulate_bars() -> _hv_pcifront_write_config()

Type Parameter Key Value
PARAM_VALUE 0 hpdev 4096-ptr_max
PARAM_VALUE 0 hpdev->probed_bar 4096-ptr_max
PARAM_VALUE 1 where 16-36
PARAM_VALUE 2 size 4
PARAM_VALUE 3 val 0,256-4294967040
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hbus->device_list_lock
LOCK2 &hbus->state_lock
LOCK2 flags
TYPE_LOCK (struct hv_pcibus_device)->device_list_lock
TYPE_LOCK (struct hv_pcibus_device)->state_lock

drivers/pci/controller/pci-hyperv.c prepopulate_bars() -> _hv_pcifront_write_config()

Type Parameter Key Value
PARAM_VALUE 0 hpdev 4096-ptr_max
PARAM_VALUE 0 hpdev->hbus 4096-ptr_max
PARAM_VALUE 0 hpdev->hbus->config_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hpdev->probed_bar 4096-ptr_max
PARAM_VALUE 2 size 4
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hbus->device_list_lock
LOCK2 &hbus->state_lock
LOCK2 flags
TYPE_LOCK (struct hv_pcibus_device)->device_list_lock
TYPE_LOCK (struct hv_pcibus_device)->state_lock

drivers/pci/controller/pci-hyperv.c prepopulate_bars() -> _hv_pcifront_write_config()

Type Parameter Key Value
PARAM_VALUE 0 hpdev 4096-ptr_max
PARAM_VALUE 0 hpdev->probed_bar 4096-ptr_max
PARAM_VALUE 1 where 16-36
PARAM_VALUE 2 size 4
PARAM_VALUE 3 val 0,256-4294967040
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hbus->device_list_lock
LOCK2 &hbus->state_lock
LOCK2 flags
TYPE_LOCK (struct hv_pcibus_device)->device_list_lock
TYPE_LOCK (struct hv_pcibus_device)->state_lock