Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 13 files:

Smatch caller information:

arch/x86/kvm/x86.c emulator_pio_in_out() -> kvm_io_bus_write()

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 1 bus_idx 1
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
BUF_SIZE 0 vcpu s32min-(-1),1-s32max
BUF_SIZE 0 vcpu->arch.sev_pio_data s32min,(-1),1-65536
BUF_SIZE 4 val s32min,(-1),1-65536
BUF_SIZE 4 val s32min,(-1),1-65536
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 2 addr $2
DATA_SOURCE 3 len $1
DATA_SOURCE 4 val $3 [m]
USER_DATA 0 vcpu->arch.cr8 0-14
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
NO_OVERFLOW_SIMPLE 0 vcpu->arch.pio.count
NO_OVERFLOW_SIMPLE 0 vcpu->arch.pio.size
NO_OVERFLOW_SIMPLE 0 vcpu->arch.sev_pio_count
NO_OVERFLOW_SIMPLE 3 len
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end
USER_PTR 0 vcpu->arch.pdptrs
HALF_LOCKED2 0 &vcpu->kvm->srcu
HALF_LOCKED2 0 &vcpu->mutex

arch/x86/kvm/x86.c vcpu_mmio_write() -> kvm_io_bus_write()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.apic 0,4096-ptr_max
PARAM_VALUE 0 vcpu->arch.apic->dev.ops->write 4096-ptr_max
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->run->hypercall.ret 0-s32max,18446744071562067968-u64max
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 bus_idx 0
PARAM_VALUE 3 len s32min-8
BUF_SIZE 0 vcpu (-1),1-s32max
BUF_SIZE 0 vcpu (-1),1-s32max
BUF_SIZE 4 val s32min,(-1),1-65536
BUF_SIZE 4 val s32min,(-1),1-65536
CAPPED_DATA 3 len 1
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 2 addr $1 [m]
USER_DATA 0 *vcpu->arch.emulate_ctxt->fetch.end 0-255
UNITS 2 addr unit_byte
UNITS 3 len unit_byte
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end
USER_PTR 4 val

arch/x86/kvm/svm/svm.c npf_interception() -> kvm_io_bus_write()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 0 vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
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 bus_idx 3
PARAM_VALUE 3 len 0
PARAM_VALUE 4 val 0
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
UNITS 2 addr unit_byte
USER_PTR 0 vcpu->arch.emulate_ctxt->fetch.end

arch/x86/kvm/vmx/tdx.c tdx_mmio_write() -> kvm_io_bus_write()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.vm_type 5
PARAM_VALUE 1 bus_idx 3
PARAM_VALUE 3 len 0
PARAM_VALUE 4 val 0
CAPPED_DATA 2 addr 1
CAPPED_DATA 2 addr 1
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 2 addr $1
UNITS 2 addr unit_byte

arch/x86/kvm/vmx/tdx.c tdx_mmio_write() -> kvm_io_bus_write()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
PARAM_VALUE 0 vcpu->kvm->arch.vm_type 5
PARAM_VALUE 1 bus_idx 0
PARAM_VALUE 3 len 1-2,4,8
BUF_SIZE 4 val 8
CAPPED_DATA 2 addr 1
CAPPED_DATA 2 addr 1
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 2 addr $1
DATA_SOURCE 3 len $2
UNITS 2 addr unit_byte
UNITS 3 len unit_byte

arch/x86/kvm/vmx/vmx.c handle_ept_misconfig() -> kvm_io_bus_write()

Type Parameter Key Value
PARAM_VALUE 0 vcpu 4096-ptr_max
PARAM_VALUE 0 vcpu->arch.nested_run_pending 0
PARAM_VALUE 0 vcpu->kvm 4096-ptr_max
PARAM_VALUE 1 bus_idx 3
PARAM_VALUE 3 len 0
PARAM_VALUE 4 val 0
DATA_SOURCE 0 vcpu $0
DATA_SOURCE 2 addr r vmcs_read64