Defined in 1 files as a prototype:
Defined in 2 files as a function:
Referenced in 2 files:
Smatch caller information:
drivers/vfio/device_cdev.c vfio_df_get_kvm_safe() -> vfio_device_get_kvm_safe()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->dev_set->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->dev_set->lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | device->dev_set->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | device->dev_set->lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->dev_set->lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | device->dev_set->lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | device->group | 4096-ptr_max |
| PARAM_VALUE | 0 | device->group->group_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->task->blocked_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | device->group->group_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | device->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | device->ops->match_token_uuid | 0,5169803798861357056 |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | &device->dev_set->lock | ||
| LOCK2 | &df->kvm_ref_lock | ||
| TYPE_LOCK | (struct vfio_device_file)->kvm_ref_lock | ||
| TYPE_LOCK | (struct vfio_device_set)->lock |
drivers/vfio/group.c vfio_device_group_get_kvm_safe() -> vfio_device_get_kvm_safe()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->dev_set->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->dev_set->lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | device->dev_set->lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | device->dev_set->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | device->dev_set->lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->dev_set->lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | device->dev_set->lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | device->group | 4096-ptr_max |
| PARAM_VALUE | 0 | device->group->group_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | device->group->group_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | device->group->group_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | device->group->group_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->group->group_lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | device->group->group_lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | device->group->kvm_ref_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | device->open_count | 0 |
| PARAM_VALUE | 0 | device->refcount.refs.counter | (-1073741824),0-s32max |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &device->dev_set->lock | |
| LOCK2 | 0 | &device->group->group_lock | |
| LOCK2 | 0 | &device->group->kvm_ref_lock | |
| TYPE_LOCK | (struct vfio_device_set)->lock | ||
| TYPE_LOCK | (struct vfio_group)->group_lock | ||
| TYPE_LOCK | (struct vfio_group)->kvm_ref_lock |