Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

arch/x86/kvm/svm/sev.c sev_es_sync_from_ghcb() -> __kvm_set_xcr()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 1 index 0
BUF_SIZE 0 vcpu 7720
MEM_ZERO 0 vcpu->arch.regs
NOCHECK_CALL

arch/x86/kvm/x86.c emulator_set_xcr() -> __kvm_set_xcr()

Type Parameter Key Value
DATA_SOURCE 1 index $1
DATA_SOURCE 2 xcr $2

arch/x86/kvm/x86.c kvm_emulate_xsetbv() -> __kvm_set_xcr()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
BUF_SIZE 0 vcpu (-1),7720
BUF_SIZE 0 vcpu (-1),7720
DATA_SOURCE 0 vcpu $0
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end

arch/x86/kvm/x86.c kvm_vcpu_ioctl_x86_set_xcrs() -> __kvm_set_xcr()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 1 index 0
BUF_SIZE 0 vcpu s32min-(-2),1-s32max
BUF_SIZE 0 vcpu s32min-(-2),1-s32max
CAPPED_DATA 0 vcpu 1
DATA_SOURCE 0 vcpu $0
LOCK2 &vcpu->mutex
TYPE_LOCK (struct kvm_vcpu)->mutex

arch/x86/kvm/x86.c kvm_vcpu_reset() -> __kvm_set_xcr()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.cpuid_dynamic_bits_dirty 1
PARAM_VALUE 1 index 0
PARAM_VALUE 2 xcr 1
BUF_SIZE 0 vcpu->arch.mce_banks 8
BUF_SIZE 0 vcpu->arch.mci_ctl2_banks 8
CAPPED_DATA 0 vcpu 1
CAPPED_DATA 0 vcpu->kvm 1
CAPPED_DATA 0 vcpu->kvm->arch.default_tsc_khz 1
CAPPED_DATA 0 vcpu->vcpu_id 1
DATA_SOURCE 0 vcpu $0
NOSPEC 0 vcpu->vcpu_id
MEM_ZERO 0 vcpu->arch.db
MEM_ZERO 0 vcpu->arch.regs_avail
MEM_ZERO 0 vcpu->arch.regs_dirty
MEM_ZERO 0 &vcpu->arch.pmu
MEM_ZERO 0 &vcpu->arch.xen.timer
NOCHECK_CALL
USER_DATA 0 vcpu->arch.l1_tsc_offset 0-u64max
USER_DATA 0 vcpu->arch.pv_time.kvm->arch.has_private_mem 0[c]
USER_DATA 0 vcpu->arch.pv_time.kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 vcpu->arch.pv_time.kvm->arch.vm_type 0-6
USER_DATA 0 vcpu->arch.tsc_offset 0-u64max
USER_DATA 0 vcpu->arch.virtual_tsc_khz 1-u32max
USER_DATA 0 vcpu->arch.xen.runstate2_cache.kvm->arch.has_private_mem 0[c]
USER_DATA 0 vcpu->arch.xen.runstate2_cache.kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 vcpu->arch.xen.runstate2_cache.kvm->arch.vm_type 0-5
USER_DATA 0 vcpu->arch.xen.runstate_cache.kvm->arch.has_private_mem 0[c]
USER_DATA 0 vcpu->arch.xen.runstate_cache.kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 vcpu->arch.xen.runstate_cache.kvm->arch.vm_type 0-5
USER_DATA 0 vcpu->arch.xen.vcpu_info_cache.kvm->arch.has_private_mem 0[c]
USER_DATA 0 vcpu->arch.xen.vcpu_info_cache.kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 vcpu->arch.xen.vcpu_info_cache.kvm->arch.vm_type 0-5
USER_DATA 0 vcpu->arch.xen.vcpu_time_info_cache.kvm->arch.has_private_mem 0[c]
USER_DATA 0 vcpu->arch.xen.vcpu_time_info_cache.kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 vcpu->arch.xen.vcpu_time_info_cache.kvm->arch.vm_type 0-5
USER_DATA 0 vcpu->vcpu_id 1-16383[c]
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.capacity
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_external_spt_cache.kmem_cache->object_size
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->object_size
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.kmem_cache->object_size
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_pte_list_desc_cache.kmem_cache->sheaf_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->object_size
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.kmem_cache->object_size
NO_OVERFLOW_SIMPLE 0 vcpu->arch.mmu_shadowed_info_cache.nobjs
NO_OVERFLOW_SIMPLE 0 vcpu->arch.pio.count
NO_OVERFLOW_SIMPLE 0 vcpu->arch.pio.size
NO_OVERFLOW_SIMPLE 0 vcpu->run->io.count
NO_OVERFLOW_SIMPLE 0 vcpu->run->io.size