diff options
author | Avi Kivity <avi@qumranet.com> | 2007-11-18 09:24:12 -0500 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2008-01-30 10:53:04 -0500 |
commit | ba1389b7a04de07e6231693b7ebb34f5b5d1a3e6 (patch) | |
tree | 536139f6e1d3a918b13a9c44f2144c52366a55bb /drivers/kvm/kvm.h | |
parent | f2b5756bb3fbdca912c4890e444c18650389d8ae (diff) |
KVM: Extend stats support for VM stats
This is in addition to the current virtual cpu statistics.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/kvm.h')
-rw-r--r-- | drivers/kvm/kvm.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/kvm/kvm.h b/drivers/kvm/kvm.h index 5a8a9af3593a..d3171f9c9c01 100644 --- a/drivers/kvm/kvm.h +++ b/drivers/kvm/kvm.h | |||
@@ -231,7 +231,7 @@ struct kvm_pio_request { | |||
231 | int rep; | 231 | int rep; |
232 | }; | 232 | }; |
233 | 233 | ||
234 | struct kvm_stat { | 234 | struct kvm_vcpu_stat { |
235 | u32 pf_fixed; | 235 | u32 pf_fixed; |
236 | u32 pf_guest; | 236 | u32 pf_guest; |
237 | u32 tlb_flush; | 237 | u32 tlb_flush; |
@@ -342,7 +342,7 @@ void kvm_io_bus_register_dev(struct kvm_io_bus *bus, | |||
342 | wait_queue_head_t wq; \ | 342 | wait_queue_head_t wq; \ |
343 | int sigset_active; \ | 343 | int sigset_active; \ |
344 | sigset_t sigset; \ | 344 | sigset_t sigset; \ |
345 | struct kvm_stat stat; \ | 345 | struct kvm_vcpu_stat stat; \ |
346 | KVM_VCPU_MMIO | 346 | KVM_VCPU_MMIO |
347 | 347 | ||
348 | struct kvm_mem_alias { | 348 | struct kvm_mem_alias { |
@@ -361,6 +361,9 @@ struct kvm_memory_slot { | |||
361 | int user_alloc; | 361 | int user_alloc; |
362 | }; | 362 | }; |
363 | 363 | ||
364 | struct kvm_vm_stat { | ||
365 | }; | ||
366 | |||
364 | struct kvm { | 367 | struct kvm { |
365 | struct mutex lock; /* protects everything except vcpus */ | 368 | struct mutex lock; /* protects everything except vcpus */ |
366 | int naliases; | 369 | int naliases; |
@@ -387,6 +390,7 @@ struct kvm { | |||
387 | int round_robin_prev_vcpu; | 390 | int round_robin_prev_vcpu; |
388 | unsigned int tss_addr; | 391 | unsigned int tss_addr; |
389 | struct page *apic_access_page; | 392 | struct page *apic_access_page; |
393 | struct kvm_vm_stat stat; | ||
390 | }; | 394 | }; |
391 | 395 | ||
392 | static inline struct kvm_pic *pic_irqchip(struct kvm *kvm) | 396 | static inline struct kvm_pic *pic_irqchip(struct kvm *kvm) |
@@ -809,9 +813,15 @@ static inline u32 get_rdx_init_val(void) | |||
809 | #define TSS_REDIRECTION_SIZE (256 / 8) | 813 | #define TSS_REDIRECTION_SIZE (256 / 8) |
810 | #define RMODE_TSS_SIZE (TSS_BASE_SIZE + TSS_REDIRECTION_SIZE + TSS_IOPB_SIZE + 1) | 814 | #define RMODE_TSS_SIZE (TSS_BASE_SIZE + TSS_REDIRECTION_SIZE + TSS_IOPB_SIZE + 1) |
811 | 815 | ||
816 | enum kvm_stat_kind { | ||
817 | KVM_STAT_VM, | ||
818 | KVM_STAT_VCPU, | ||
819 | }; | ||
820 | |||
812 | struct kvm_stats_debugfs_item { | 821 | struct kvm_stats_debugfs_item { |
813 | const char *name; | 822 | const char *name; |
814 | int offset; | 823 | int offset; |
824 | enum kvm_stat_kind kind; | ||
815 | struct dentry *dentry; | 825 | struct dentry *dentry; |
816 | }; | 826 | }; |
817 | extern struct kvm_stats_debugfs_item debugfs_entries[]; | 827 | extern struct kvm_stats_debugfs_item debugfs_entries[]; |