Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

arch/x86/kvm/xen.c kvm_xen_start_timer() -> get_kvmclock_ns()

Type Parameter Key Value
UNITS 0 kvm unit_byte
HALF_LOCKED2 &vcpu->mutex
HALF_LOCKED2 0 &kvm->arch.xen.xen_lock
HALF_LOCKED2 0 &kvm->srcu

arch/x86/kvm/xen.c kvm_xen_update_runstate() -> get_kvmclock_ns()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
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->srcu.srcu_ctrp 4096-ptr_max
CAPPED_DATA 0 kvm 1
CAPPED_DATA 0 kvm->srcu.srcu_ctrp 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 kvm->arch.cur_tsc_offset 0-u64max
UNITS 0 kvm unit_byte
LOCK2 0 &kvm->srcu
HALF_LOCKED2 &v->mutex
HALF_LOCKED2 &vcpu->mutex
HALF_LOCKED2 0 &kvm->arch.xen.xen_lock
TYPE_LOCK (struct kvm)->srcu

arch/x86/kvm/xen.c kvm_xen_vcpu_set_attr() -> get_kvmclock_ns()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.kvmclock_update_rs.lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.noncoherent_dma_count.counter 0-1
PARAM_VALUE 0 kvm->arch.xen.xen_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.xen.xen_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 kvm->arch.xen.xen_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 kvm->arch.xen.xen_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.xen.xen_lock.wait_lock.owner (-1)
PARAM_VALUE 0 kvm->arch.xen.xen_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 kvm->srcu.srcu_ctrp 4096-ptr_max
CAPPED_DATA 0 kvm->srcu.srcu_ctrp 1
CAPPED_DATA 0 kvm->srcu.srcu_reader_flavor 1
CAPPED_DATA 0 &kvm->arch.xen.xen_lock 1
UNITS 0 kvm unit_byte
LOCK2 &vcpu->mutex
LOCK2 0 &kvm->arch.xen.xen_lock
LOCK2 0 &kvm->srcu
TYPE_LOCK (struct kvm)->srcu
TYPE_LOCK (struct kvm_vcpu)->mutex
TYPE_LOCK (struct kvm_xen)->xen_lock

arch/x86/kvm/xen.c kvm_xen_vcpu_set_attr() -> get_kvmclock_ns()

Type Parameter Key Value
PARAM_VALUE 0 kvm 4096-ptr_max
PARAM_VALUE 0 kvm->arch.kvmclock_update_rs.lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.noncoherent_dma_count.counter 0-1
PARAM_VALUE 0 kvm->arch.xen.xen_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.xen.xen_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 kvm->arch.xen.xen_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 kvm->arch.xen.xen_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 kvm->arch.xen.xen_lock.wait_lock.owner (-1)
PARAM_VALUE 0 kvm->arch.xen.xen_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 kvm->srcu.srcu_ctrp 4096-ptr_max
CAPPED_DATA 0 kvm->srcu.srcu_ctrp 1
CAPPED_DATA 0 kvm->srcu.srcu_reader_flavor 1
CAPPED_DATA 0 &kvm->arch.xen.xen_lock 1
UNITS 0 kvm unit_byte
LOCK2 &vcpu->mutex
LOCK2 0 &kvm->arch.xen.xen_lock
LOCK2 0 &kvm->srcu
TYPE_LOCK (struct kvm)->srcu
TYPE_LOCK (struct kvm_vcpu)->mutex
TYPE_LOCK (struct kvm_xen)->xen_lock

arch/x86/kvm/hyperv.c get_time_ref_counter() -> get_kvmclock_ns()

Type Parameter Key Value
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
DATA_SOURCE 0 kvm $0
PREEMPT_ADD
UNITS 0 kvm unit_byte
HALF_LOCKED2 &hv->hv_lock
HALF_LOCKED2 &vcpu->kvm->srcu
HALF_LOCKED2 &vcpu->mutex
HALF_LOCKED2 0 &kvm->srcu

arch/x86/kvm/x86.c kvm_get_wall_clock_epoch() -> get_kvmclock_ns()

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
DATA_SOURCE 0 kvm $0
USER_DATA 0 kvm->arch.xen.long_mode 0-1
UNITS 0 kvm unit_byte
HALF_LOCKED2 &gpc->lock
HALF_LOCKED2 irq
HALF_LOCKED2 0 &kvm->arch.xen.xen_lock
HALF_LOCKED2 0 &kvm->srcu