Messages in this thread | | | Date | Fri, 15 Jun 2018 10:12:42 +0200 | From | Jiri Olsa <> | Subject | Re: [PATCH 2/3] perf alias: Rebuild alias expression string to make it comparable |
| |
On Thu, Jun 14, 2018 at 08:53:14AM -0500, Paul Clarke wrote:
SNIP
> > + if (ret) > > + ret += scnprintf(newval + ret, sizeof(newval) - ret, > > + ","); > > + if (term->type_val == PARSE_EVENTS__TERM_TYPE_NUM) > > + ret += scnprintf(newval + ret, sizeof(newval) - ret, > > + "%s=%#x", term->config, term->val.num); > > + else if (term->type_val == PARSE_EVENTS__TERM_TYPE_STR) > > + ret += scnprintf(newval + ret, sizeof(newval) - ret, > > + "%s=%s", term->config, term->val.str); > > If we exceed 256, we just suddenly terminate the rebuilding without reporting any issues. > > > + } > > + > > alias->name = strdup(name); > > if (dir) { > > /* > > @@ -285,7 +308,7 @@ static int __perf_pmu__new_alias(struct list_head *list, char *dir, char *name, > > snprintf(alias->unit, sizeof(alias->unit), "%s", unit); > > } > > alias->per_pkg = perpkg && sscanf(perpkg, "%d", &num) == 1 && num == 1; > > - alias->str = strdup(val); > > + alias->str = strdup(newval);
hum, how is newval different from val? AFAICS it's the same
jirka
| |