Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

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

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.apic->vcpu->run->system_event.ndata 0-1,16
PARAM_VALUE 0 vcpu->arch.apic->vcpu->run->system_event.type 2-3,6-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ad_bytes 2,4,8
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->fetch.end 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->gpa_available 0
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->have_exception 1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->io_read.end 0
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->io_read.pos 0
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->lock_prefix 0-1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->mem_read.end 0
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.addr.mem.seg 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.addr.mm 0-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.addr.xmm 0-15
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.data 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.mm_val 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.type 0-1,4-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.val 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.val64 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memop.valptr 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memopp 0,4096-ptr_max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memopp->addr.mem.seg 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memopp->addr.mm 0-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memopp->addr.xmm 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memopp->bytes 1-2,4,6,8,10,16,18,32,34
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->memopp->type 0-1,4-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->mode 0-4
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->modrm_mod 0-3
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->modrm_reg 0-15
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->modrm_rm 0-15
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->modrm_seg 2-3
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->op_bytes 2,4,8,16,32
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->opcode_len 1-3
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->perm_ok 0
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->seg_override 0-5
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src->valptr 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.addr.mem.seg 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.bytes 1-2,4,6,8,10,16,18,32,34
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.data 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.mm_val 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.type 0-1,3-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.val 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.val64 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src.valptr 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2->valptr 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.addr.mem.seg 0-255
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.bytes 1-2,4,6,8,10,16,18,32,34
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.data 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.mm_val 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.type 0-1,3-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.val 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.val64 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->src2.valptr 0-u32max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->arch.gva_walk.cpu_role.base.cr0_wp 0-1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->arch.mmu->cpu_role.base.cr0_wp 0-1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->arch.mmu->pkru_mask 0-4294967295
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->arch.ngpa_walk.cpu_role.base.cr0_wp 0-1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->arch.ngpa_walk.pkru_mask 0-4294967295
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->last_used_slot->as_id 0-1
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->last_used_slot->base_gfn 0-s64max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->last_used_slot->gmem.pgoff 0-2251799813685247
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->last_used_slot->id 0-32766
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->vcpu->last_used_slot->npages 0-4503599627370495
PARAM_VALUE 0 vcpu->arch.exception.injected 0
PARAM_VALUE 0 vcpu->arch.exception.pending 0
PARAM_VALUE 0 vcpu->arch.exception_vmexit.pending 0
PARAM_VALUE 0 vcpu->arch.regs_avail 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_advance_ns 0-4294967295
PARAM_VALUE 0 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode_mask 0-4294967295
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->hypercall.ret 0-s32max,18446744071562067968-u64max
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.emulate_ctxt->fetch.data 0-255
PARAM_VALUE 0 *vcpu->arch.emulate_ctxt->vcpu->arch.ngpa_walk->permissions 0-u16max
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
DATA_SOURCE 0 vcpu $0
USER_DATA 0 vcpu->arch.cr8 0-14
USER_DATA 0 vcpu->arch.mmio_gfn 0-4503599627370495[c]
USER_DATA 0 vcpu->arch.mmio_gva 0,4096-u64max[c]
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_page_header_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_page_header_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_page_header_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_pte_list_desc_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_pte_list_desc_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadow_page_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadow_page_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadow_page_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadowed_info_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadowed_info_cache.nobjs
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 x86_emulate_instruction() -> inject_emulated_exception()

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.apic->vcpu->run->system_event.ndata 0-1,16
PARAM_VALUE 0 vcpu->arch.apic->vcpu->run->system_event.type 2-3,6-7
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_advance_ns 0-4294967295
PARAM_VALUE 0 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode_mask 0-4294967295
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->mmio_needed 0
PARAM_VALUE 0 vcpu->run->debug.arch.exception 1,3
PARAM_VALUE 0 vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
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
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
DATA_SOURCE 0 vcpu $0
USER_DATA 0 vcpu->arch.cr8 0-14
USER_DATA 0 vcpu->arch.mmio_gfn 0-4503599627370495[c]
USER_DATA 0 vcpu->arch.mmio_gva 0,4096-u64max[c]
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_page_header_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_page_header_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_page_header_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_pte_list_desc_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_pte_list_desc_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadow_page_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadow_page_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadow_page_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadowed_info_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadowed_info_cache.nobjs
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