Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 8 files as a function:

Referenced in 2 files:

Smatch caller information:

arch/x86/kvm/mmu/mmu.c kvm_arch_flush_shadow_memslot() -> kvm_unmap_gfn_range()

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->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_invalidate_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 kvm->mn_memslots_update_rcuwait.task 0
PARAM_VALUE 0 kvm->slots_arch_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 kvm->slots_arch_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
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->slots_arch_lock.wait_lock.dep_map->name 0-255
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->lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->srcu.srcu_sup->lock.owner (-1)
PARAM_VALUE 0 kvm->srcu.srcu_sup->lock.owner_cpu u32max
PARAM_VALUE 0 kvm->srcu.srcu_sup->work.work.entry.next 4096-ptr_max
PARAM_VALUE 0 kvm->srcu.srcu_sup->work.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 kvm->srcu.srcu_sup->work.work.entry.prev 2076614606316732416
PARAM_VALUE 0 kvm->srcu.srcu_sup->work.work.entry.prev->prev 2076614606316732416
PARAM_VALUE 1 range 1105072979252985856
PARAM_VALUE 1 range->attr_filter 3
PARAM_VALUE 1 range->lockless 0
PARAM_VALUE 1 range->may_block 1
PARAM_VALUE 1 range->slot 4096-ptr_max
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
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 kvm->arch.has_private_mem 0[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->nr_memslot_pages
UNITS 0 kvm unit_byte
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

arch/x86/kvm/mmu/mmu.c kvm_arch_pre_set_memory_attributes() -> kvm_unmap_gfn_range()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.has_private_mem 1
PARAM_VALUE 1 range 4930585991922520064,6620390381666459648
PARAM_VALUE 1 range->attr_filter 1-2
PARAM_VALUE 1 range->end 1-u64max
PARAM_VALUE 1 range->slot 4096-ptr_max
PARAM_VALUE 1 range->start 0-18446744073709551614
BUF_SIZE 0 kvm s32min-(-1),1-s32max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
CAPPED_DATA 1 range->end 1
CAPPED_DATA 1 range->start 1
DATA_SOURCE 0 kvm $0
DATA_SOURCE 1 range $1
FUZZY_MAX 1 range->attr_filter 2
PARAM_COMPARE 1 range->end > $1->start
HARD_MAX 1 range->attr_filter 2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 kvm->mmu_invalidate_range_start 0-9007199254740990[c]
USER_DATA 1 range->start 1-524287[c]
HALF_LOCKED2 global &srcu
HALF_LOCKED2 0 &kvm->mmu_lock
HALF_LOCKED2 0 &kvm->slots_lock
HALF_LOCKED2 0 &kvm->srcu

arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_mmu_unmap_gfn_range() -> kvm_unmap_gfn_range()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 1 range 2819117720509587456,4930585991922520064,6620390381666459648
PARAM_VALUE 1 range->attr_filter 1-3
PARAM_VALUE 1 range->slot 4096-ptr_max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
DATA_SOURCE 0 kvm $0
DATA_SOURCE 1 range $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 kvm->mmu_invalidate_range_start 0-9007199254740990[c]
USER_DATA 1 range->start 1-524287[c]
UNITS 0 kvm unit_byte
HALF_LOCKED2 global &srcu
HALF_LOCKED2 0 &kvm->mmu_lock
HALF_LOCKED2 0 &kvm->slots_lock
HALF_LOCKED2 0 &kvm->srcu