Re: [PATCH] interconnect: Add basic tracepoints

From: Steven Rostedt
Date: Fri Oct 18 2019 - 12:55:55 EST


On Fri, 18 Oct 2019 09:44:03 -0700
Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> wrote:

> > @@ -449,6 +452,9 @@ int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw)
> >
> > /* aggregate requests for this node */
> > aggregate_requests(node);
> > +
> > + trace_icc_set_bw(node, dev_name(path->reqs[i].dev),
> > + avg_bw, peak_bw);
>
> When I've been debugging interconnect things I've added a
> kstrdup_const() of "name" in of_icc_get() and then included that here.
>
> I find including the path name quite useful for devices with multiple
> paths.
>
> > }
> >
> > ret = apply_constraints(path);
> > @@ -461,6 +467,9 @@ int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw)
> > path->reqs[i].avg_bw = old_avg;
> > path->reqs[i].peak_bw = old_peak;
> > aggregate_requests(node);
> > +
> > + trace_icc_set_bw(node, dev_name(path->reqs[i].dev),
> > + old_avg, old_peak);
> > }
> > apply_constraints(path);
>
> And analog to e.g. the clock traces I would suggest that you trace
> device, path and "ret" here.

If you are going to switch to device name and path, please just pass in
the path to the trace point. Then have the TP_fast_assign() do the rest
of the work.

Thanks!

-- Steve