3.5.7.32 -stable review patch.  If anyone has any objections, please let me 
know.

------------------

From: Jiri Olsa <[email protected]>

commit 275ef3878f698941353780440fec6926107a320b upstream.

If the event name is specified with all 3 components, the last one
overwrites the previous one during the name composing within the
parse_events_add_cache function.

Fixing this by properly adjusting the string index.

Reported-by: Joel Uckelman <[email protected]>
Signed-off-by: Jiri Olsa <[email protected]>
Cc: Corey Ashford <[email protected]>
Cc: Frederic Weisbecker <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Joel Uckelman <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: Peter Zijlstra <[email protected]>
LPU-Reference: [email protected]
[ committer note: Remove the newline fix, done already in 42e1fb7 ]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
Cc: Vinson Lee <[email protected]>
Signed-off-by: Luis Henriques <[email protected]>
---
 tools/perf/util/parse-events.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
index d2006bd..5f99cec 100644
--- a/tools/perf/util/parse-events.c
+++ b/tools/perf/util/parse-events.c
@@ -420,7 +420,7 @@ int parse_events_add_cache(struct list_head **list, int 
*idx,
        for (i = 0; (i < 2) && (op_result[i]); i++) {
                char *str = op_result[i];
 
-               snprintf(name + n, MAX_NAME_LEN - n, "-%s", str);
+               n += snprintf(name + n, MAX_NAME_LEN - n, "-%s", str);
 
                if (cache_op == -1) {
                        cache_op = parse_aliases(str, hw_cache_op,
-- 
1.9.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to