Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

arch/x86/kvm/mmu/mmu.c __kvm_rmap_zap_gfn_range() -> __walk_slot_rmaps()

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 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.pmu_event_filter->action 0-4294967295
PARAM_VALUE 0 kvm->arch.pmu_event_filter->flags 0-4294967295
PARAM_VALUE 0 kvm->arch.pmu_event_filter->nevents 0-4294967295
PARAM_VALUE 0 kvm->arch.pmu_event_filter->nr_excludes 0-4294967295
PARAM_VALUE 0 kvm->arch.pmu_event_filter->nr_includes 0-4294967295
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->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,4096-ptr_max
PARAM_VALUE 0 kvm->mmu_notifier.ops->test_young 0,2029453645569474560
PARAM_VALUE 0 *kvm->arch.vioapic->irq_eoi 0-4294967295
PARAM_VALUE 1 slot 4096-ptr_max
PARAM_VALUE 3 start_level 1
PARAM_VALUE 4 end_level 3
PARAM_VALUE 8 flush_on_yield 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 slot $1
DATA_SOURCE 5 start_gfn $2
DATA_SOURCE 7 can_yield $4
DATA_SOURCE 9 flush $5
STR_LEN 0 kvm->arch.vm_type (-1)
STR_LEN 0 kvm->stats_id (-1),47
PREEMPT_ADD
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]
USER_DATA 5 start_gfn 1-524287[c]
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_desc_cache.kmem_cache->sheaf_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_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->nr_memslot_pages
UNITS 0 kvm unit_byte
UNITS 1 slot unit_byte
UNITS 5 start_gfn unit_page
UNITS 6 end_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

arch/x86/kvm/mmu/mmu.c kvm_shadow_mmu_try_split_huge_pages() -> __walk_slot_rmaps()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
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->mmu_lock.dep_map->name 0-255
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,4096-ptr_max
PARAM_VALUE 0 kvm->mmu_notifier.ops->test_young 0,2029453645569474560
PARAM_VALUE 1 slot 4096-ptr_max
PARAM_VALUE 1 slot->id 0-32766
PARAM_VALUE 3 start_level 2-3
PARAM_VALUE 4 end_level 2-3
PARAM_VALUE 7 can_yield 1
PARAM_VALUE 8 flush_on_yield 1
PARAM_VALUE 9 flush 0
BUF_SIZE 0 kvm s32min-(-1),1-s32max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
CAPPED_DATA 1 slot->id 1
DATA_SOURCE 0 kvm $0
DATA_SOURCE 1 slot $1
DATA_SOURCE 5 start_gfn $2
STR_LEN 0 kvm->arch.vm_type (-1)
STR_LEN 0 kvm->stats_id (-1),47
NOSPEC 0 kvm->arch.n_max_mmu_pages
NOSPEC 1 slot->base_gfn
NOSPEC 1 slot->id
NOSPEC 1 slot->npages
NOSPEC 5 start_gfn
NOSPEC 5 start_gfn
HARD_MAX 3 start_level 3
HARD_MAX 4 end_level 3
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
USER_DATA 1 slot->base_gfn 0-524287[c]
USER_DATA 1 slot->flags 0-u32max
USER_DATA 1 slot->gmem.pgoff 0-524287[c]
USER_DATA 1 slot->id 0-32763[c]
USER_DATA 1 slot->npages 0-4503599627370495[c]
USER_DATA 5 start_gfn 0-524287[c]
USER_DATA 6 end_gfn 0-4503599627894781,u64max
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_desc_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_page_header_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_shadow_page_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 kvm->debugfs_dentry->d_fsdata->d_fsdata
NO_OVERFLOW_SIMPLE 0 kvm->nr_memslot_pages
NO_OVERFLOW_SIMPLE 1 slot->npages
UNITS 0 kvm unit_byte
UNITS 5 start_gfn unit_page
UNITS 6 end_gfn unit_page
LOCK2 0 &kvm->mmu_lock
HALF_LOCKED2 0 &kvm->lock
HALF_LOCKED2 0 &kvm->slots_lock
TYPE_LOCK (struct kvm)->mmu_lock

