Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 7 files:

Smatch caller information:

arch/x86/kvm/i8254.c pit_do_work() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 1 irq_source_id 2
PARAM_VALUE 2 irq 0
PARAM_VALUE 3 level 1
PARAM_VALUE 4 line_status 0
NOCHECK_CALL

arch/x86/kvm/i8254.c pit_do_work() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.disabled_lapic_found 1
PARAM_VALUE 0 kvm->arch.vioapic->kvm->arch.disabled_lapic_found 1
PARAM_VALUE 0 kvm->arch.vioapic->kvm->vm_bugged 1
PARAM_VALUE 0 kvm->arch.vioapic->kvm->vm_dead 1
PARAM_VALUE 0 kvm->arch.vioapic->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.vioapic->rtc_status->vectors 0-255
PARAM_VALUE 0 kvm->arch.vpic->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.vpic->wakeup_needed 0
PARAM_VALUE 0 kvm->irq_routing 0,4096-ptr_max
PARAM_VALUE 0 kvm->irq_srcu.dep_map->name 0-255
PARAM_VALUE 0 kvm->irq_srcu.srcu_ctrp 4096-ptr_max
PARAM_VALUE 0 kvm->vm_bugged 1
PARAM_VALUE 1 irq_source_id 2
PARAM_VALUE 2 irq 0
PARAM_VALUE 3 level 0
PARAM_VALUE 4 line_status 0
CAPPED_DATA 0 kvm->irq_routing 1
CAPPED_DATA 0 kvm->irq_srcu.srcu_ctrp 1
NOCHECK_CALL

arch/x86/kvm/../../../virt/kvm/eventfd.c irqfd_inject() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 1 irq_source_id 0
PARAM_VALUE 3 level 1
PARAM_VALUE 4 line_status 0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

arch/x86/kvm/../../../virt/kvm/eventfd.c irqfd_inject() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.disabled_lapic_found 1
PARAM_VALUE 0 kvm->arch.vioapic->irr 0-4294967295
PARAM_VALUE 0 kvm->arch.vioapic->irr_delivered 0-4294967295
PARAM_VALUE 0 kvm->arch.vioapic->kvm->arch.disabled_lapic_found 1
PARAM_VALUE 0 kvm->arch.vioapic->kvm->vm_bugged 1
PARAM_VALUE 0 kvm->arch.vioapic->kvm->vm_dead 1
PARAM_VALUE 0 kvm->arch.vioapic->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.vioapic->rtc_status->vectors 0-255
PARAM_VALUE 0 kvm->arch.vioapic->rtc_status.pending_eoi s32min-s32max
PARAM_VALUE 0 kvm->arch.vpic->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.vpic->wakeup_needed 0
PARAM_VALUE 0 kvm->irq_routing 0,4096-ptr_max
PARAM_VALUE 0 kvm->irq_srcu.dep_map->name 0-255
PARAM_VALUE 0 kvm->irq_srcu.srcu_ctrp 4096-ptr_max
PARAM_VALUE 0 kvm->vm_bugged 1
PARAM_VALUE 1 irq_source_id 0
PARAM_VALUE 3 level 0
PARAM_VALUE 4 line_status 0
CAPPED_DATA 0 kvm->irq_routing 1
CAPPED_DATA 0 kvm->irq_srcu.srcu_ctrp 1
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

arch/x86/kvm/../../../virt/kvm/eventfd.c irqfd_inject() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 1 irq_source_id 1
PARAM_VALUE 3 level 1
PARAM_VALUE 4 line_status 0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

arch/x86/kvm/../../../virt/kvm/eventfd.c irqfd_resampler_ack() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 1 irq_source_id 1
PARAM_VALUE 3 level 0
PARAM_VALUE 4 line_status 0
NOCHECK_CALL
LOCK2 &kvm->irq_srcu
TYPE_LOCK (struct kvm)->irq_srcu

arch/x86/kvm/../../../virt/kvm/eventfd.c irqfd_resampler_shutdown() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.irqchip_mode 0-s32max
PARAM_VALUE 0 kvm->irq_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->irq_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 kvm->irq_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 kvm->irq_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->irq_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 kvm->irq_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 kvm->irq_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 kvm->irq_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 kvm->irq_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 kvm->irq_srcu.srcu_ctrp 4096-ptr_max
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup 4096-ptr_max
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup->irq_work.node.a_flags.counter 0-s32max
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup->lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup->lock.owner (-1)
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup->lock.owner_cpu u32max
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup->work.work.entry.next 4096-ptr_max
PARAM_VALUE 0 kvm->irq_srcu.srcu_sup->work.work.entry.prev 2076614606316732416
PARAM_VALUE 0 kvm->irqfds.resampler_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->irqfds.resampler_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 kvm->irqfds.resampler_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 kvm->irqfds.resampler_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 kvm->irqfds.resampler_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->irqfds.resampler_lock.wait_lock.owner (-1)
PARAM_VALUE 0 kvm->irqfds.resampler_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 irq_source_id 1
PARAM_VALUE 3 level 0
PARAM_VALUE 4 line_status 0
CAPPED_DATA 0 &kvm->irqfds.resampler_lock 1
NOCHECK_CALL
USER_DATA 2 irq 0-u32max
LOCK2 0 &kvm->irqfds.resampler_lock
TYPE_LOCK (struct kvm)->irqfds.resampler_lock

arch/x86/kvm/irq.c kvm_vm_ioctl_irq_line() -> kvm_set_irq()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.irqchip_mode 1-u32max
PARAM_VALUE 0 kvm->vm_dead 0
PARAM_VALUE 1 irq_source_id 0
BUF_SIZE 0 kvm s32min-(-2),1-s32max
BUF_SIZE 0 kvm s32min-(-2),1-s32max
CAPPED_DATA 0 kvm->mm 1
DATA_SOURCE 0 kvm $0
DATA_SOURCE 4 line_status $2
USER_DATA 2 irq 0-u32max
USER_DATA 3 level s32min-s32max
USER_DATA 4 line_status 0[c]