Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

arch/x86/kvm/mmu/mmu.c __link_shadow_page() -> mmu_spte_set()

Type Parameter Key Value
PARAM_VALUE 0 sptep 4096-ptr_max
CAPPED_DATA 0 sptep 1
DATA_SOURCE 0 sptep $2
DATA_SOURCE 1 new_spte r make_nonleaf_spte
BIT_INFO 1 new_spte 0x803,0xffffffffffffffff
BIT_INFO 1 new_spte 0x803,0xffffffffffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &kvm->mmu_lock
HALF_LOCKED2 &kvm->srcu

arch/x86/kvm/mmu/mmu.c mark_mmio_spte() -> mmu_spte_set()

Type Parameter Key Value
PARAM_VALUE 0 sptep 4096-ptr_max
CAPPED_DATA 0 sptep 1
DATA_SOURCE 0 sptep $1
DATA_SOURCE 1 new_spte r make_mmio_spte
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 new_spte 0-u64max[c][u]
HALF_LOCKED2 &vcpu->kvm->mmu_lock
HALF_LOCKED2 &vcpu->kvm->srcu
HALF_LOCKED2 &vcpu->mutex

arch/x86/kvm/mmu/mmu.c mmu_spte_update() -> mmu_spte_set()

Type Parameter Key Value
PARAM_VALUE 0 sptep 4096-ptr_max
CAPPED_DATA 0 sptep 1
DATA_SOURCE 0 sptep $0
DATA_SOURCE 1 new_spte $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 new_spte 0-u64max[c]
HALF_LOCKED2 &vcpu->kvm->mmu_lock

arch/x86/kvm/mmu/mmu.c shadow_mmu_split_huge_page() -> mmu_spte_set()

Type Parameter Key Value
PARAM_VALUE 0 sptep 4096-ptr_max
DATA_SOURCE 1 new_spte r make_small_spte
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &kvm->arch.apic_map_lock
HALF_LOCKED2 &kvm->arch.apicv_update_lock
HALF_LOCKED2 &kvm->lock
HALF_LOCKED2 &kvm->mmu_lock
HALF_LOCKED2 &kvm->slots_lock
HALF_LOCKED2 &kvm->srcu