Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/vfio/pci/virtio/migrate.c virtiovf_pci_save_device_data() -> virtiovf_read_device_context_chunk()

Type Parameter Key Value
PARAM_VALUE 0 migf 4096-ptr_max
PARAM_VALUE 0 migf->avail_list.next 4096-ptr_max
PARAM_VALUE 0 migf->avail_list.next->next 4096-ptr_max
PARAM_VALUE 0 migf->avail_list.prev 4096-ptr_max
PARAM_VALUE 0 migf->avail_list.prev->next 4096-ptr_max
PARAM_VALUE 0 migf->avail_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 migf->buf_list.next 4096-ptr_max
PARAM_VALUE 0 migf->buf_list.next->next 4096-ptr_max
PARAM_VALUE 0 migf->buf_list.prev 4096-ptr_max
PARAM_VALUE 0 migf->buf_list.prev->next 4096-ptr_max
PARAM_VALUE 0 migf->buf_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 migf->filp 4096-ptr_max
PARAM_VALUE 0 migf->filp->f_mode 0,2097152-u32max
PARAM_VALUE 0 migf->has_obj_id 1
PARAM_VALUE 0 migf->list_lock.dep_map->name 0-255
PARAM_VALUE 0 migf->list_lock.first_waiter 0
PARAM_VALUE 0 migf->list_lock.magic 4096-ptr_max
PARAM_VALUE 0 migf->list_lock.osq.tail.counter 0
PARAM_VALUE 0 migf->list_lock.owner.counter 0
PARAM_VALUE 0 migf->lock.dep_map->name 0-255
PARAM_VALUE 0 migf->lock.first_waiter 0
PARAM_VALUE 0 migf->lock.magic 4096-ptr_max
PARAM_VALUE 0 migf->lock.osq.tail.counter 0
PARAM_VALUE 0 migf->lock.owner.counter 0
PARAM_VALUE 0 migf->obj_id 0-s32max
PARAM_VALUE 0 migf->virtvdev 4096-ptr_max
PARAM_VALUE 0 migf->virtvdev->mig_state 1-2,5
PARAM_VALUE 0 migf->virtvdev->state_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 migf->virtvdev->state_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 migf->virtvdev->state_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 ctx_size 1-u32max
BUF_SIZE 0 migf 520
DATA_SOURCE 0 migf r _kzalloc_noprof
LOCK2 &virtvdev->state_mutex
TYPE_LOCK (struct virtiovf_pci_core_device)->state_mutex

drivers/vfio/pci/virtio/migrate.c virtiovf_pci_save_device_final_data() -> virtiovf_read_device_context_chunk()

Type Parameter Key Value
PARAM_VALUE 0 migf 4096-ptr_max
PARAM_VALUE 0 migf->state 0,2-u32max
PARAM_VALUE 1 ctx_size 1-u32max
LOCK2 &virtvdev->state_mutex
TYPE_LOCK (struct virtiovf_pci_core_device)->state_mutex

drivers/vfio/pci/virtio/migrate.c virtiovf_precopy_ioctl() -> virtiovf_read_device_context_chunk()

Type Parameter Key Value
PARAM_VALUE 0 migf 4096-ptr_max
PARAM_VALUE 0 migf->lock.dep_map->name 0-255
PARAM_VALUE 0 migf->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 migf->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 migf->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 migf->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 migf->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 migf->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 migf->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 migf->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 migf->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 migf->pre_copy_rl_state.interval s32min-(-1),1-s32max
PARAM_VALUE 0 migf->pre_copy_rl_state.lock.dep_map->name 0-255
PARAM_VALUE 0 migf->state 0,2-u32max
PARAM_VALUE 0 migf->virtvdev 4096-ptr_max
PARAM_VALUE 0 migf->virtvdev->core_device.pdev 4096-ptr_max
PARAM_VALUE 0 migf->virtvdev->core_device.pdev->is_virtfn 1
PARAM_VALUE 0 migf->virtvdev->core_device.pdev->physfn->driver 4096-ptr_max
PARAM_VALUE 0 migf->virtvdev->mig_state 6-7
PARAM_VALUE 0 migf->virtvdev->state_mutex.dep_map->name 0-255
PARAM_VALUE 0 migf->virtvdev->state_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 migf->virtvdev->state_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 migf->virtvdev->state_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 migf->virtvdev->state_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 migf->virtvdev->state_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 ctx_size 1-u32max
BUF_SIZE 0 migf s32min-(-2),1-s32max
BUF_SIZE 0 migf s32min-(-2),1-s32max
CAPPED_DATA 0 migf->pre_copy_initial_bytes 1
CAPPED_DATA 0 &migf->lock 1
LOCK2 &virtvdev->state_mutex
TYPE_LOCK (struct virtiovf_pci_core_device)->state_mutex