|
@@ -2378,7 +2378,7 @@ struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets,
|
|
vms = kzalloc(sizeof(vms[0]) * nr_vms, GFP_KERNEL);
|
|
vms = kzalloc(sizeof(vms[0]) * nr_vms, GFP_KERNEL);
|
|
vas = kzalloc(sizeof(vas[0]) * nr_vms, GFP_KERNEL);
|
|
vas = kzalloc(sizeof(vas[0]) * nr_vms, GFP_KERNEL);
|
|
if (!vas || !vms)
|
|
if (!vas || !vms)
|
|
- goto err_free;
|
|
|
|
|
|
+ goto err_free2;
|
|
|
|
|
|
for (area = 0; area < nr_vms; area++) {
|
|
for (area = 0; area < nr_vms; area++) {
|
|
vas[area] = kzalloc(sizeof(struct vmap_area), GFP_KERNEL);
|
|
vas[area] = kzalloc(sizeof(struct vmap_area), GFP_KERNEL);
|
|
@@ -2476,11 +2476,10 @@ found:
|
|
|
|
|
|
err_free:
|
|
err_free:
|
|
for (area = 0; area < nr_vms; area++) {
|
|
for (area = 0; area < nr_vms; area++) {
|
|
- if (vas)
|
|
|
|
- kfree(vas[area]);
|
|
|
|
- if (vms)
|
|
|
|
- kfree(vms[area]);
|
|
|
|
|
|
+ kfree(vas[area]);
|
|
|
|
+ kfree(vms[area]);
|
|
}
|
|
}
|
|
|
|
+err_free2:
|
|
kfree(vas);
|
|
kfree(vas);
|
|
kfree(vms);
|
|
kfree(vms);
|
|
return NULL;
|
|
return NULL;
|