Skip to content

Commit

Permalink
perf tool x86: Fix perf_env memory leak
Browse files Browse the repository at this point in the history
[ Upstream commit 99d4850 ]

Found by leak sanitizer:
```
==1632594==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 21 byte(s) in 1 object(s) allocated from:
    #0 0x7f2953a7077b in __interceptor_strdup ../../../../src/libsanitizer/asan/asan_interceptors.cpp:439
    #1 0x556701d6fbbf in perf_env__read_cpuid util/env.c:369
    #2 0x556701d70589 in perf_env__cpuid util/env.c:465
    #3 0x55670204bba2 in x86__is_amd_cpu arch/x86/util/env.c:14
    #4 0x5567020487a2 in arch__post_evsel_config arch/x86/util/evsel.c:83
    #5 0x556701d8f78b in evsel__config util/evsel.c:1366
    #6 0x556701ef5872 in evlist__config util/record.c:108
    #7 0x556701cd6bcd in test__PERF_RECORD tests/perf-record.c:112
    #8 0x556701cacd07 in run_test tests/builtin-test.c:236
    grate-driver#9 0x556701cacfac in test_and_print tests/builtin-test.c:265
    grate-driver#10 0x556701cadddb in __cmd_test tests/builtin-test.c:402
    grate-driver#11 0x556701caf2aa in cmd_test tests/builtin-test.c:559
    grate-driver#12 0x556701d3b557 in run_builtin tools/perf/perf.c:323
    grate-driver#13 0x556701d3bac8 in handle_internal_command tools/perf/perf.c:377
    grate-driver#14 0x556701d3be90 in run_argv tools/perf/perf.c:421
    grate-driver#15 0x556701d3c3f8 in main tools/perf/perf.c:537
    grate-driver#16 0x7f2952a46189 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

SUMMARY: AddressSanitizer: 21 byte(s) leaked in 1 allocation(s).
```

Fixes: f7b58cb ("perf mem/c2c: Add load store event mappings for AMD")
Signed-off-by: Ian Rogers <[email protected]>
Acked-by: Ravi Bangoria <[email protected]>
Tested-by: Arnaldo Carvalho de Melo <[email protected]>
Cc: Adrian Hunter <[email protected]>
Cc: Alexander Shishkin <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Ravi Bangoria <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
  • Loading branch information
captain5050 authored and gregkh committed Jul 19, 2023
1 parent 2e3cce0 commit f3daf02
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion tools/perf/arch/x86/util/env.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ bool x86__is_amd_cpu(void)

perf_env__cpuid(&env);
is_amd = env.cpuid && strstarts(env.cpuid, "AuthenticAMD") ? 1 : -1;

perf_env__exit(&env);
ret:
return is_amd >= 1 ? true : false;
}

0 comments on commit f3daf02

Please sign in to comment.