vcpu_vtimer
struct arch_timer_offset *offs = &vcpu_vtimer(vcpu)->offset;
timer_set_offset(vcpu_vtimer(vcpu), kvm_phys_timer_read());
map->emul_vtimer = vcpu_vtimer(vcpu);
map->direct_vtimer = vcpu_vtimer(vcpu);
timer = vcpu_vtimer(vcpu);
map->direct_vtimer = vcpu_vtimer(vcpu);
map->direct_vtimer = vcpu_vtimer(vcpu);
ctx = is_hyp_ctxt(vcpu) ? vcpu_hvtimer(vcpu) : vcpu_vtimer(vcpu);
struct arch_timer_context *vtimer = vcpu_vtimer(vcpu);
(ctx == vcpu_vtimer(vcpu) || ctx == vcpu_ptimer(vcpu))) {
struct arch_timer_context *vtimer = vcpu_vtimer(vcpu);
struct arch_timer_context *vtimer = vcpu_vtimer(vcpu);
struct arch_timer_context *vtimer = vcpu_vtimer(vcpu);
now -= timer_get_offset(vcpu_vtimer(vcpu));
ctxt = vcpu_vtimer(vcpu);
cnt = compute_counter_value(vcpu_vtimer(vcpu));
timer_set_offset(vcpu_vtimer(vcpu), kvm_phys_timer_read() - val);
*val = kvm_phys_timer_read() - timer_get_offset(vcpu_vtimer(vcpu));