diff options
author | Marcelo Tosatti <mtosatti@redhat.com> | 2009-02-23 14:57:41 +0100 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2009-06-10 10:48:25 +0200 |
commit | d3c7b77d1a6e7a0a27035a7ba723a3455317883e (patch) | |
tree | 65053ca8122dda5772c48ce70c9d99e8127f8cdd /arch/x86/kvm/kvm_timer.h | |
parent | KVM: PIT: remove usage of count_load_time for channel 0 (diff) | |
download | linux-d3c7b77d1a6e7a0a27035a7ba723a3455317883e.tar.xz linux-d3c7b77d1a6e7a0a27035a7ba723a3455317883e.zip |
KVM: unify part of generic timer handling
Hide the internals of vcpu awakening / injection from the in-kernel
emulated timers. This makes future changes in this logic easier and
decreases the distance to more generic timer handling.
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm/kvm_timer.h')
-rw-r--r-- | arch/x86/kvm/kvm_timer.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/x86/kvm/kvm_timer.h b/arch/x86/kvm/kvm_timer.h new file mode 100644 index 000000000000..26bd6ba74e1c --- /dev/null +++ b/arch/x86/kvm/kvm_timer.h @@ -0,0 +1,18 @@ + +struct kvm_timer { + struct hrtimer timer; + s64 period; /* unit: ns */ + atomic_t pending; /* accumulated triggered timers */ + bool reinject; + struct kvm_timer_ops *t_ops; + struct kvm *kvm; + int vcpu_id; +}; + +struct kvm_timer_ops { + bool (*is_periodic)(struct kvm_timer *); +}; + + +enum hrtimer_restart kvm_timer_fn(struct hrtimer *data); + |