arch/x86/kvm/mmu/mmu.c walk_slot_rmaps() -> __walk_slot_rmaps()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.mmu_valid_gen 0-1
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->irq_routing->nr_rt_entries 0-4096
PARAM_VALUE 0 kvm->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->mmu_lock.owner_cpu 0
PARAM_VALUE 0 kvm->mmu_lock.raw_lock.cnts.counter 0-s32max
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,4096-ptr_max
PARAM_VALUE 0 kvm->mmu_notifier.ops->test_young 0,2029453645569474560
PARAM_VALUE 0 kvm->mn_active_invalidate_count 0
PARAM_VALUE 0 kvm->mn_memslots_update_rcuwait.task 0
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->task->blocked_on (-1)-0
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 kvm->srcu.srcu_ctrp 4096-ptr_max
PARAM_VALUE 0 kvm->srcu.srcu_sup 4096-ptr_max
PARAM_VALUE 0 kvm->srcu.srcu_sup->irq_work.node.a_flags.counter 0-s32max
PARAM_VALUE 0 kvm->srcu.srcu_sup->srcu_gp_seq_needed 0,4-u64max
PARAM_VALUE 1 slot 4096-ptr_max
PARAM_VALUE 1 slot->as_id 0-1
PARAM_VALUE 1 slot->base_gfn 0-4503599627370495
PARAM_VALUE 1 slot->id 0-32766
PARAM_VALUE 1 slot->npages 0-4503599627370495
PARAM_VALUE 3 start_level 1-2
PARAM_VALUE 4 end_level 1-3
PARAM_VALUE 5 start_gfn 0-4503599627370495
PARAM_VALUE 6 end_gfn 0-9007199254740989,u64max
PARAM_VALUE 7 can_yield 1
PARAM_VALUE 9 flush 0
CAPPED_DATA 1 slot->as_id 1
CAPPED_DATA 1 slot->base_gfn 1
CAPPED_DATA 5 start_gfn 1
CAPPED_DATA 5 start_gfn 1
DATA_SOURCE 0 kvm $0
DATA_SOURCE 1 slot $1
DATA_SOURCE 2 fn $2
DATA_SOURCE 3 start_level $3
DATA_SOURCE 4 end_level $4
DATA_SOURCE 8 flush_on_yield $5
STR_LEN 0 kvm->arch.vm_type (-1)
STR_LEN 0 kvm->stats_id (-1),47
NOSPEC 0 kvm->arch.n_max_mmu_pages
NOSPEC 1 slot->base_gfn
NOSPEC 1 slot->id
NOSPEC 1 slot->npages
NOSPEC 5 start_gfn
NOSPEC 5 start_gfn
HARD_MAX 3 start_level 2
HARD_MAX 4 end_level 3
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.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 1 slot->base_gfn 0-524287[c]
USER_DATA 1 slot->flags 0-u32max
USER_DATA 1 slot->gmem.pgoff 0-524287[c]
USER_DATA 1 slot->id 1-32763[c]
USER_DATA 1 slot->npages 0-4503599627370495[c]
USER_DATA 5 start_gfn 0-524287[c]
USER_DATA 6 end_gfn 0-4503599627894781,u64max
NO_OVERFLOW_SIMPLE 0 kvm->arch.nx_huge_page_recovery_thread->task->dl.dl_runtime
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_desc_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_page_header_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 kvm->arch.split_shadow_page_cache.kmem_cache->sheaf_capacity
NO_OVERFLOW_SIMPLE 0 kvm->debugfs_dentry->d_fsdata->d_fsdata
NO_OVERFLOW_SIMPLE 0 kvm->nr_memslot_pages
UNITS 0 kvm unit_byte
UNITS 5 start_gfn unit_page
UNITS 6 end_gfn unit_page
LOCK2 0 &kvm->mmu_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 0 &kvm->lock
HALF_LOCKED2 0 &kvm->slots_lock
TYPE_LOCK (struct kvm)->mmu_lock