perf tests: Do not use sizeof on pointer type
authorVaishali Thakkar <vaishali.thakkar@oracle.com>
Thu, 28 Apr 2016 16:46:57 +0000 (22:16 +0530)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 28 Apr 2016 18:37:52 +0000 (15:37 -0300)
Using sizeof on a malloced pointer type will return the wordsize which
can often cause one to allocate a buffer much smaller than it is needed.
So, here do not use sizeof on pointer type.

Note that this has no effect on runtime because 'dsos' is a pointer to a
pointer.

Problem found using Coccinelle.

Signed-off-by: Vaishali Thakkar <vaishali.thakkar@oracle.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1461862017-23358-1-git-send-email-vaishali.thakkar@oracle.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/tests/dso-data.c

index dc673ff7c43756503ca095184f44bd2daa78b50e..8cf0d9e189a8bea36c02c965d74e216d29409089 100644 (file)
@@ -202,7 +202,7 @@ static int dsos__create(int cnt, int size)
 {
        int i;
 
-       dsos = malloc(sizeof(dsos) * cnt);
+       dsos = malloc(sizeof(*dsos) * cnt);
        TEST_ASSERT_VAL("failed to alloc dsos array", dsos);
 
        for (i = 0; i < cnt; i++) {