Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

arch/x86/kvm/lapic.c __apic_read() -> apic_update_ppr()

Type Parameter Key Value
PARAM_VALUE 0 apic 4096-ptr_max
PARAM_VALUE 0 apic->vcpu 4096-ptr_max
DATA_SOURCE 0 apic $0
NOCHECK_CALL

arch/x86/kvm/lapic.c apic_set_eoi() -> apic_update_ppr()

Type Parameter Key Value
PARAM_VALUE 0 apic 4096-ptr_max
PARAM_VALUE 0 apic->vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode 0-4294967295
PARAM_VALUE 0 apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 apic->vcpu->run->hypercall.ret 0-s32max,1844674407370955159,18446744071562067968-u64max
PARAM_VALUE 0 apic->vcpu->run->system_event.ndata 0-1,16
PARAM_VALUE 0 apic->vcpu->run->system_event.type 2-3,6-7
PARAM_VALUE 0 *apic->vcpu->kvm->arch.vioapic->irq_eoi 0-4294967295
DATA_SOURCE 0 apic $0
PREEMPT_ADD
NOCHECK_CALL
HALF_LOCKED2 &vcpu->kvm->srcu
HALF_LOCKED2 &vcpu->mutex

arch/x86/kvm/lapic.c apic_set_tpr() -> apic_update_ppr()

Type Parameter Key Value
PARAM_VALUE 0 apic 4096-ptr_max
PARAM_VALUE 0 apic->regs 4096-ptr_max
PARAM_VALUE 0 apic->vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode 0-4294967295
PARAM_VALUE 0 apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 apic->vcpu->run->tpr_access.is_write 0-1
PARAM_VALUE 0 *apic->vcpu->kvm->arch.vioapic->irq_eoi 0-4294967295
DATA_SOURCE 0 apic $0
PREEMPT_ADD
NOCHECK_CALL
USER_DATA 0 apic->lapic_timer.tscdeadline 0-u64max
USER_DATA 0 apic->sipi_vector 1-255[c]
HALF_LOCKED2 &vcpu->kvm->srcu
HALF_LOCKED2 &vcpu->mutex

arch/x86/kvm/lapic.c kvm_apic_ack_interrupt() -> apic_update_ppr()

Type Parameter Key Value
PARAM_VALUE 0 apic 4096-ptr_max
PARAM_VALUE 0 apic->guest_apic_protected 0
PARAM_VALUE 0 apic->lapic_timer.timer_advance_ns 0-5000
PARAM_VALUE 0 apic->lapic_timer.timer_mode 0,131072-393216
PARAM_VALUE 0 apic->lapic_timer.timer_mode_mask 0,131072,393216
CAPPED_DATA 0 apic->lapic_timer.timer_advance_ns 1
PREEMPT_ADD
NOCHECK_CALL
HALF_LOCKED2 &vcpu->kvm->srcu
HALF_LOCKED2 &vcpu->mutex

arch/x86/kvm/lapic.c kvm_apic_set_state() -> apic_update_ppr()

Type Parameter Key Value
PARAM_VALUE 0 apic 4096-ptr_max
PARAM_VALUE 0 apic->guest_apic_protected 0
PARAM_VALUE 0 apic->lapic_timer.timer.is_queued 1
PARAM_VALUE 0 apic->lapic_timer.timer.node.expires 0-s64max
PARAM_VALUE 0 apic->lapic_timer.timer_mode_mask 131072,393216
PARAM_VALUE 0 apic->regs 4096-ptr_max
PARAM_VALUE 0 apic->sipi_vector 0-u16max
PARAM_VALUE 0 apic->vcpu 4096-ptr_max
PARAM_VALUE 0 apic->vcpu->arch.xen.vcpu_info_cache.lock.dep_map->name 0-255
PARAM_VALUE 0 apic->vcpu->kvm->arch.apic_map_dirty.counter 2
PARAM_VALUE 0 apic->vcpu->kvm->arch.disabled_lapic_found 1
PARAM_VALUE 0 apic->vcpu->kvm->vm_bugged 1
PARAM_VALUE 0 apic->vcpu->kvm->vm_dead 1
NOCHECK_CALL
LOCK2 &vcpu->mutex
TYPE_LOCK (struct kvm_vcpu)->mutex

arch/x86/kvm/lapic.c kvm_apic_update_ppr() -> apic_update_ppr()

Type Parameter Key Value
NOCHECK_CALL

arch/x86/kvm/lapic.c kvm_lapic_reset() -> apic_update_ppr()

Type Parameter Key Value
PARAM_VALUE 0 apic 4096-ptr_max
PARAM_VALUE 0 apic->lapic_timer.hv_timer_in_use 0
PARAM_VALUE 0 apic->lapic_timer.pending.counter 0
PARAM_VALUE 0 apic->lapic_timer.tscdeadline 0
PARAM_VALUE 0 apic->regs 4096-ptr_max
PARAM_VALUE 0 apic->sw_enabled 0
PARAM_VALUE 0 apic->vcpu 4096-ptr_max
PARAM_VALUE 0 apic->vcpu->arch.apic 0,4096-ptr_max
PARAM_VALUE 0 apic->vcpu->kvm->arch.apic_map_dirty.counter 2
CAPPED_DATA 0 apic->lapic_timer.timer.base 1
CAPPED_DATA 0 apic->nr_lvt_entries 1
CAPPED_DATA 0 &apic->lapic_timer.timer 1
PARAM_COMPARE 0 &apic->lapic_timer.timer != $0->lapic_timer.timer.base->running
NOCHECK_CALL
USER_DATA 0 apic->lapic_timer.expired_tscdeadline 0-u64max
USER_DATA 0 apic->lapic_timer.tscdeadline 0
USER_DATA 0 apic->sipi_vector 1-255[c]
HALF_LOCKED2 &vcpu->kvm->srcu
HALF_LOCKED2 &vcpu->mutex