Change-Id: I35cff46ff50908a9f2a861f0982744fea9a5fce8
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
cpu = calloc(1, sizeof(struct pass_resource_cpu));
if (!cpu) {
- return -ENOMEM;
- goto err;
+ ret = -ENOMEM;
+ goto err_funcs;
}
bus = calloc(1, sizeof(struct pass_resource_bus));
if (!bus) {
- return -ENOMEM;
- goto err;
+ ret = -ENOMEM;
+ goto err_cpu;
}
gpu = calloc(1, sizeof(struct pass_resource_gpu));
if (!gpu) {
- return -ENOMEM;
- goto err;
+ ret = -ENOMEM;
+ goto err_bus;
}
memory = calloc(1, sizeof(struct pass_resource_memory));
if (!memory) {
ret = -ENOMEM;
- goto err;
+ goto err_gpu;
}
/* Initialize each h/w resource */
*data = (void *)power_funcs;
return 0;
-err:
- if (memory)
- free(memory);
+
+err_gpu:
if (gpu)
free(gpu);
+err_bus:
if (bus)
free(bus);
+err_cpu:
if (cpu)
free(cpu);
-
+err_funcs:
free(power_funcs);
return ret;