diff options
Diffstat (limited to 'tools/perf/util/env.c')
-rw-r--r-- | tools/perf/util/env.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/perf/util/env.c b/tools/perf/util/env.c index 7dd5939dea2e..49a11d9d8b8f 100644 --- a/tools/perf/util/env.c +++ b/tools/perf/util/env.c | |||
@@ -6,6 +6,8 @@ struct perf_env perf_env; | |||
6 | 6 | ||
7 | void perf_env__exit(struct perf_env *env) | 7 | void perf_env__exit(struct perf_env *env) |
8 | { | 8 | { |
9 | int i; | ||
10 | |||
9 | zfree(&env->hostname); | 11 | zfree(&env->hostname); |
10 | zfree(&env->os_release); | 12 | zfree(&env->os_release); |
11 | zfree(&env->version); | 13 | zfree(&env->version); |
@@ -19,6 +21,10 @@ void perf_env__exit(struct perf_env *env) | |||
19 | zfree(&env->numa_nodes); | 21 | zfree(&env->numa_nodes); |
20 | zfree(&env->pmu_mappings); | 22 | zfree(&env->pmu_mappings); |
21 | zfree(&env->cpu); | 23 | zfree(&env->cpu); |
24 | |||
25 | for (i = 0; i < env->caches_cnt; i++) | ||
26 | cpu_cache_level__free(&env->caches[i]); | ||
27 | zfree(&env->caches); | ||
22 | } | 28 | } |
23 | 29 | ||
24 | int perf_env__set_cmdline(struct perf_env *env, int argc, const char *argv[]) | 30 | int perf_env__set_cmdline(struct perf_env *env, int argc, const char *argv[]) |
@@ -75,3 +81,10 @@ int perf_env__read_cpu_topology_map(struct perf_env *env) | |||
75 | env->nr_cpus_avail = nr_cpus; | 81 | env->nr_cpus_avail = nr_cpus; |
76 | return 0; | 82 | return 0; |
77 | } | 83 | } |
84 | |||
85 | void cpu_cache_level__free(struct cpu_cache_level *cache) | ||
86 | { | ||
87 | free(cache->type); | ||
88 | free(cache->map); | ||
89 | free(cache->size); | ||
90 | } | ||