diff options
author | David Hildenbrand <dahi@linux.vnet.ibm.com> | 2014-07-11 04:00:43 -0400 |
---|---|---|
committer | Christian Borntraeger <borntraeger@de.ibm.com> | 2014-10-01 08:42:14 -0400 |
commit | ce2e4f0b75a567d25375b52476662c724304e476 (patch) | |
tree | a7e08d055f37627bf801b3cb1f510099fda54f7b /arch/s390 | |
parent | 7be81a46695d2088f848653f2bbec06bb178adce (diff) |
KVM: s390: count vcpu wakeups in stat.halt_wakeup
This patch introduces the halt_wakeup counter used by common code and uses it to
count vcpu wakeups done in s390 arch specific code.
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/include/asm/kvm_host.h | 1 | ||||
-rw-r--r-- | arch/s390/kvm/interrupt.c | 1 | ||||
-rw-r--r-- | arch/s390/kvm/kvm-s390.c | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/include/asm/kvm_host.h b/arch/s390/include/asm/kvm_host.h index 1a6f6fd8bd34..2175f911a73a 100644 --- a/arch/s390/include/asm/kvm_host.h +++ b/arch/s390/include/asm/kvm_host.h | |||
@@ -192,6 +192,7 @@ struct kvm_vcpu_stat { | |||
192 | u32 exit_stop_request; | 192 | u32 exit_stop_request; |
193 | u32 exit_validity; | 193 | u32 exit_validity; |
194 | u32 exit_instruction; | 194 | u32 exit_instruction; |
195 | u32 halt_wakeup; | ||
195 | u32 instruction_lctl; | 196 | u32 instruction_lctl; |
196 | u32 instruction_lctlg; | 197 | u32 instruction_lctlg; |
197 | u32 instruction_stctl; | 198 | u32 instruction_stctl; |
diff --git a/arch/s390/kvm/interrupt.c b/arch/s390/kvm/interrupt.c index 4cad00adef93..a39838457f01 100644 --- a/arch/s390/kvm/interrupt.c +++ b/arch/s390/kvm/interrupt.c | |||
@@ -626,6 +626,7 @@ void kvm_s390_vcpu_wakeup(struct kvm_vcpu *vcpu) | |||
626 | */ | 626 | */ |
627 | vcpu->preempted = true; | 627 | vcpu->preempted = true; |
628 | wake_up_interruptible(&vcpu->wq); | 628 | wake_up_interruptible(&vcpu->wq); |
629 | vcpu->stat.halt_wakeup++; | ||
629 | } | 630 | } |
630 | } | 631 | } |
631 | 632 | ||
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c index 0d5aa88e238b..55aade49b6d1 100644 --- a/arch/s390/kvm/kvm-s390.c +++ b/arch/s390/kvm/kvm-s390.c | |||
@@ -50,6 +50,7 @@ struct kvm_stats_debugfs_item debugfs_entries[] = { | |||
50 | { "exit_instruction", VCPU_STAT(exit_instruction) }, | 50 | { "exit_instruction", VCPU_STAT(exit_instruction) }, |
51 | { "exit_program_interruption", VCPU_STAT(exit_program_interruption) }, | 51 | { "exit_program_interruption", VCPU_STAT(exit_program_interruption) }, |
52 | { "exit_instr_and_program_int", VCPU_STAT(exit_instr_and_program) }, | 52 | { "exit_instr_and_program_int", VCPU_STAT(exit_instr_and_program) }, |
53 | { "halt_wakeup", VCPU_STAT(halt_wakeup) }, | ||
53 | { "instruction_lctlg", VCPU_STAT(instruction_lctlg) }, | 54 | { "instruction_lctlg", VCPU_STAT(instruction_lctlg) }, |
54 | { "instruction_lctl", VCPU_STAT(instruction_lctl) }, | 55 | { "instruction_lctl", VCPU_STAT(instruction_lctl) }, |
55 | { "instruction_stctl", VCPU_STAT(instruction_stctl) }, | 56 | { "instruction_stctl", VCPU_STAT(instruction_stctl) }, |