[PATCH 12/12] tools/perf: Correct size given to memset

From: Julia Lawall
Date: Wed Dec 09 2009 - 14:26:32 EST


From: Julia Lawall <julia@xxxxxxx>

Memset should be given the size of the structure, not the size of the pointer.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
type T;
T *x;
expression E;
@@

memset(x, E, sizeof(
+ *
x))
// </smpl>

Signed-off-by: Julia Lawall <julia@xxxxxxx>

---
tools/perf/util/probe-event.c | 2 +-
tools/perf/util/trace-event-parse.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff -u -p a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -376,7 +376,7 @@ static void clear_probe_point(struct pro
free(pp->args);
for (i = 0; i < pp->found; i++)
free(pp->probes[i]);
- memset(pp, 0, sizeof(pp));
+ memset(pp, 0, sizeof(*pp));
}

/* List up current perf-probe events */
diff -u -p a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
--- a/tools/perf/util/trace-event-parse.c
+++ b/tools/perf/util/trace-event-parse.c
@@ -1477,7 +1477,7 @@ process_fields(struct event *event, stru
goto out_free;

field = malloc_or_die(sizeof(*field));
- memset(field, 0, sizeof(field));
+ memset(field, 0, sizeof(*field));

value = arg_eval(arg);
field->value = strdup(value);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/