summaryrefslogtreecommitdiffstats
path: root/lib/libpmc/pmclog.h
diff options
context:
space:
mode:
authorjkoshy <jkoshy@FreeBSD.org>2007-12-03 11:15:46 +0000
committerjkoshy <jkoshy@FreeBSD.org>2007-12-03 11:15:46 +0000
commit86277bac23504de54f439ce27b121d2c24eac93d (patch)
treefa662372ed61770224589cebfe2f44a82eed8b2b /lib/libpmc/pmclog.h
parent8304a663db3ad44c1f9590aedd446c2f1360dd54 (diff)
downloadFreeBSD-src-86277bac23504de54f439ce27b121d2c24eac93d.zip
FreeBSD-src-86277bac23504de54f439ce27b121d2c24eac93d.tar.gz
Add callchain parsing to -lpmc.
Sponsored by: FreeBSD Foundation and Google Inc.
Diffstat (limited to 'lib/libpmc/pmclog.h')
-rw-r--r--lib/libpmc/pmclog.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/libpmc/pmclog.h b/lib/libpmc/pmclog.h
index 90fb193..e3e5c89 100644
--- a/lib/libpmc/pmclog.h
+++ b/lib/libpmc/pmclog.h
@@ -1,7 +1,11 @@
/*-
- * Copyright (c) 2005-2006 Joseph Koshy
+ * Copyright (c) 2005-2007 Joseph Koshy
+ * Copyright (c) 2007 The FreeBSD Foundation
* All rights reserved.
*
+ * Portions of this software were developed by A. Joseph Koshy under
+ * sponsorship from the FreeBSD Foundation and Google, Inc.
+ *
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
@@ -38,6 +42,14 @@ enum pmclog_state {
PMCLOG_ERROR
};
+struct pmclog_ev_callchain {
+ uint32_t pl_pid;
+ uint32_t pl_pmcid;
+ uint32_t pl_cpuflags;
+ uint32_t pl_npc;
+ uintfptr_t pl_pc[PMC_CALLCHAIN_DEPTH_MAX];
+};
+
struct pmclog_ev_dropnotify {
};
@@ -125,6 +137,7 @@ struct pmclog_ev {
struct timespec pl_ts; /* log entry timestamp */
enum pmclog_type pl_type; /* type of log entry */
union { /* log entry data */
+ struct pmclog_ev_callchain pl_cc;
struct pmclog_ev_closelog pl_cl;
struct pmclog_ev_dropnotify pl_dn;
struct pmclog_ev_initialize pl_i;
OpenPOWER on IntegriCloud