diff options
author | Lukasz Luba <l.luba@partner.samsung.com> | 2019-02-18 19:21:08 +0100 |
---|---|---|
committer | MyungJoo Ham <myungjoo.ham@samsung.com> | 2019-04-16 09:29:18 +0900 |
commit | 1be0730f1dcd2971db4d2fe5497a20f438b837a7 (patch) | |
tree | ef19a9f0a43966da893b592060fa82da1deb6cb5 /include/trace | |
parent | 9173c5ceb035aab28171cd74dfddf27f47213b99 (diff) | |
download | linux-stable-1be0730f1dcd2971db4d2fe5497a20f438b837a7.tar.gz linux-stable-1be0730f1dcd2971db4d2fe5497a20f438b837a7.tar.bz2 linux-stable-1be0730f1dcd2971db4d2fe5497a20f438b837a7.zip |
trace: events: add devfreq trace event file
The patch adds a new file for with trace events for devfreq
framework. They are used for performance analysis of the framework.
It also contains updates in MAINTAINERS file adding new entry for
devfreq maintainers.
Signed-off-by: Lukasz Luba <l.luba@partner.samsung.com>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Diffstat (limited to 'include/trace')
-rw-r--r-- | include/trace/events/devfreq.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/trace/events/devfreq.h b/include/trace/events/devfreq.h new file mode 100644 index 000000000000..cf5b8772175d --- /dev/null +++ b/include/trace/events/devfreq.h @@ -0,0 +1,40 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#undef TRACE_SYSTEM +#define TRACE_SYSTEM devfreq + +#if !defined(_TRACE_DEVFREQ_H) || defined(TRACE_HEADER_MULTI_READ) +#define _TRACE_DEVFREQ_H + +#include <linux/devfreq.h> +#include <linux/tracepoint.h> + +TRACE_EVENT(devfreq_monitor, + TP_PROTO(struct devfreq *devfreq), + + TP_ARGS(devfreq), + + TP_STRUCT__entry( + __field(unsigned long, freq) + __field(unsigned long, busy_time) + __field(unsigned long, total_time) + __field(unsigned int, polling_ms) + __string(dev_name, dev_name(&devfreq->dev)) + ), + + TP_fast_assign( + __entry->freq = devfreq->previous_freq; + __entry->busy_time = devfreq->last_status.busy_time; + __entry->total_time = devfreq->last_status.total_time; + __entry->polling_ms = devfreq->profile->polling_ms; + __assign_str(dev_name, dev_name(&devfreq->dev)); + ), + + TP_printk("dev_name=%s freq=%lu polling_ms=%u load=%lu", + __get_str(dev_name), __entry->freq, __entry->polling_ms, + __entry->total_time == 0 ? 0 : + (100 * __entry->busy_time) / __entry->total_time) +); +#endif /* _TRACE_DEVFREQ_H */ + +/* This part must be outside protection */ +#include <trace/define_trace.h> |