We're allocating the size of the struct which is 32 bytes when we should
be allocating sizeof(void *) which is 4 or 8 bytes depending on the
architecture.

Fixes: 885dcd709ba9 ("powerpc/perf: Add nest IMC PMU support")
Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>

diff --git a/arch/powerpc/perf/imc-pmu.c b/arch/powerpc/perf/imc-pmu.c
index 88126245881b..91c90ddab807 100644
--- a/arch/powerpc/perf/imc-pmu.c
+++ b/arch/powerpc/perf/imc-pmu.c
@@ -210,7 +210,7 @@ static int update_events_in_group(struct device_node *node, 
struct imc_pmu *pmu)
        of_property_read_u32(node, "reg", &base_reg);
 
        /* Allocate memory for the events */
-       pmu->events = kcalloc(ct, sizeof(struct imc_events), GFP_KERNEL);
+       pmu->events = kcalloc(ct, sizeof(*pmu->events), GFP_KERNEL);
        if (!pmu->events)
                return -ENOMEM;
 

Reply via email to