summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/pseries/hvCall_inst.c
diff options
context:
space:
mode:
authorTobin C. Harding <me@tobin.cc>2017-03-07 20:32:42 +1100
committerMichael Ellerman <mpe@ellerman.id.au>2017-03-20 19:02:49 +1100
commit017614a5d6c09ec9e0dc3fd46a5018c20b407d92 (patch)
tree003477880fe2ca5aad0b15e7b3569c81db430a10 /arch/powerpc/platforms/pseries/hvCall_inst.c
parentb8b6ff019689ec7e61f0d3fa97929214507f7427 (diff)
downloadblackbird-obmc-linux-017614a5d6c09ec9e0dc3fd46a5018c20b407d92.tar.gz
blackbird-obmc-linux-017614a5d6c09ec9e0dc3fd46a5018c20b407d92.zip
powerpc/pseries: Move struct hcall_stats to hvCall_inst.c
struct hcall_stats is only used in hvCall_inst.c, so move it there. Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/platforms/pseries/hvCall_inst.c')
-rw-r--r--arch/powerpc/platforms/pseries/hvCall_inst.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/pseries/hvCall_inst.c b/arch/powerpc/platforms/pseries/hvCall_inst.c
index f02ec3ab428c..957ae347b0b3 100644
--- a/arch/powerpc/platforms/pseries/hvCall_inst.c
+++ b/arch/powerpc/platforms/pseries/hvCall_inst.c
@@ -29,6 +29,16 @@
#include <asm/trace.h>
#include <asm/machdep.h>
+/* For hcall instrumentation. One structure per-hcall, per-CPU */
+struct hcall_stats {
+ unsigned long num_calls; /* number of calls (on this CPU) */
+ unsigned long tb_total; /* total wall time (mftb) of calls. */
+ unsigned long purr_total; /* total cpu time (PURR) of calls. */
+ unsigned long tb_start;
+ unsigned long purr_start;
+};
+#define HCALL_STAT_ARRAY_SIZE ((MAX_HCALL_OPCODE >> 2) + 1)
+
DEFINE_PER_CPU(struct hcall_stats[HCALL_STAT_ARRAY_SIZE], hcall_stats);
/*
OpenPOWER on IntegriCloud