Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

arch/x86/kvm/mmu/mmu.c kvm_mmu_page_fault() -> x86_emulate_instruction()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.apf.data.hva 18379471554275704832-u64max
PARAM_VALUE 0 vcpu->arch.apf.data.memslot 0,4096-ptr_max
PARAM_VALUE 0 vcpu->arch.apic->vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode 0-4294967295
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.exception.has_error_code 1
PARAM_VALUE 0 vcpu->arch.exception.injected 0
PARAM_VALUE 0 vcpu->arch.exception_vmexit.injected 0
PARAM_VALUE 0 vcpu->arch.mmu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.mmu->root.hpa 0-18446744073709551614
PARAM_VALUE 0 vcpu->arch.mmu_external_spt_cache.capacity 40,553
PARAM_VALUE 0 vcpu->arch.mmu_page_header_cache.capacity 40,553
PARAM_VALUE 0 vcpu->arch.mmu_pte_list_desc_cache.capacity 40,553
PARAM_VALUE 0 vcpu->arch.mmu_shadow_page_cache.capacity 40,553
PARAM_VALUE 0 vcpu->arch.mmu_shadowed_info_cache.capacity 40,553
PARAM_VALUE 0 vcpu->arch.mmu_shadowed_info_cache.nobjs 1-s32max
PARAM_VALUE 0 vcpu->arch.mmu_shadowed_info_cache.objects 1-u64max
PARAM_VALUE 0 vcpu->async_pf.queue.prev 4096-ptr_max
PARAM_VALUE 0 vcpu->async_pf.queue.prev->next 4096-ptr_max
PARAM_VALUE 0 vcpu->async_pf.queue.prev->next->next 4096-ptr_max
PARAM_VALUE 0 vcpu->async_pf.queued 0-64
PARAM_VALUE 0 vcpu->kvm->arch.active_mmu_pages.next 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.active_mmu_pages.next->next 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.active_mmu_pages.next->prev 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode 0-4294967295
PARAM_VALUE 0 vcpu->kvm->arch.mmu_unsync_pages_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 vcpu->kvm->arch.tdp_mmu_pages_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 vcpu->kvm->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 vcpu->kvm->stat.max_mmu_page_hash_collisions 1-s32max
PARAM_VALUE 0 vcpu->last_used_slot->as_id 0-1
PARAM_VALUE 0 vcpu->last_used_slot->id 0-32766
PARAM_VALUE 0 vcpu->run->debug.arch.exception 1,3
PARAM_VALUE 0 vcpu->run->emulation_failure.flags 0-1
PARAM_VALUE 0 vcpu->run->emulation_failure.insn_size 1-255
PARAM_VALUE 0 vcpu->run->emulation_failure.ndata 6,8,10,12
PARAM_VALUE 0 vcpu->run->emulation_failure.suberror 1
PARAM_VALUE 0 vcpu->run->exit_reason 10,39
PARAM_VALUE 0 vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
PARAM_VALUE 0 vcpu->run->internal.ndata 0,2,4-5
PARAM_VALUE 0 vcpu->run->internal.suberror 1-4
PARAM_VALUE 0 vcpu->run->memory_fault.flags 0,8
PARAM_VALUE 0 vcpu->run->memory_fault.gpa 0,4096-18446744073709547520
PARAM_VALUE 0 vcpu->run->memory_fault.size 4096
PARAM_VALUE 0 *vcpu->arch.apf.gfns 0-4503599627370495
PARAM_VALUE 2 emulation_type 64,72,320,328
BUF_SIZE 3 insn (-1)-0,15
BUF_SIZE 3 insn (-1)-0,15
CAPPED_DATA 0 vcpu->arch.mmu 1
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 1 cr2_or_gpa $1
DATA_SOURCE 3 insn $3
DATA_SOURCE 4 insn_len $4
FUZZY_MAX 2 emulation_type 64
USER_DATA 0 vcpu->arch.mmio_gfn 0-4503599627370495[c]
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
UNITS 1 cr2_or_gpa unit_byte
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.intercept_message
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.reserved2
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.reserved3
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.reserved4
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.virtualization_fault_information
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.vtl_ret_actions

arch/x86/kvm/x86.c kvm_emulate_instruction() -> x86_emulate_instruction()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vcpu->kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 vcpu->run->debug.arch.exception 1,3
PARAM_VALUE 0 vcpu->run->emulation_failure.flags 0-1
PARAM_VALUE 0 vcpu->run->emulation_failure.insn_size 1-255
PARAM_VALUE 0 vcpu->run->emulation_failure.ndata 6,8,10,12
PARAM_VALUE 0 vcpu->run->emulation_failure.suberror 1
PARAM_VALUE 0 vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
PARAM_VALUE 0 vcpu->run->internal.ndata 0,2,4-5
PARAM_VALUE 0 vcpu->run->internal.suberror 1-4
PARAM_VALUE 1 cr2_or_gpa 0
PARAM_VALUE 2 emulation_type 0-2,4,16,32-33,133,516,66052-16712196
PARAM_VALUE 3 insn 0
PARAM_VALUE 4 insn_len 0
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 2 emulation_type $1
FUZZY_MAX 2 emulation_type 16
BIT_INFO 2 emulation_type 0x0,0xff02b7
USER_DATA 0 vcpu->arch.cr8 0-14
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.intercept_message
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.reserved2
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.reserved3
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.reserved4
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.virtualization_fault_information
USER_PTR 0 vcpu->arch.hyperv->vp_assist_page.vtl_ret_actions
USER_PTR 0 vcpu->arch.pdptrs
HALF_LOCKED2 0 &vcpu->kvm->srcu
HALF_LOCKED2 0 &vcpu->mutex

arch/x86/kvm/x86.c kvm_emulate_instruction_from_buffer() -> x86_emulate_instruction()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 *vcpu->arch.emulate_ctxt->dst.valptr 0-255
PARAM_VALUE 0 *vcpu->arch.emulate_ctxt->fetch.data 0-255
PARAM_VALUE 0 *vcpu->arch.emulate_ctxt->src.valptr 0-255
PARAM_VALUE 0 *vcpu->arch.emulate_ctxt->src2.valptr 0-255
PARAM_VALUE 1 cr2_or_gpa 0
PARAM_VALUE 2 emulation_type 0
PARAM_VALUE 3 insn 2440962810721808384
PARAM_VALUE 4 insn_len 2
BUF_SIZE 3 insn 3
BUF_SIZE 3 insn 3
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 3 insn $1
DATA_SOURCE 4 insn_len $2
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end