On Mon, Sep 07, 2020 at 12:44:53PM +0900, Namhyung Kim wrote:
> Hello,
> 
> I've found and fixed a bunch of memory leaks during perf pmu and
> metric tests with address sanitizer.  Before this, the tests were
> mostly failed due to the leaks since ASAN makes it return non-zero.
> 
> Now I'm seeing no error with ASAN like below:
> 
>   $ ./perf test pmu metric
>    9: Parse perf pmu format                                 : Ok
>   10: PMU events                                            :
>   10.1: PMU event table sanity                              : Ok
>   10.2: PMU event map aliases                               : Ok
>   10.3: Parsing of PMU event table metrics                  : Skip (some 
> metrics failed)
>   10.4: Parsing of PMU event table metrics with fake PMUs   : Ok
>   67: Parse and process metrics                             : Ok
> 
> The failure in 10.3 seems due to parse errors like below:
> 
>   Multiple errors dropping message: unknown term 'filter_opc' for pmu 
> 'uncore_cbox_0'
>   (valid terms: 
> event,edge,inv,umask,cmask,config,config1,config2,name,period,freq,
>                 
> branch_type,time,call-graph,stack-size,no-inherit,inherit,max-stack,
>               
> nr,no-overwrite,overwrite,driver-config,percore,aux-output,aux-sample-size)
> 
> 
>   Parse event failed metric 'DRAM_Parallel_Reads' id 
> 'arb/event=0x80,umask=0x2,thresh=1/'
>     expr 'arb@event\=0x80\,umask\=0x2@ / 
> arb@event\=0x80\,umask\=0x2\,thresh\=1@'
>   Error string 'unknown term 'thresh' for pmu 'uncore_arb'' help
>     'valid terms: 
> event,edge,inv,umask,cmask,config,config1,config2,name,period,freq,
>                   
> branch_type,time,call-graph,stack-size,no-inherit,inherit,max-stack,
>                 
> nr,no-overwrite,overwrite,driver-config,percore,aux-output,aux-sample-size'
> 
> 
> The patches are also available at 'perf/metric-fix-v1' branch on
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
> 
> Thanks
> Namhyung
> 
> 
> Namhyung Kim (9):
>   perf evlist: Fix cpu/thread map leak
>   perf parse-event: Fix cpu map leaks
>   perf parse-event: Fix memory leak in evsel->unit
>   perf test: Fix memory leaks in parse-metric test
>   perf metric: Release expr_parse_ctx after testing
>   perf metric: Free metric when it failed to resolve
>   perf metric: Do not free metric when failed to resolve
>   perf test: Free aliases for PMU event map aliases test
>   perf test: Free formats for perf pmu parse test

Acked-by: Jiri Olsa <jo...@redhat.com>

thanks,
jirka

Reply via email to