1 
2 struct kvm_timer {
3 	struct hrtimer timer;
4 	s64 period; 				/* unit: ns */
5 	u32 timer_mode_mask;
6 	u64 tscdeadline;
7 	atomic_t pending;			/* accumulated triggered timers */
8 	bool reinject;
9 	struct kvm_timer_ops *t_ops;
10 	struct kvm *kvm;
11 	struct kvm_vcpu *vcpu;
12 };
13 
14 struct kvm_timer_ops {
15 	bool (*is_periodic)(struct kvm_timer *);
16 };
17 
18 enum hrtimer_restart kvm_timer_fn(struct hrtimer *data);
19