Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

arch/x86/kvm/mmu/mmu.c kvm_mmu_get_shadow_page() -> __kvm_mmu_get_shadow_page()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_advance_ns 0-4294967295
PARAM_VALUE 0 kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode_mask 0-4294967295
PARAM_VALUE 0 kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 kvm->arch.n_max_mmu_pages 1-u64max
PARAM_VALUE 0 kvm->mmu_lock.dep_map->name 0-255
PARAM_VALUE 1 vcpu 4096-ptr_max
PARAM_VALUE 1 vcpu->arch.apic->vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode 0-4294967295
PARAM_VALUE 1 vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vcpu->arch.apic->vcpu->kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 1 vcpu->arch.apic->vcpu->run->emulation_failure.ndata 6,8,10,12
PARAM_VALUE 1 vcpu->arch.apic->vcpu->run->hypercall.ret 0-s32max,1844674407370955159,18446744071562067968-u64max
PARAM_VALUE 1 vcpu->arch.apic->vcpu->run->system_event.ndata 0-1,16
PARAM_VALUE 1 vcpu->arch.apic->vcpu->run->system_event.type 2-3,6-7
PARAM_VALUE 1 vcpu->arch.emulate_ctxt->ops->get_cr 4096-ptr_max
PARAM_VALUE 1 vcpu->arch.mmu 4096-ptr_max
PARAM_VALUE 1 vcpu->arch.mmu_external_spt_cache.capacity 40,553
PARAM_VALUE 1 vcpu->arch.mmu_external_spt_cache.nobjs 1-s32max
PARAM_VALUE 1 vcpu->arch.mmu_external_spt_cache.objects 1-u64max
PARAM_VALUE 1 vcpu->arch.mmu_page_header_cache.capacity 40,553
PARAM_VALUE 1 vcpu->arch.mmu_page_header_cache.nobjs 1-s32max
PARAM_VALUE 1 vcpu->arch.mmu_page_header_cache.objects 1-u64max
PARAM_VALUE 1 vcpu->arch.mmu_pte_list_desc_cache.capacity 40,553
PARAM_VALUE 1 vcpu->arch.mmu_pte_list_desc_cache.objects 1-u64max
PARAM_VALUE 1 vcpu->arch.mmu_shadow_page_cache.capacity 40,553
PARAM_VALUE 1 vcpu->arch.mmu_shadow_page_cache.nobjs 1-s32max
PARAM_VALUE 1 vcpu->arch.mmu_shadow_page_cache.objects 1-u64max
PARAM_VALUE 1 vcpu->arch.mmu_shadowed_info_cache.capacity 40,553
PARAM_VALUE 1 vcpu->arch.mmu_shadowed_info_cache.nobjs 1-s32max
PARAM_VALUE 1 vcpu->arch.mmu_shadowed_info_cache.objects 1-u64max
PARAM_VALUE 1 vcpu->kvm 4096-ptr_max
PARAM_VALUE 1 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_advance_ns 0-4294967295
PARAM_VALUE 1 vcpu->kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode_mask 0-4294967295
PARAM_VALUE 1 vcpu->kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vcpu->kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 1 vcpu->kvm->arch.n_max_mmu_pages 1-u64max
PARAM_VALUE 1 vcpu->kvm->mmu_lock.dep_map->name 0-255
PARAM_VALUE 1 vcpu->run->debug.arch.exception 1,3
PARAM_VALUE 1 vcpu->run->emulation_failure.flags 0-1
PARAM_VALUE 1 vcpu->run->emulation_failure.insn_size 1-255
PARAM_VALUE 1 vcpu->run->emulation_failure.ndata 6,8,10,12
PARAM_VALUE 1 vcpu->run->emulation_failure.suberror 1
PARAM_VALUE 1 vcpu->run->hypercall.ret 0-s32max,18446744071562067968-u64max
PARAM_VALUE 1 vcpu->run->hyperv.type 0-3
PARAM_VALUE 1 vcpu->run->internal.ndata 0,2,4-5
PARAM_VALUE 1 vcpu->run->internal.suberror 1-4
PARAM_VALUE 1 vcpu->run->memory_fault.flags 0,8
PARAM_VALUE 1 vcpu->run->memory_fault.gpa 0,4096-18446744073709547520
PARAM_VALUE 1 vcpu->run->memory_fault.size 4096
PARAM_VALUE 1 vcpu->run->mmio.is_write 0-1
PARAM_VALUE 1 vcpu->run->mmio.len 0-8
PARAM_VALUE 1 vcpu->run->system_event.ndata 0-1,16
PARAM_VALUE 1 vcpu->run->system_event.type 2-3,6-7
PARAM_VALUE 2 caches 4288506744723456000
PARAM_VALUE 2 caches->page_header_cache 4096-ptr_max
PARAM_VALUE 2 caches->shadow_page_cache 4096-ptr_max
PARAM_VALUE 2 caches->shadowed_info_cache 4096-ptr_max
PARAM_VALUE 3 gfn 0-4503599627370495
BUF_SIZE 1 vcpu s32min-(-1),1-s32max
BUF_SIZE 1 vcpu s32min-(-1),1-s32max
CAPPED_DATA 0 kvm->arch.n_max_mmu_pages 1
CAPPED_DATA 1 vcpu->arch.mmu 1
CAPPED_DATA 1 vcpu->kvm->arch.n_max_mmu_pages 1
CAPPED_DATA 3 gfn 1
CAPPED_DATA 3 gfn 1
DATA_SOURCE 1 vcpu $0
DATA_SOURCE 3 gfn $1
DATA_SOURCE 4 role $2
NOSPEC 1 vcpu->arch.mmio_gfn
NOSPEC 1 vcpu->arch.xen.runstate2_cache.pfn
NOSPEC 1 vcpu->arch.xen.runstate_cache.pfn
NOSPEC 1 vcpu->arch.xen.runstate_cache.uhva
NOSPEC 3 gfn
NOSPEC 3 gfn
PREEMPT_ADD
HOST_DATA 1 vcpu->arch.host_debugctl 0-u64max[c]
USER_DATA 1 vcpu->arch.apic->sipi_vector 1-255[c]
USER_DATA 1 vcpu->arch.cr8 0-14[c]
USER_DATA 1 vcpu->arch.exception.payload 0-u64max
USER_DATA 1 vcpu->arch.l1_tsc_offset 0-u64max
USER_DATA 1 vcpu->arch.mmio_gfn 0-4503599627370495[c]
USER_DATA 1 vcpu->arch.mmio_gva 0,4096-u64max[c]
USER_DATA 1 vcpu->arch.mmu->root.pgd 0-u64max
USER_DATA 1 vcpu->arch.nmi_queued.counter 0
USER_DATA 1 vcpu->arch.tsc_offset 0-u64max
USER_DATA 1 vcpu->arch.xen.runstate2_cache.gpa 0-18446744073709551614[c]
USER_DATA 1 vcpu->arch.xen.runstate2_cache.pfn 0-4503599627370494[c]
USER_DATA 1 vcpu->arch.xen.runstate2_cache.uhva 0-u64max[c]
USER_DATA 1 vcpu->arch.xen.runstate_cache.gpa 0-18446744073709551614[c]
USER_DATA 1 vcpu->arch.xen.runstate_cache.pfn 0-4503599627370494[c]
USER_DATA 1 vcpu->arch.xen.runstate_cache.uhva 0-u64max[c]
USER_DATA 1 vcpu->run->memory_fault.gpa 0,4096-18446744073709547520[c]
USER_DATA 1 *vcpu->arch.emulate_ctxt->fetch.end 0-255
USER_DATA 3 gfn 0-4503599627370495[c]
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_external_spt_cache.capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_external_spt_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_external_spt_cache.nobjs
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_page_header_cache.capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_page_header_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_page_header_cache.nobjs
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_pte_list_desc_cache.capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_pte_list_desc_cache.kmem_cache->object_size
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_pte_list_desc_cache.nobjs
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_shadow_page_cache.capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_shadow_page_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_shadow_page_cache.nobjs
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_shadowed_info_cache.capacity
NO_OVERFLOW_SIMPLE 1 vcpu->arch.mmu_shadowed_info_cache.nobjs
NO_OVERFLOW_SIMPLE 1 vcpu->arch.pio.count
NO_OVERFLOW_SIMPLE 1 vcpu->arch.pio.size
NO_OVERFLOW_SIMPLE 1 vcpu->run->io.count
NO_OVERFLOW_SIMPLE 1 vcpu->run->io.size
UNITS 0 kvm unit_byte
UNITS 3 gfn unit_page
USER_PTR 1 vcpu->arch.emulate_ctxt->fetch.end
USER_PTR 1 vcpu->arch.hyperv->vp_assist_page.intercept_message
USER_PTR 1 vcpu->arch.hyperv->vp_assist_page.reserved2
USER_PTR 1 vcpu->arch.hyperv->vp_assist_page.reserved3
USER_PTR 1 vcpu->arch.hyperv->vp_assist_page.reserved4
USER_PTR 1 vcpu->arch.hyperv->vp_assist_page.virtualization_fault_information
USER_PTR 1 vcpu->arch.hyperv->vp_assist_page.vtl_ret_actions
USER_PTR 1 vcpu->arch.pdptrs
USER_PTR 1 vcpu->arch.walk_mmu->pdptrs
LOCK2 0 &kvm->mmu_lock
LOCK2 1 &vcpu->kvm->mmu_lock
HALF_LOCKED2 0 &kvm->srcu
HALF_LOCKED2 1 &vcpu->kvm->srcu
HALF_LOCKED2 1 &vcpu->mutex
TYPE_LOCK (struct kvm)->mmu_lock

