Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

arch/x86/kvm/mmu/mmu.c mmu_first_shadow_root_alloc() -> memslot_rmap_alloc()

Type Parameter Key Value
PARAM_VALUE 0 slot 4096-ptr_max
PARAM_VALUE 0 slot->id_node 4096-ptr_max
PARAM_VALUE 0 slot->npages 1-u64max
PARAM_VALUE 1 npages 1-u64max
UNITS 1 npages unit_page
LOCK2 &kvm->slots_arch_lock
HALF_LOCKED2 &kvm->srcu
HALF_LOCKED2 &vcpu->mutex
TYPE_LOCK (struct kvm)->slots_arch_lock

arch/x86/kvm/x86.c kvm_alloc_memslot_metadata() -> memslot_rmap_alloc()

Type Parameter Key Value
PARAM_VALUE 0 slot 4096-ptr_max
PARAM_VALUE 0 slot->as_id 0-1
PARAM_VALUE 0 slot->base_gfn 0-4503599627370495
PARAM_VALUE 0 slot->id 0-32766
PARAM_VALUE 0 slot->npages 0-4503599627370495
PARAM_VALUE 1 npages 0-4503599627370495
DATA_SOURCE 0 slot $1
NOSPEC 0 slot->base_gfn
NOSPEC 0 slot->id
NOSPEC 0 slot->npages
NOSPEC 1 npages
NOSPEC 1 npages
MEM_ZERO 0 &slot->arch
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 slot->base_gfn 0-524287[c]
USER_DATA 0 slot->flags 0-u32max
USER_DATA 0 slot->gmem.pgoff 0-524287[c]
USER_DATA 0 slot->id 1-32763[c]
USER_DATA 0 slot->npages 0-4503599627370495[c]
USER_DATA 1 npages 0-4503599627370495[c]
UNITS 1 npages unit_page
LOCK2 &kvm->slots_arch_lock
HALF_LOCKED2 &kvm->lock
HALF_LOCKED2 &kvm->slots_lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct kvm)->slots_arch_lock