X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=mm%2Fvmalloc.c;h=2aad49981b5740ba496f30dad6eb5d5a0d862edf;hb=b9058fb67c42851b4f852d90b11f43279586aae9;hp=94dff883b449e8c1ed3aba28c1b7fd98f41c08db;hpb=b1a808ff436343956a6ae63178ea1810c5e5a3a1;p=~andy%2Flinux diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 94dff883b44..2aad49981b5 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -1185,9 +1185,10 @@ void __init vmalloc_init(void) /* Import existing vmlist entries. */ for (tmp = vmlist; tmp; tmp = tmp->next) { va = kzalloc(sizeof(struct vmap_area), GFP_NOWAIT); - va->flags = tmp->flags | VM_VM_AREA; + va->flags = VM_VM_AREA; va->va_start = (unsigned long)tmp->addr; va->va_end = va->va_start + tmp->size; + va->vm = tmp; __insert_vmap_area(va); } @@ -2375,8 +2376,8 @@ struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets, return NULL; } - vms = kzalloc(sizeof(vms[0]) * nr_vms, GFP_KERNEL); - vas = kzalloc(sizeof(vas[0]) * nr_vms, GFP_KERNEL); + vms = kcalloc(nr_vms, sizeof(vms[0]), GFP_KERNEL); + vas = kcalloc(nr_vms, sizeof(vas[0]), GFP_KERNEL); if (!vas || !vms) goto err_free2;