From: Michele Di Giorgio <michele.digiorgio@arm.com>
To: linux-pm@vger.kernel.org
Cc: Ingo Molnar <mingo@redhat.com>, Javi Merino <javi.merino@arm.com>,
linux-kernel@vger.kernel.org,
Punit Agrawal <punit.agrawal@arm.com>,
Michele Di Giorgio <michele.digiorgio@arm.com>,
Steven Rostedt <rostedt@goodmis.org>,
Eduardo Valentin <edubezval@gmail.com>
Subject: [PATCH] thermal: trace: migrating thermal traces to use TRACE_DEFINE_ENUM() macros
Date: Tue, 1 Mar 2016 17:38:54 +0000 [thread overview]
Message-ID: <1456853934-24715-1-git-send-email-michele.digiorgio@arm.com> (raw)
Userspace tools are not aware of how to convert the enums provided by
the tracepoints to their corresponding strings.
Adding TRACE_DEFINE_ENUM() macros allows to make the enums available
to userspace to let the tools know what those enum values represent.
In particular, for thermal zone trip types what we obtained before was
something like:
kworker/1:1-460 [001] 320.372732: thermal_zone_trip: thermal_zone=soc
id=0 trip=1 trip_type=1
Unfortunately, userspace tools do not know how to convert enum values to
strings and as a consequence they can only forward the enum value to the
output. By using TRACE_DEFINE_ENUM() macros for thermal traces we get the
following trace line:
kworker/1:1-460 [001] 320.372732: thermal_zone_trip: thermal_zone=soc
id=0 trip=1 trip_type=PASSIVE
Userspace tools are now able to better understand the meaning of the trip_type
and provide the user with more readable information.
CC: Steven Rostedt <rostedt@goodmis.org>
CC: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
---
include/trace/events/thermal.h | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/include/trace/events/thermal.h b/include/trace/events/thermal.h
index 5738bb3..2b4a8ff 100644
--- a/include/trace/events/thermal.h
+++ b/include/trace/events/thermal.h
@@ -8,6 +8,18 @@
#include <linux/thermal.h>
#include <linux/tracepoint.h>
+TRACE_DEFINE_ENUM(THERMAL_TRIP_CRITICAL);
+TRACE_DEFINE_ENUM(THERMAL_TRIP_HOT);
+TRACE_DEFINE_ENUM(THERMAL_TRIP_PASSIVE);
+TRACE_DEFINE_ENUM(THERMAL_TRIP_ACTIVE);
+
+#define show_tzt_type(type) \
+ __print_symbolic(type, \
+ { THERMAL_TRIP_CRITICAL, "CRITICAL"}, \
+ { THERMAL_TRIP_HOT, "HOT"}, \
+ { THERMAL_TRIP_PASSIVE, "PASSIVE"}, \
+ { THERMAL_TRIP_ACTIVE, "ACTIVE"})
+
TRACE_EVENT(thermal_temperature,
TP_PROTO(struct thermal_zone_device *tz),
@@ -73,9 +85,9 @@ TRACE_EVENT(thermal_zone_trip,
__entry->trip_type = trip_type;
),
- TP_printk("thermal_zone=%s id=%d trip=%d trip_type=%d",
+ TP_printk("thermal_zone=%s id=%d trip=%d trip_type=%s",
__get_str(thermal_zone), __entry->id, __entry->trip,
- __entry->trip_type)
+ show_tzt_type(__entry->trip_type))
);
TRACE_EVENT(thermal_power_cpu_get_power,
--
1.9.1
next reply other threads:[~2016-03-01 17:39 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-01 17:38 Michele Di Giorgio [this message]
2016-03-01 18:20 ` Steven Rostedt
2016-03-03 17:10 ` Michele DiGiorgio
2016-03-03 17:28 ` Steven Rostedt
2016-03-08 9:48 ` Zhang, Rui
2016-03-08 9:58 ` Javi Merino
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1456853934-24715-1-git-send-email-michele.digiorgio@arm.com \
--to=michele.digiorgio@arm.com \
--cc=edubezval@gmail.com \
--cc=javi.merino@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=punit.agrawal@arm.com \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®