Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
Smatch caller information:
arch/x86/kvm/regs.c kvm_set_dr() -> kvm_update_dr7()
| 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.apic->vcpu->run->emulation_failure.ndata | 6,8,10,12 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->run->hypercall.ret | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->run->system_event.ndata | 1,16 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->run->system_event.type | 6-7 |
| PARAM_VALUE | 0 | vcpu->arch.dr7 | 1024-4294914047 |
| PARAM_VALUE | 0 | vcpu->arch.emulate_ctxt->ops->get_cr | 8265647234411626496 |
| 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->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->fail_entry.hardware_entry_failure_reason | 0-u32max,u64max |
| PARAM_VALUE | 0 | vcpu->run->hypercall.flags | 0-1 |
| PARAM_VALUE | 0 | vcpu->run->hypercall.nr | 12 |
| 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->memory_fault.flags | 0,8 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.gpa | 0,4096-18446744073709547520 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.size | 4096 |
| PARAM_VALUE | 0 | vcpu->run->mmio.is_write | 0-1 |
| PARAM_VALUE | 0 | vcpu->run->mmio.len | 0-8 |
| PARAM_VALUE | 0 | vcpu->run->notify.flags | 0-1 |
| PARAM_VALUE | 0 | vcpu->run->snp_req_certs.ret | 0 |
| PARAM_VALUE | 0 | vcpu->run->system_event.ndata | 1,16 |
| PARAM_VALUE | 0 | vcpu->run->system_event.type | 6-7 |
| PARAM_VALUE | 0 | vcpu->run->tpr_access.is_write | 0-1 |
| DATA_SOURCE | 0 | vcpu | $0 |
| BIT_INFO | 0 | vcpu->arch.dr7 | 0x400,0xffff2fff |
| NOCHECK_CALL | |||
| USER_DATA | 0 | vcpu->arch.dr7 | 1024-4294914047[c] |
| USER_DATA | 0 | *vcpu->arch.emulate_ctxt->fetch.end | 0-255 |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_external_spt_cache.capacity | |
| 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->sheaf_capacity | |
| 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.nobjs | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_shadow_page_cache.capacity | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_shadow_page_cache.kmem_cache->sheaf_capacity | |
| 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.nobjs | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.pio.count | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.pio.size | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->kvm->arch.split_page_header_cache.kmem_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->kvm->arch.split_shadow_page_cache.kmem_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->run->io.count | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->run->io.size | |
| USER_PTR | 0 | vcpu->arch.emulate_ctxt->fetch.end |
arch/x86/kvm/regs.c kvm_vcpu_ioctl_x86_set_debugregs() -> kvm_update_dr7()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vcpu | 4096-ptr_max |
| 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->sipi_vector | 0-u16max |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->arch.pv.pv_unhalted | 1 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->ready | 1 |
| PARAM_VALUE | 0 | vcpu->arch.db | 4096-ptr_max |
| 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->guest_debug | 131072-u64max |
| PARAM_VALUE | 0 | vcpu->kvm | 4096-ptr_max |
| 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->preempt_notifier.link->pprev | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->preempt_notifier.link.pprev | 4096-ptr_max |
| 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 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | vcpu->arch.dr6 | 0-u64max |
| USER_DATA | 0 | vcpu->arch.dr7 | 0-u64max |
| LOCK2 | &vcpu->mutex | ||
| TYPE_LOCK | (struct kvm_vcpu)->mutex |
arch/x86/kvm/x86.c kvm_arch_vcpu_ioctl_set_guest_debug() -> kvm_update_dr7()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vcpu | 4096-ptr_max |
| 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.node.node.node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_mode | 0,131072-393216 |
| PARAM_VALUE | 0 | vcpu->arch.db | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.eff_db | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.guest_state_protected | 0 |
| PARAM_VALUE | 0 | vcpu->arch.tsc_offset_adjustment | 0 |
| PARAM_VALUE | 0 | vcpu->cpu | 0 |
| PARAM_VALUE | 0 | vcpu->guest_debug | 0-u32max |
| PARAM_VALUE | 0 | vcpu->kvm | 4096-ptr_max |
| 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->vm_dead | 0 |
| 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.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | vcpu->mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vcpu->mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | vcpu->mutex.wait_lock.owner_cpu | u32max |
| 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->vcpu_idx | s32min-2147483646 |
| 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->vcpu_idx | 1 |
| DATA_SOURCE | 0 | vcpu | $0 |
| FUZZY_MAX | 0 | vcpu->guest_debug | 0 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | vcpu->guest_debug | 1-u32max |
| LOCK2 | 0 | &vcpu->mutex | |
| TYPE_LOCK | (struct kvm_vcpu)->mutex |
arch/x86/kvm/x86.c kvm_check_and_inject_events() -> kvm_update_dr7()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vcpu | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->____srcu_idx | 0-1 |
| PARAM_VALUE | 0 | vcpu->arch.apf.halted | 0 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer.node.node.node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_advance_ns | 0-5000 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_mode | 0,131072-393216 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_mode_mask | 131072,393216 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode | 0-4294967295 |
| 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.at_instruction_boundary | 0 |
| PARAM_VALUE | 0 | vcpu->arch.complete_userspace_io | 0 |
| PARAM_VALUE | 0 | vcpu->arch.exception.vector | 1 |
| PARAM_VALUE | 0 | vcpu->arch.exception_from_userspace | 0 |
| PARAM_VALUE | 0 | vcpu->arch.exception_vmexit.pending | 0 |
| PARAM_VALUE | 0 | vcpu->arch.guest_fpu.fpstate | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.mp_state | 0 |
| PARAM_VALUE | 0 | vcpu->arch.nested_run_pending | 0,2-255 |
| 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.irqchip_mode | 0,2-u32max |
| PARAM_VALUE | 0 | vcpu->kvm->arch.kvmclock_update_rs.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vcpu->kvm->arch.kvmclock_update_rs.lock.owner | (-1) |
| PARAM_VALUE | 0 | vcpu->kvm->arch.kvmclock_update_rs.lock.owner_cpu | u32max |
| 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->mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | vcpu->mutex.wait_lock.owner_cpu | u32max |
| 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->requests | 0-1 |
| 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->exit_reason | 0,10,39 |
| PARAM_VALUE | 0 | vcpu->run->flags | 0 |
| PARAM_VALUE | 0 | vcpu->run->hypercall.ret | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 0 | vcpu->run->hyperv.type | 0-3 |
| 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->memory_fault.flags | 0,8 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.gpa | 0,4096-18446744073709547520 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.size | 4096 |
| PARAM_VALUE | 0 | vcpu->run->mmio.is_write | 0-1 |
| PARAM_VALUE | 0 | vcpu->run->mmio.len | 0-8 |
| PARAM_VALUE | 0 | vcpu->run->request_interrupt_window | 1-255 |
| PARAM_VALUE | 0 | vcpu->run->system_event.ndata | 0-1,16 |
| PARAM_VALUE | 0 | vcpu->run->system_event.type | 2-3,6-7 |
| PARAM_VALUE | 0 | vcpu->wants_to_run | 1 |
| PARAM_VALUE | 0 | *vcpu->arch.apic->vcpu->kvm->arch.vioapic->irq_eoi | 0-4294967295 |
| BUF_SIZE | 0 | vcpu | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | vcpu | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | vcpu->kvm | 1 |
| CAPPED_DATA | 0 | vcpu->kvm->mm | 1 |
| CAPPED_DATA | 0 | vcpu->kvm->srcu.srcu_ctrp | 1 |
| DATA_SOURCE | 0 | vcpu | $0 |
| FUZZY_MAX | 0 | vcpu->run->exit_reason | 0 |
| BIT_INFO | 0 | vcpu->arch.dr7 | 0x0,0xffffffffffffdfff |
| NOCHECK_CALL | |||
| HOST_DATA | 0 | vcpu->arch.host_debugctl | 0-u64max[c] |
| USER_DATA | 0 | vcpu->arch.apic->lapic_timer.expired_tscdeadline | 0-u64max |
| USER_DATA | 0 | vcpu->arch.apic->lapic_timer.tscdeadline | 0-u64max |
| USER_DATA | 0 | vcpu->arch.apic->sipi_vector | 1-255[c] |
| USER_DATA | 0 | vcpu->arch.cr8 | 0-14 |
| USER_DATA | 0 | vcpu->arch.exception.payload | 0-u64max |
| USER_DATA | 0 | vcpu->arch.l1_tsc_offset | 0-u64max |
| USER_DATA | 0 | vcpu->arch.tsc_offset | 0-u64max |
| USER_DATA | 0 | vcpu->arch.xen.runstate2_cache.gpa | 0-18446744073709551614[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate2_cache.pfn | 0-4503599627370494[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate2_cache.uhva | 0-u64max[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate_cache.gpa | 0-18446744073709551614[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate_cache.pfn | 0-4503599627370494[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate_cache.uhva | 0-u64max[c] |
| USER_DATA | 0 | vcpu->run->memory_fault.gpa | 0,4096-18446744073709547520[c] |
| 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.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 | |
| USER_PTR | 0 | vcpu->arch.emulate_ctxt->fetch.end | |
| 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/x86.c kvm_vcpu_reset() -> kvm_update_dr7()
| 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->base_address | 0,4096-u64max |
| PARAM_VALUE | 0 | vcpu->arch.apic->highest_isr_cache | (-1) |
| PARAM_VALUE | 0 | vcpu->arch.apic->irr_pending | 1 |
| PARAM_VALUE | 0 | vcpu->arch.apic->isr_count | 0-255 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_advance_ns | 0-5000 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_mode | 0,131072-393216 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_mode_mask | 131072,393216 |
| PARAM_VALUE | 0 | vcpu->arch.apic->sw_enabled | 0 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode | 0-4294967295 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apic_map_dirty.counter | 2 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.dep_map->name | 0-255 |
| 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->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | vcpu->arch.apic_base | 4276094976,4276095232 |
| PARAM_VALUE | 0 | vcpu->arch.cpuid_dynamic_bits_dirty | 1 |
| PARAM_VALUE | 0 | vcpu->arch.dr6 | 4294905840 |
| PARAM_VALUE | 0 | vcpu->arch.dr7 | 1024 |
| PARAM_VALUE | 0 | vcpu->arch.exception.injected | 0 |
| PARAM_VALUE | 0 | vcpu->arch.exception.pending | 0 |
| PARAM_VALUE | 0 | vcpu->arch.exception_vmexit.pending | 0 |
| PARAM_VALUE | 0 | vcpu->arch.hflags | 0 |
| PARAM_VALUE | 0 | vcpu->arch.interrupt.injected | 0 |
| PARAM_VALUE | 0 | vcpu->arch.nmi_injected | 0 |
| PARAM_VALUE | 0 | vcpu->arch.nmi_pending | 0 |
| PARAM_VALUE | 0 | vcpu->arch.nmi_queued.counter | 0 |
| PARAM_VALUE | 0 | vcpu->arch.regs_avail | 0,4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.smi_count | 0 |
| PARAM_VALUE | 0 | vcpu->arch.smi_pending | 0 |
| PARAM_VALUE | 0 | vcpu->guest_debug | 131072-u64max |
| 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->preempt_notifier.ops->sched_in | 0,9110675458964602880 |
| PARAM_VALUE | 0 | vcpu->preempt_notifier.ops->sched_out | 0,435091332528357376 |
| 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->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->memory_fault.flags | 0,8 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.gpa | 0,4096-18446744073709547520 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.size | 4096 |
| PARAM_VALUE | 0 | vcpu->run->mmio.is_write | 0-1 |
| PARAM_VALUE | 0 | vcpu->run->mmio.len | 0-8 |
| PARAM_VALUE | 0 | vcpu->run->system_event.ndata | 0-1,16 |
| PARAM_VALUE | 0 | vcpu->run->system_event.type | 2-3,6-7 |
| PARAM_VALUE | 0 | *vcpu->arch.apic->vcpu->kvm->arch.vioapic->irq_eoi | 0-4294967295 |
| PARAM_VALUE | 0 | *vcpu->stats_id | 0-255 |
| BUF_SIZE | 0 | vcpu | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | vcpu | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | vcpu->arch.mce_banks | (-1),8 |
| BUF_SIZE | 0 | vcpu->arch.mci_ctl2_banks | (-1),8 |
| CAPPED_DATA | 0 | vcpu | 1 |
| DATA_SOURCE | 0 | vcpu | $0 |
| NOSPEC | 0 | vcpu->arch.mmio_gfn | |
| NOSPEC | 0 | vcpu->vcpu_id | |
| MEM_ZERO | 0 | vcpu->arch.db | |
| NOCHECK_CALL | |||
| HOST_DATA | 0 | vcpu->arch.host_debugctl | 0-u64max[c] |
| USER_DATA | 0 | vcpu->arch.apic->lapic_timer.expired_tscdeadline | 0-u64max |
| USER_DATA | 0 | vcpu->arch.apic->sipi_vector | 1-255[c] |
| USER_DATA | 0 | vcpu->arch.cr8 | 0-14 |
| USER_DATA | 0 | vcpu->arch.exception.payload | 0-u64max |
| USER_DATA | 0 | vcpu->arch.l1_tsc_offset | 0-u64max |
| USER_DATA | 0 | vcpu->arch.mmio_gfn | 0-4503599627370495[c] |
| 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.gpa | 0-18446744073709551614[c] |
| 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.runstate2_cache.pfn | 0-4503599627370494[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate2_cache.uhva | 0-u64max[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate_cache.gpa | 0-18446744073709551614[c] |
| 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.runstate_cache.pfn | 0-4503599627370494[c] |
| USER_DATA | 0 | vcpu->arch.xen.runstate_cache.uhva | 0-u64max[c] |
| 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->run->memory_fault.gpa | 0,4096-18446744073709547520[c] |
| USER_DATA | 0 | vcpu->vcpu_id | 1-16383[c] |
| 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.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 | |
| 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 | |
| HALF_LOCKED2 | 0 | &vcpu->kvm->srcu | |
| HALF_LOCKED2 | 0 | &vcpu->mutex |
arch/x86/kvm/x86.c vcpu_enter_guest() -> kvm_update_dr7()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vcpu | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.apf.halted | 0 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer.flags | 0-4294967295 |
| PARAM_VALUE | 0 | vcpu->arch.apic->lapic_timer.timer_mode_mask | 131072,393216 |
| 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.at_instruction_boundary | 0 |
| PARAM_VALUE | 0 | vcpu->arch.mmu | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.mp_state | 0 |
| PARAM_VALUE | 0 | vcpu->arch.switch_db_regs | 2-u32max |
| PARAM_VALUE | 0 | vcpu->guest_debug | 131072-u64max |
| 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.irqchip_mode | 0,2-u32max |
| PARAM_VALUE | 0 | vcpu->kvm->arch.kvmclock_update_rs.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vcpu->kvm->online_vcpus.counter | (-2147483647)-s32max |
| PARAM_VALUE | 0 | vcpu->kvm->srcu.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vcpu->kvm->srcu.srcu_ctrp | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->mode | 1 |
| 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.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vcpu->preempt_notifier.link->pprev | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->requests | 0 |
| 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->exit_reason | 0 |
| PARAM_VALUE | 0 | vcpu->run->flags | 0 |
| PARAM_VALUE | 0 | vcpu->run->hypercall.ret | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 0 | vcpu->run->hyperv.type | 1-3 |
| 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->memory_fault.flags | 0,8 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.gpa | 0,4096-18446744073709547520 |
| PARAM_VALUE | 0 | vcpu->run->memory_fault.size | 4096 |
| PARAM_VALUE | 0 | vcpu->run->mmio.is_write | 0-1 |
| PARAM_VALUE | 0 | vcpu->run->mmio.len | 0-8 |
| PARAM_VALUE | 0 | vcpu->run->request_interrupt_window | 1-255 |
| PARAM_VALUE | 0 | *vcpu->arch.apic->vcpu->kvm->arch.vioapic->irq_eoi | 0-4294967295 |
| 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->arch.host_debugctl | 1 |
| CAPPED_DATA | 0 | vcpu->kvm->online_vcpus.counter | 1 |
| CAPPED_DATA | 0 | vcpu->kvm->srcu.srcu_ctrp | 1 |
| CAPPED_DATA | 0 | vcpu->kvm->srcu.srcu_reader_flavor | 1 |
| DATA_SOURCE | 0 | vcpu | $0 |
| BIT_INFO | 0 | vcpu->arch.switch_db_regs | 0x2,0xffffffff |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| HOST_DATA | 0 | vcpu->arch.host_debugctl | 0-u64max[c] |
| USER_DATA | 0 | vcpu->arch.apic->lapic_timer.expired_tscdeadline | 0-u64max |
| USER_DATA | 0 | vcpu->arch.apic->lapic_timer.tscdeadline | 0-u64max |
| USER_DATA | 0 | vcpu->arch.apic->sipi_vector | 1-255[c] |
| USER_DATA | 0 | vcpu->arch.cr8 | 0-14 |
| USER_DATA | 0 | vcpu->arch.exception.payload | 0 |
| USER_DATA | 0 | vcpu->arch.mmu->root.pgd | 0-u64max |
| 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.mmu_external_spt_cache.kmem_cache->object_size | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_page_header_cache.kmem_cache->object_size | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_pte_list_desc_cache.kmem_cache->object_size | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_shadow_page_cache.kmem_cache->object_size | |
| NO_OVERFLOW_SIMPLE | 0 | vcpu->arch.mmu_shadowed_info_cache.kmem_cache->object_size | |
| 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 | irq | ||
| LOCK2 | 0 | &vcpu->mutex | |
| TYPE_LOCK | (struct kvm_vcpu)->mutex |
arch/x86/kvm/svm/nested.c nested_svm_inject_exception_vmexit() -> kvm_update_dr7()
| 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.exception_vmexit.has_payload | 0 |
| PARAM_VALUE | 0 | vcpu->arch.exception_vmexit.pending | 1 |
| PARAM_VALUE | 0 | vcpu->arch.exception_vmexit.vector | 1 |
| DATA_SOURCE | 0 | vcpu | $0 |
| BIT_INFO | 0 | vcpu->arch.dr7 | 0x0,0xffffffffffffdfff |
| NOCHECK_CALL |
arch/x86/kvm/svm/nested.c nested_svm_vmexit() -> kvm_update_dr7()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vcpu | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->arch.cpuid_dynamic_bits_dirty | 1 |
| PARAM_VALUE | 0 | vcpu->arch.dr7 | 1024 |
| PARAM_VALUE | 0 | vcpu->arch.efer | 0,256-u64max |
| PARAM_VALUE | 0 | vcpu->guest_debug | 2-u64max |
| PARAM_VALUE | 0 | vcpu->kvm | 4096-ptr_max |
| PARAM_VALUE | 0 | vcpu->last_used_slot_gen | 0-2,9223372034707292161-9223372036854775809,18446744071562067968-u64max |
| PARAM_VALUE | 0 | vcpu->stat.guest_mode | 0-1 |
| NOCHECK_CALL |