Lines Matching refs:lapic_timer
255 return apic->lapic_timer.timer_mode == APIC_LVT_TIMER_ONESHOT; in apic_lvtt_oneshot()
260 return apic->lapic_timer.timer_mode == APIC_LVT_TIMER_PERIODIC; in apic_lvtt_period()
265 return apic->lapic_timer.timer_mode == APIC_LVT_TIMER_TSCDEADLINE; in apic_lvtt_tscdeadline()
949 apic->lapic_timer.period == 0) in apic_get_tmcct()
952 remaining = hrtimer_get_remaining(&apic->lapic_timer.timer); in apic_get_tmcct()
956 ns = mod_64(ktime_to_ns(remaining), apic->lapic_timer.period); in apic_get_tmcct()
1098 apic->lapic_timer.timer_mode_mask; in apic_update_lvtt()
1100 if (apic->lapic_timer.timer_mode != timer_mode) { in apic_update_lvtt()
1101 apic->lapic_timer.timer_mode = timer_mode; in apic_update_lvtt()
1102 hrtimer_cancel(&apic->lapic_timer.timer); in apic_update_lvtt()
1110 struct kvm_timer *ktimer = &apic->lapic_timer; in apic_timer_expired()
1112 if (atomic_read(&apic->lapic_timer.pending)) in apic_timer_expired()
1115 atomic_inc(&apic->lapic_timer.pending); in apic_timer_expired()
1156 if (apic->lapic_timer.expired_tscdeadline == 0) in wait_lapic_expire()
1162 tsc_deadline = apic->lapic_timer.expired_tscdeadline; in wait_lapic_expire()
1163 apic->lapic_timer.expired_tscdeadline = 0; in wait_lapic_expire()
1176 atomic_set(&apic->lapic_timer.pending, 0); in start_apic_timer()
1180 now = apic->lapic_timer.timer.base->get_time(); in start_apic_timer()
1181 apic->lapic_timer.period = (u64)kvm_apic_get_reg(apic, APIC_TMICT) in start_apic_timer()
1184 if (!apic->lapic_timer.period) in start_apic_timer()
1194 if (apic->lapic_timer.period < min_period) { in start_apic_timer()
1199 apic->lapic_timer.period, min_period); in start_apic_timer()
1200 apic->lapic_timer.period = min_period; in start_apic_timer()
1204 hrtimer_start(&apic->lapic_timer.timer, in start_apic_timer()
1205 ktime_add_ns(now, apic->lapic_timer.period), in start_apic_timer()
1214 apic->lapic_timer.period, in start_apic_timer()
1216 apic->lapic_timer.period))); in start_apic_timer()
1219 u64 guest_tsc, tscdeadline = apic->lapic_timer.tscdeadline; in start_apic_timer()
1231 now = apic->lapic_timer.timer.base->get_time(); in start_apic_timer()
1238 hrtimer_start(&apic->lapic_timer.timer, in start_apic_timer()
1315 atomic_set(&apic->lapic_timer.pending, 0); in apic_reg_write()
1350 val &= (apic_lvt_mask[0] | apic->lapic_timer.timer_mode_mask); in apic_reg_write()
1359 hrtimer_cancel(&apic->lapic_timer.timer); in apic_reg_write()
1455 hrtimer_cancel(&apic->lapic_timer.timer); in kvm_free_lapic()
1483 return apic->lapic_timer.tscdeadline; in kvm_get_lapic_tscdeadline_msr()
1494 hrtimer_cancel(&apic->lapic_timer.timer); in kvm_set_lapic_tscdeadline_msr()
1495 apic->lapic_timer.tscdeadline = data; in kvm_set_lapic_tscdeadline_msr()
1579 hrtimer_cancel(&apic->lapic_timer.timer); in kvm_lapic_reset()
1608 atomic_set(&apic->lapic_timer.pending, 0); in kvm_lapic_reset()
1641 return atomic_read(&apic->lapic_timer.pending); in apic_has_pending_timer()
1677 struct kvm_lapic *apic = container_of(ktimer, struct kvm_lapic, lapic_timer); in apic_timer_fn()
1709 hrtimer_init(&apic->lapic_timer.timer, CLOCK_MONOTONIC, in kvm_create_lapic()
1711 apic->lapic_timer.timer.function = apic_timer_fn; in kvm_create_lapic()
1768 if (atomic_read(&apic->lapic_timer.pending) > 0) { in kvm_inject_apic_timer_irqs()
1771 apic->lapic_timer.tscdeadline = 0; in kvm_inject_apic_timer_irqs()
1772 atomic_set(&apic->lapic_timer.pending, 0); in kvm_inject_apic_timer_irqs()
1811 hrtimer_cancel(&apic->lapic_timer.timer); in kvm_apic_post_state_restore()
1837 timer = &vcpu->arch.apic->lapic_timer.timer; in __kvm_migrate_apic_timer()