aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgi Djakov <georgi.djakov@linaro.org>2019-10-31 12:27:19 +0200
committerGeorgi Djakov <georgi.djakov@linaro.org>2019-11-18 17:35:48 +0200
commitc329035b069fe872da3c94b6f9f287aef3c394c3 (patch)
tree2e76737e55120ecb2e1934a3c57544138234d1f3
parented0a34732cff3ca9f86629726b2363a051d8ffe5 (diff)
interconnect: Add tracepoint in the beginning of icc_set_bw()
This would be helpful when we do profiling and optimizations. Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
-rw-r--r--drivers/interconnect/core.c2
-rw-r--r--include/trace/events/interconnect.h21
2 files changed, 23 insertions, 0 deletions
diff --git a/drivers/interconnect/core.c b/drivers/interconnect/core.c
index ad9a3a8bef0f..acc90c74668d 100644
--- a/drivers/interconnect/core.c
+++ b/drivers/interconnect/core.c
@@ -424,6 +424,8 @@ int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw)
if (!path || !path->num_nodes)
return 0;
+ trace_icc_set_bw_begin(path);
+
mutex_lock(&icc_lock);
old_avg = path->reqs[0].avg_bw;
diff --git a/include/trace/events/interconnect.h b/include/trace/events/interconnect.h
index 64b646aa7bd3..16321921101c 100644
--- a/include/trace/events/interconnect.h
+++ b/include/trace/events/interconnect.h
@@ -51,6 +51,27 @@ TRACE_EVENT(icc_set_bw,
__entry->node_peak_bw)
);
+TRACE_EVENT(icc_set_bw_begin,
+
+ TP_PROTO(struct icc_path *p),
+
+ TP_ARGS(p),
+
+ TP_STRUCT__entry(
+ __string(path_name, p->name)
+ __string(dev, dev_name(p->reqs[0].dev))
+ ),
+
+ TP_fast_assign(
+ __assign_str(path_name, p->name);
+ __assign_str(dev, dev_name(p->reqs[0].dev));
+ ),
+
+ TP_printk("path=%s dev=%s",
+ __get_str(path_name),
+ __get_str(dev))
+);
+
TRACE_EVENT(icc_set_bw_end,
TP_PROTO(struct icc_path *p, int ret),