perf trace: Use zalloc() to make sure all fields are zeroed in the syscalltbl constructor
authorArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 28 May 2020 20:19:17 +0000 (17:19 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 29 May 2020 19:50:29 +0000 (16:50 -0300)
In the past this wasn't needed as the libaudit based code would use just
one field, and the alternative constructor would fill in all the fields,
but now that even when using the libaudit based method we need the other
fields, switch to zalloc() to make sure the other fields are zeroed at
instantiation time.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/syscalltbl.c

index 820fceeb19a9a5df5dd80a9195f21eff0f5acbcf..03bd99d3be16f352cc7ae09d304340d9a8b2cb87 100644 (file)
@@ -8,9 +8,9 @@
 #include "syscalltbl.h"
 #include <stdlib.h>
 #include <linux/compiler.h>
+#include <linux/zalloc.h>
 
 #ifdef HAVE_SYSCALL_TABLE_SUPPORT
-#include <linux/zalloc.h>
 #include <string.h>
 #include "string2.h"
 
@@ -142,7 +142,7 @@ int syscalltbl__strglobmatch_first(struct syscalltbl *tbl, const char *syscall_g
 
 struct syscalltbl *syscalltbl__new(void)
 {
-       struct syscalltbl *tbl = malloc(sizeof(*tbl));
+       struct syscalltbl *tbl = zalloc(sizeof(*tbl));
        if (tbl)
                tbl->audit_machine = audit_detect_machine();
        return tbl;