arch/x86/kvm/mmu/mmu.c shadow_mmu_get_sp_for_split() -> __kvm_mmu_get_shadow_page()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.apic_map->xapic_flat_map->lapic_timer.timer_mode 0-4294967295
PARAM_VALUE 0 kvm->arch.apicv_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 kvm->arch.apicv_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 kvm->arch.n_max_mmu_pages 1-u64max
PARAM_VALUE 0 kvm->arch.split_desc_cache.nobjs 1-s32max
PARAM_VALUE 0 kvm->arch.split_page_header_cache.nobjs 1-s32max
PARAM_VALUE 0 kvm->arch.split_shadow_page_cache.nobjs 1-s32max
PARAM_VALUE 0 kvm->debugfs_dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 kvm->debugfs_dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_dname 0,716233247738060800,2056107418359259136,2102941272419614720,3721061892745007104,5585410052597575680,6720345164634435584,7931586599356526592
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 0 kvm->debugfs_dentry->d_sb->__s_d_op->d_weak_revalidate 0,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 0 kvm->mmu_notifier.ops->alloc_notifier 0,118721215206682624,3867215761732038656
PARAM_VALUE 0 kvm->mmu_notifier.ops->clear_flush_young 0,629706690066796544
PARAM_VALUE 0 kvm->mmu_notifier.ops->clear_young 0,7189815847754645504
PARAM_VALUE 0 kvm->mmu_notifier.ops->free_notifier 0,1843444619081437184,3821528384776577024,4697798310811897856,6537355567237464064,8871816734645235712
PARAM_VALUE 0 kvm->mmu_notifier.ops->invalidate_range_end 0,3162513330612883456,6014292557378605056
PARAM_VALUE 0 kvm->mmu_notifier.ops->invalidate_range_start 0,1691968406954491904,7272215747350130688,7673596169661853696,8239870623333179392
PARAM_VALUE 0 kvm->mmu_notifier.ops->release 0,18038112991842304,370137738663178240,1669647988633919488,6148653532485574656,7790800904503803904
PARAM_VALUE 0 kvm->mmu_notifier.ops->test_young 0,2029453645569474560
PARAM_VALUE 0 kvm->stat.mmu_shadow_pages 0-18446744073709551614
PARAM_VALUE 1 vcpu 0
PARAM_VALUE 2 caches 8373048672211312640
PARAM_VALUE 2 caches->page_header_cache 4096-ptr_max
PARAM_VALUE 2 caches->shadow_page_cache 4096-ptr_max
PARAM_VALUE 2 caches->shadowed_info_cache 0
BUF_SIZE 0 kvm s32min-(-1),1-s32max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
CAPPED_DATA 0 kvm->stat.mmu_shadow_pages 1
DATA_SOURCE 0 kvm $0
DATA_SOURCE 4 role r kvm_mmu_child_role
STR_LEN 0 kvm->arch.vm_type (-1)
STR_LEN 0 kvm->stats_id (-1),47
NOSPEC 0 kvm->arch.n_max_mmu_pages
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 kvm->arch.has_private_mem 0[c]
USER_DATA 0 kvm->arch.n_max_mmu_pages 64-u64max[c]
USER_DATA 0 kvm->arch.nr_reserved_ioapic_pins 0-255
USER_DATA 0 kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 kvm->arch.xen.shinfo_cache.kvm->arch.has_private_mem 0[c]
USER_DATA 0 kvm->arch.xen.shinfo_cache.kvm->arch.pre_fault_allowed 0-1
USER_DATA 0 kvm->arch.xen.shinfo_cache.kvm->arch.vm_type 0-31
USER_DATA 0 kvm->mmu_invalidate_range_start 0-9007199254740990[c]
NO_OVERFLOW_SIMPLE 0 kvm->arch.nx_huge_page_recovery_thread
NO_OVERFLOW_SIMPLE 0 kvm->arch.nx_huge_page_recovery_thread->task->dl.dl_runtime
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_desc_cache.capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_desc_cache.nobjs
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_desc_cache.objects
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_page_header_cache.capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_page_header_cache.kmem_cache->object_size
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_page_header_cache.nobjs
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_shadow_page_cache.capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_shadow_page_cache.kmem_cache->object_size
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_shadow_page_cache.nobjs
NO_OVERFLOW_SIMPLE 0 kvm->mm->context.ldt->entries
NO_OVERFLOW_SIMPLE 0 kvm->nr_memslot_pages
NO_OVERFLOW_SIMPLE 0 kvm->srcu.sda
NO_OVERFLOW_SIMPLE 0 kvm->srcu.srcu_sup
UNITS 0 kvm unit_byte
UNITS 3 gfn unit_page
HALF_LOCKED2 0 &kvm->arch.apic_map_lock
HALF_LOCKED2 0 &kvm->arch.apicv_update_lock
HALF_LOCKED2 0 &kvm->lock
HALF_LOCKED2 0 &kvm->mmu_lock
HALF_LOCKED2 0 &kvm->slots_lock
HALF_LOCKED2 0 &kvm->srcu