Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

arch/x86/kvm/vmx/sgx.c __handle_encls_ecreate() -> kvm_prepare_emulation_failure_exit()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.gva_walk.gva_to_gpa 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.nested_run_pending 0
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
PARAM_VALUE 0 vcpu->last_used_slot 0,4096-ptr_max
PARAM_VALUE 0 vcpu->last_used_slot->base_gfn 0-18446744073709551614
CAPPED_DATA 0 vcpu->arch.cpuid_nent 1
DATA_SOURCE 0 vcpu $0
NOCHECK_CALL

arch/x86/kvm/vmx/sgx.c sgx_inject_fault() -> kvm_prepare_emulation_failure_exit()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.gva_walk.gva_to_gpa 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.nested_run_pending 0
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
PARAM_VALUE 0 vcpu->last_used_slot 0,4096-ptr_max
PARAM_VALUE 0 vcpu->last_used_slot->base_gfn 0-18446744073709551614
DATA_SOURCE 0 vcpu $0
NOCHECK_CALL

arch/x86/kvm/x86.c kvm_handle_memory_failure() -> kvm_prepare_emulation_failure_exit()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.apic->vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 0 vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
DATA_SOURCE 0 vcpu $0
NOCHECK_CALL
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

arch/x86/kvm/x86.c kvm_x86_vcpu_pre_run() -> kvm_prepare_emulation_failure_exit()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->____srcu_idx 0-1
PARAM_VALUE 0 vcpu->arch.apic->lapic_timer.timer.base->index 0-7
PARAM_VALUE 0 vcpu->arch.apic->lapic_timer.timer.is_queued 1
PARAM_VALUE 0 vcpu->arch.apic->lapic_timer.timer.node.expires 0-s64max
PARAM_VALUE 0 vcpu->arch.apic->lapic_timer.timer_mode 0,131072-393216
PARAM_VALUE 0 vcpu->arch.apic->pending_events 1
PARAM_VALUE 0 vcpu->arch.apic->vcpu->arch.pv.pv_unhalted 1
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->ready 1
PARAM_VALUE 0 vcpu->arch.complete_userspace_io 0
PARAM_VALUE 0 vcpu->arch.exception_from_userspace 0
PARAM_VALUE 0 vcpu->arch.guest_fpu.fpstate 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.guest_fpu.fpstate->in_use 1
PARAM_VALUE 0 vcpu->arch.mp_state s32min-3,5-s32max
PARAM_VALUE 0 vcpu->arch.nested_run_pending 0,2-255
PARAM_VALUE 0 vcpu->arch.tsc_catchup 1
PARAM_VALUE 0 vcpu->arch.tsc_offset_adjustment 0
PARAM_VALUE 0 vcpu->cpu 0
PARAM_VALUE 0 vcpu->kvm 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->kvm->arch.kvmclock_update_rs.lock.dep_map->name 0-255
PARAM_VALUE 0 vcpu->kvm->arch.noncoherent_dma_count.counter 0-1
PARAM_VALUE 0 vcpu->kvm->online_vcpus.counter (-2147483647)-s32max
PARAM_VALUE 0 vcpu->kvm->srcu.srcu_ctrp 4096-ptr_max
PARAM_VALUE 0 vcpu->mutex.dep_map->name 0-255
PARAM_VALUE 0 vcpu->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vcpu->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 vcpu->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 vcpu->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vcpu->preempt_notifier.link->pprev 4096-ptr_max
PARAM_VALUE 0 vcpu->preempt_notifier.link.pprev 4096-ptr_max
PARAM_VALUE 0 vcpu->run 4096-ptr_max
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->flags 0
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->mmio.is_write 0-1
PARAM_VALUE 0 vcpu->run->mmio.len 0-8
PARAM_VALUE 0 vcpu->vcpu_idx s32min-2147483646
PARAM_VALUE 0 vcpu->wants_to_run 1
BUF_SIZE 0 vcpu s32min-(-2),1-s32max
BUF_SIZE 0 vcpu s32min-(-2),1-s32max
CAPPED_DATA 0 vcpu 1
CAPPED_DATA 0 vcpu->kvm->mm 1
CAPPED_DATA 0 vcpu->kvm->srcu.srcu_ctrp 1
CAPPED_DATA 0 vcpu->vcpu_idx 1
DATA_SOURCE 0 vcpu $0
FUZZY_MAX 0 vcpu->arch.nested_run_pending 2
NOCHECK_CALL
USER_DATA 0 vcpu->arch.cr8 0-14
USER_DATA 0 vcpu->arch.exception.payload 0
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
USER_DATA 0 *vcpu->arch.sev_pio_data s64min-s64max
NO_OVERFLOW_SIMPLE 0 vcpu->arch.pio.count
NO_OVERFLOW_SIMPLE 0 vcpu->arch.pio.size
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
LOCK2 0 &vcpu->kvm->srcu
LOCK2 0 &vcpu->mutex
TYPE_LOCK (struct kvm)->srcu
TYPE_LOCK (struct kvm_vcpu)->mutex

arch/x86/kvm/vmx/vmx.c handle_invalid_guest_state() -> kvm_prepare_emulation_failure_exit()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
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.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.exception.pending 0
PARAM_VALUE 0 vcpu->arch.exception_vmexit.pending 0
PARAM_VALUE 0 vcpu->arch.nested_run_pending 0
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
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->arch.emulate_ctxt->fetch.data 0-255
DATA_SOURCE 0 vcpu $0
NOCHECK_CALL
USER_DATA 0 vcpu->arch.exception.payload 0-u64max
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
USER_DATA 0 *vcpu->arch.hyperv->vp_assist_page.intercept_message 0-255
USER_DATA 0 *vcpu->arch.hyperv->vp_assist_page.reserved2 0-255
USER_DATA 0 *vcpu->arch.hyperv->vp_assist_page.reserved3 0-255
USER_DATA 0 *vcpu->arch.hyperv->vp_assist_page.reserved4 0-255
USER_DATA 0 *vcpu->arch.hyperv->vp_assist_page.virtualization_fault_information 0-255
USER_DATA 0 *vcpu->arch.hyperv->vp_assist_page.vtl_ret_actions 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