Subject: Re: [PATCH v2 2/5] perf pmu: Support more complex PMU event aliasing

From: Jiri Olsa <[email-masked]>
Date: Fri, 28 Jun 2019 12:40:40 +0200

On Thu, Jun 27, 2019 at 05:27:32PM +0100, John Garry wrote:

SNIP

> > > 
> > > heya,
> > > sry for late reply
> > > 
> > > > 
> > > > > if tok is NULL in here we crash
> > > > > 
> > > > 
> > > > As I see, tok could not be NULL. If str contains no delimiters, then
> > > > we just
> > > > return same as str in tok.
> > > > 
> > > > Can you see tok being NULL?
> > > 
> > > well, if there's no ',' in the str it returns NULL, right?
> > 
> > No, it would return str in tok.

ok

> > 
> > > and IIUC this function is still called for standard uncore
> > > pmu names
> > > 
> > > > 
> > > > > > +        res = false;
> > > > > > +        goto out;
> > > > > > +    }
> > > > > > +
> > > > > > +    for (; tok; name += strlen(tok), tok = strtok_r(NULL, ",",
> > > > > > &tmp)) {
> > > > > 
> > > > > why is name shifted in here?
> > > > 
> > > > I want to ensure that we match the tokens in order and also guard
> > > > against
> > > > possible repeated token matches in 'name'.
> > > 
> > > i might not understand this correctly.. so
> > > 
> > > str is the alias name that can contain ',' now, like:
> > >   hisi_sccl,ddrc
> > 
> > For example of pmu_nmame=hisi_sccl,ddrc and pmu=hisi_sccl1_ddrc0, we
> > match in this sequence:
> > 
> > loop 1. tok=hisi_sccl name=hisi_sccl1_ddrc0
> > loop 2. tok=ddrc name=ddrc0
> > loop 3. tok=NULL -> breakout and return true

ok, plz put something like above into comment

thanks,
jirka

_______________________________________________
linux-arm-kernel mailing list
[email-masked]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel