Defined in 1 files as a function:
Referenced in 2 files:
Smatch caller information:
arch/x86/kvm/mmu/mmu.c __rmap_add() -> kvm_update_page_stats()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 2 | count | 1 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | kvm->arch.n_max_mmu_pages | 1 |
| DATA_SOURCE | 0 | kvm | $0 |
| 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 | |||
| NOCHECK_CALL | |||
| 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.kmem_cache->sheaf_capacity | |
| 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.kmem_cache->sheaf_capacity | |
| 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 |
| 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 |
arch/x86/kvm/mmu/mmu.c mmu_spte_clear_track_bits() -> kvm_update_page_stats()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 1 | level | 0-15 |
| PARAM_VALUE | 2 | count | (-1) |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $0 |
| STR_LEN | 0 | kvm->arch.vm_type | (-1) |
| STR_LEN | 0 | kvm->stats_id | (-1),47 |
| NOSPEC | 0 | kvm->arch.n_max_mmu_pages | |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| 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.vm_type | 0-31 |
| 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.hv_pa_pg | |
| 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.kmem_cache->object_size | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_desc_cache.kmem_cache->sheaf_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->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_page_header_cache.nobjs | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_page_header_cache.objects | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.capacity | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.kmem_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.nobjs | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.objects | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->debugfs_dentry->d_fsdata->d_fsdata | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->debugfs_stat_data | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->context.ldt | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->context.ldt->entries | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->mm_cid.pcpu | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->notifier_subscriptions | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->sc_stat.pcpu_sched | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->nr_memslot_pages | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->srcu.sda | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->srcu.srcu_sup | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->stats_id | |
| UNITS | 0 | kvm | unit_byte |
| HALF_LOCKED2 | 0 | &kvm->arch.apic_map_lock | |
| HALF_LOCKED2 | 0 | &kvm->arch.apicv_update_lock | |
| HALF_LOCKED2 | 0 | &kvm->arch.track_notifier_head.track_srcu | |
| HALF_LOCKED2 | 0 | &kvm->lock | |
| HALF_LOCKED2 | 0 | &kvm->mmu_lock | |
| HALF_LOCKED2 | 0 | &kvm->slots_arch_lock | |
| HALF_LOCKED2 | 0 | &kvm->slots_lock | |
| HALF_LOCKED2 | 0 | &kvm->srcu |
arch/x86/kvm/mmu/tdp_mmu.c __handle_changed_spte() -> kvm_update_page_stats()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | count | (-1),1 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $0 |
| DATA_SOURCE | 1 | level | $5 |
| FUZZY_MAX | 2 | count | 1 |
| STR_LEN | 0 | kvm | (-1),12 |
| STR_LEN | 0 | kvm | (-1),12 |
| STR_LEN | 0 | kvm->arch.vm_type | (-1) |
| STR_LEN | 0 | kvm->stats_id | (-1),47 |
| BIT_INFO | 2 | count | 0x1,0x1 |
| NOSPEC | 0 | kvm->arch.n_max_mmu_pages | |
| HARD_MAX | 2 | count | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| 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.vm_type | 0-255 |
| 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.hv_pa_pg | |
| 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.kmem_cache->sheaf_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->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_page_header_cache.nobjs | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_page_header_cache.objects | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.capacity | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.kmem_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.nobjs | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.split_shadow_page_cache.objects | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->debugfs_dentry->d_fsdata | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->debugfs_dentry->d_fsdata->d_fsdata | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->debugfs_stat_data | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->irq_srcu.srcu_sup | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->context.ldt | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->context.ldt->entries | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->mm_cid.pcpu | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->notifier_subscriptions | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->mm->sc_stat.pcpu_sched | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->nr_memslot_pages | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->srcu.sda | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->srcu.srcu_sup | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->stats_id | |
| UNITS | 0 | kvm | unit_byte |
| HALF_LOCKED2 | rcu_read | ||
| 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_arch_lock | |
| HALF_LOCKED2 | 0 | &kvm->slots_lock | |
| HALF_LOCKED2 | 0 | &kvm->srcu |
arch/x86/kvm/mmu/tdp_mmu.c tdp_mmu_split_huge_page() -> kvm_update_page_stats()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kvm | 4096-ptr_max |
| PARAM_VALUE | 2 | count | 512 |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kvm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kvm | $0 |
| STR_LEN | 0 | kvm->arch.vm_type | (-1) |
| STR_LEN | 0 | kvm->stats_id | (-1) |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| 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.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 |
| NO_OVERFLOW_SIMPLE | 0 | kvm->arch.nx_huge_page_recovery_thread->task->dl.dl_runtime | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->nr_memslot_pages | |
| NO_OVERFLOW_SIMPLE | 0 | kvm->srcu.sda | |
| UNITS | 0 | kvm | unit_byte |
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | 0 | &kvm->lock | |
| HALF_LOCKED2 | 0 | &kvm->mmu_lock | |
| HALF_LOCKED2 | 0 | &kvm->slots_lock |