if (!sc)
                return;
 
-       free(sc->arg_fmt);
+       zfree(&sc->arg_fmt);
 }
 
 static int trace__sys_enter(struct trace *trace, struct evsel *evsel,
                if (!et || !evsel->tp_format || strcmp(evsel->tp_format->system, "syscalls"))
                        continue;
 
-               free(et->fmt);
+               zfree(&et->fmt);
                free(et);
        }
 }
        int i;
 
        strlist__delete(trace->ev_qualifier);
-       free(trace->ev_qualifier_ids.entries);
+       zfree(&trace->ev_qualifier_ids.entries);
        if (trace->syscalls.table) {
                for (i = 0; i <= trace->sctbl->syscalls.max_id; i++)
                        syscall__exit(&trace->syscalls.table[i]);
-               free(trace->syscalls.table);
+               zfree(&trace->syscalls.table);
        }
        syscalltbl__delete(trace->sctbl);
        zfree(&trace->perfconfig_events);