Defined in 1 files as a function:
Referenced in 22 files:
- arch/arm64/kvm/arm.c, line 2941
- arch/arm64/kvm/vgic/vgic-debug.c, line 251
- arch/arm64/kvm/vgic/vgic-init.c, line 210
- arch/arm64/kvm/vgic/vgic-kvm-device.c, line 500
- arch/arm64/kvm/vgic/vgic-mmio-v2.c, line 201
- arch/arm64/kvm/vgic/vgic-mmio-v3.c, line 863
- arch/arm64/kvm/vgic/vgic-v3.c
- arch/arm64/kvm/vgic/vgic-v4.c, line 329
- arch/arm64/kvm/vgic/vgic-v5.c, line 178
- arch/mips/kvm/loongson_ipi.c
- arch/mips/kvm/mips.c, line 495
- arch/powerpc/kvm/book3s_pr.c, line 1948
- arch/riscv/kvm/aia_device.c
- arch/s390/kvm/interrupt.c
- arch/s390/kvm/kvm-s390.c
- arch/x86/kvm/hyperv.c
- arch/x86/kvm/lapic.c, line 1397
- arch/x86/kvm/svm/avic.c, line 266
- arch/x86/kvm/svm/sev.c, line 2093
- arch/x86/kvm/xen.c, line 1828
- include/linux/kvm_host.h, line 1032
- virt/kvm/kvm_main.c
Smatch caller information:
arch/x86/kvm/svm/sev.c kvm_get_vcpu_by_id() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | i | 0-4095 |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | $1 |
| FUZZY_MAX | 1 | i | 4095 |
| HARD_MAX | 1 | i | 4095 |
| UNITS | 0 | kvm | unit_byte |
arch/x86/kvm/svm/sev.c sev_migrate_from() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 0 | kvm->lock.osq.tail.counter | 0-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | kvm->arch.vm_type | 1 |
| CAPPED_DATA | 0 | kvm->created_vcpus | 1 |
| DATA_SOURCE | 0 | kvm | $1 |
| LOCK2 | &dst_kvm->lock | ||
| LOCK2 | 0 | &kvm->lock | |
| TYPE_LOCK | (struct kvm)->lock |
arch/x86/kvm/xen.c kvm_get_vcpu_by_id() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_advance_ns | 0-4294967295 |
| PARAM_VALUE | 0 | kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode_mask | 0-4294967295 |
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | i | 0-4095 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | $1 |
| FUZZY_MAX | 1 | i | 4095 |
| HARD_MAX | 1 | i | 4095 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | i | 0-4095 |
| UNITS | 0 | kvm | unit_byte |
| HALF_LOCKED2 | 0 | &kvm->arch.xen.shinfo_cache.lock | |
| HALF_LOCKED2 | 0 | &kvm->arch.xen.xen_lock | |
| HALF_LOCKED2 | 0 | &kvm->irq_srcu | |
| HALF_LOCKED2 | 0 | &kvm->irqfds.resampler_lock | |
| HALF_LOCKED2 | 0 | &kvm->lock | |
| HALF_LOCKED2 | 0 | &kvm->srcu |
arch/x86/kvm/xen.c kvm_xen_set_evtchn_fast() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | i | 0-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kvm | unit_byte |
| UNITS | 1 | i | unit_byte |
| HALF_LOCKED2 | 0 | &kvm->arch.xen.shinfo_cache.lock | |
| HALF_LOCKED2 | 0 | &kvm->arch.xen.xen_lock | |
| HALF_LOCKED2 | 0 | &kvm->irq_srcu | |
| HALF_LOCKED2 | 0 | &kvm->irqfds.resampler_lock | |
| HALF_LOCKED2 | 0 | &kvm->srcu |
arch/x86/kvm/hyperv.c get_time_ref_counter() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | i | 0 |
| DATA_SOURCE | 0 | kvm | $0 |
| PREEMPT_ADD | |||
| UNITS | 0 | kvm | unit_byte |
| HALF_LOCKED2 | &hv->hv_lock | ||
| HALF_LOCKED2 | &vcpu->kvm->srcu | ||
| HALF_LOCKED2 | &vcpu->mutex | ||
| HALF_LOCKED2 | 0 | &kvm->srcu |
arch/x86/kvm/hyperv.c get_vcpu_by_vpidx() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 1 | i | 0-4095 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | 0 | &kvm->irq_lock | |
| HALF_LOCKED2 | 0 | &kvm->irq_srcu | |
| HALF_LOCKED2 | 0 | &kvm->irqfds.resampler_lock | |
| HALF_LOCKED2 | 0 | &kvm->lock |
arch/x86/kvm/hyperv.c kvm_hv_flush_tlb() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | i | 0-64 |
| CAPPED_DATA | 1 | i | 1 |
| DATA_SOURCE | 1 | i | r find_next_bit |
| UNITS | 0 | kvm | unit_byte |
arch/x86/kvm/lapic.c __kvm_irq_delivery_to_apic() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | kvm->arch.apicv_update_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | kvm->online_vcpus.counter | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | i | 0-4095 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | r kvm_vector_to_index |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kvm | unit_byte |
| HALF_LOCKED2 | &ioapic->lock | ||
| HALF_LOCKED2 | 0 | &kvm->irqfds.resampler_lock | |
| HALF_LOCKED2 | 0 | &kvm->srcu |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_destroy_vcpus() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->buses | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->debugfs_dentry | 0,4096-u64max |
| PARAM_VALUE | 0 | kvm->debugfs_dentry->d_alias->next->pprev | 1-u64max |
| PARAM_VALUE | 0 | kvm->debugfs_dentry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | kvm->debugfs_dentry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | kvm->irq_routing | 0,4096-ptr_max |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->alloc_notifier | 0,118721215206682624,3867215761732038656 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->clear_flush_young | 0,629706690066796544 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->clear_young | 0,7189815847754645504 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->free_notifier | 0,1843444619081437184,3821528384776577024,4697798310811897856,6537355567237464064,8871816734645235712 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->invalidate_range_end | 0,3162513330612883456,6014292557378605056 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->invalidate_range_start | 0,1691968406954491904,7272215747350130688,7673596169661853696,8239870623333179392 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->release | 0,18038112991842304,370137738663178240,1669647988633919488,6148653532485574656,7790800904503803904 |
| PARAM_VALUE | 0 | kvm->mmu_notifier.ops->test_young | 0,2029453645569474560 |
| PARAM_VALUE | 0 | kvm->online_vcpus.counter | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | kvm->vcpu_array.xa_lock.rlock.dep_map->name | 0-255 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | kvm | 1 |
| CAPPED_DATA | 0 | kvm->debugfs_dentry | 1 |
| CAPPED_DATA | 0 | kvm->irq_routing | 1 |
| CAPPED_DATA | 0 | kvm->online_vcpus.counter | 1 |
| DATA_SOURCE | 0 | kvm | $0 |
| STR_LEN | 0 | kvm->arch.vm_type | (-1) |
| STR_LEN | 0 | kvm->stats_id | (-1),47 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | kvm->arch.has_private_mem | 0[c] |
| USER_DATA | 0 | kvm->arch.noncoherent_dma_count.counter | 0 |
| USER_DATA | 0 | kvm->arch.pre_fault_allowed | 0-1[c] |
| USER_DATA | 0 | kvm->arch.xen.shinfo_cache.kvm->arch.has_private_mem | 0[c] |
| USER_DATA | 0 | kvm->arch.xen.shinfo_cache.kvm->arch.pre_fault_allowed | 0-1 |
| USER_DATA | 0 | kvm->arch.xen.shinfo_cache.kvm->arch.vm_type | 0-255 |
| HALF_LOCKED2 | 0 | &kvm->lock |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_get_vcpu_by_id() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->arch.created_mediated_pmu | 1 |
| PARAM_VALUE | 0 | kvm->arch.enable_pmu | 0 |
| PARAM_VALUE | 0 | kvm->arch.max_vcpu_ids | 1-u32max |
| PARAM_VALUE | 0 | kvm->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | kvm->lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->task->blocked_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->task->blocked_lock.raw_lock.val.counter | s32min-s32max |
| PARAM_VALUE | 0 | kvm->lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | kvm->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | kvm->lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | kvm->lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | kvm->lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | kvm->max_vcpus | (-2147483647)-s32max |
| PARAM_VALUE | 0 | kvm->vcpu_ids | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->vm_dead | 0 |
| PARAM_VALUE | 1 | i | 0-4095 |
| BUF_SIZE | 0 | kvm | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | kvm->mm | 1 |
| CAPPED_DATA | 1 | i | 1 |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | $1 |
| FUZZY_MAX | 1 | i | 4095 |
| NOSPEC | 1 | i | |
| NOSPEC | 1 | i | |
| HARD_MAX | 1 | i | 4095 |
| USER_DATA | 1 | i | 1-4095[c] |
| LOCK2 | 0 | &kvm->lock | |
| TYPE_LOCK | (struct kvm)->lock |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_make_vcpus_request_mask() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 1 | i | 0-64 |
| CAPPED_DATA | 1 | i | 1 |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | r find_next_bit |
| PREEMPT_ADD | <- disables preempt | ||
| UNITS | 0 | kvm | unit_byte |
| HALF_LOCKED2 | &ioapic->lock |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_wait_for_vcpu_online() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 0 | kvm->vm_dead | 0 |
| UNITS | 0 | kvm | unit_byte |
| UNITS | 1 | i | unit_byte |
arch/x86/kvm/svm/avic.c avic_ga_log_notifier() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 1 | i | 0-255 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | global &svm_vm_data_hash_lock | ||
| HALF_LOCKED2 | _T->lock |
arch/x86/kvm/svm/avic.c kvm_get_vcpu_by_id() -> kvm_get_vcpu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | i | 0-4095 |
| CAPPED_DATA | 1 | i | 1 |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | i | $1 |
| FUZZY_MAX | 1 | i | 4095 |
| HARD_MAX | 1 | i | 4095 |
| UNITS | 0 | kvm | unit_byte |