diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-02-15 14:52:47 -0500 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2008-04-27 04:53:22 -0400 |
commit | 18068523d3a0b41fcee5b53cdb437a0ab4d65e4b (patch) | |
tree | cbedbd4371cb57c34728137988a7433ae736d79a /include/asm-x86/kvm_host.h | |
parent | 24e09cbf480a72f9c952af4ca77b159503dca44b (diff) |
KVM: paravirtualized clocksource: host part
This is the host part of kvm clocksource implementation. As it does
not include clockevents, it is a fairly simple implementation. We
only have to register a per-vcpu area, and start writing to it periodically.
The area is binary compatible with xen, as we use the same shadow_info
structure.
[marcelo: fix bad_page on MSR_KVM_SYSTEM_TIME]
[avi: save full value of the msr, even if enable bit is clear]
[avi: clear previous value of time_page]
Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'include/asm-x86/kvm_host.h')
-rw-r--r-- | include/asm-x86/kvm_host.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/asm-x86/kvm_host.h b/include/asm-x86/kvm_host.h index 623249890a0b..90c80fd830fc 100644 --- a/include/asm-x86/kvm_host.h +++ b/include/asm-x86/kvm_host.h | |||
@@ -262,6 +262,11 @@ struct kvm_vcpu_arch { | |||
262 | /* emulate context */ | 262 | /* emulate context */ |
263 | 263 | ||
264 | struct x86_emulate_ctxt emulate_ctxt; | 264 | struct x86_emulate_ctxt emulate_ctxt; |
265 | |||
266 | gpa_t time; | ||
267 | struct kvm_vcpu_time_info hv_clock; | ||
268 | unsigned int time_offset; | ||
269 | struct page *time_page; | ||
265 | }; | 270 | }; |
266 | 271 | ||
267 | struct kvm_mem_alias { | 272 | struct kvm_mem_alias { |
@@ -288,6 +293,8 @@ struct kvm_arch{ | |||
288 | int round_robin_prev_vcpu; | 293 | int round_robin_prev_vcpu; |
289 | unsigned int tss_addr; | 294 | unsigned int tss_addr; |
290 | struct page *apic_access_page; | 295 | struct page *apic_access_page; |
296 | |||
297 | gpa_t wall_clock; | ||
291 | }; | 298 | }; |
292 | 299 | ||
293 | struct kvm_vm_stat { | 300 | struct kvm_vm_stat { |