Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 1 files:

Smatch caller information:

arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_flush_shadow_all() -> kvm_arch_guest_memory_reclaimed()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
CAPPED_DATA 0 kvm->srcu.srcu_ctrp 1
DATA_SOURCE 0 kvm $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &srcu
LOCK2 0 &kvm->srcu
TYPE_LOCK (struct kvm)->srcu

arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_invalidate_memslot() -> kvm_arch_guest_memory_reclaimed()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
BUF_SIZE 0 kvm s32min-(-1),1-s32max
CAPPED_DATA 0 kvm 1
DATA_SOURCE 0 kvm $0
STR_LEN 0 kvm->stats_id (-1),47
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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->arch.split_desc_cache.kmem_cache->object_size
NO_OVERFLOW_SIMPLE 0 kvm->nr_memslot_pages
UNITS 0 kvm unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 0 &kvm->lock
HALF_LOCKED2 0 &kvm->slots_lock

arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_mmu_notifier_invalidate_range_start() -> kvm_arch_guest_memory_reclaimed()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
DATA_SOURCE 0 kvm r mmu_notifier_to_kvm
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &srcu
HALF_LOCKED2 &ctx->map_changing_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 global &ksm_thread_mutex