diff --git a/kernel/fork.c b/kernel/fork.c index baa208c1e876..3798764cb326 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -439,7 +439,7 @@ struct kmem_cache *files_cachep; struct kmem_cache *fs_cachep; /* SLAB cache for vm_area_struct structures */ -struct kmem_cache *vm_area_cachep; +static struct kmem_cache *vm_area_cachep; /* SLAB cache for mm_struct structures (tsk->mm) */ static struct kmem_cache *mm_cachep; diff --git a/mm/pgsize_migration.c b/mm/pgsize_migration.c index f72240b0de79..3b020924a7a9 100644 --- a/mm/pgsize_migration.c +++ b/mm/pgsize_migration.c @@ -270,9 +270,6 @@ static const struct vm_operations_struct pad_vma_ops = { .name = pad_vma_name, }; -/* Defined in kernel/fork.c */ -extern struct kmem_cache *vm_area_cachep; - /* * Returns a new VMA representing the padding in @vma; * returns NULL if no padding in @vma or allocation failed. @@ -284,7 +281,7 @@ static struct vm_area_struct *get_pad_vma(struct vm_area_struct *vma) if (!is_pgsize_migration_enabled() || !(vma->vm_flags & VM_PAD_MASK)) return NULL; - pad = kmem_cache_alloc(vm_area_cachep, GFP_KERNEL); + pad = kzalloc(sizeof(struct vm_area_struct), GFP_KERNEL); if (!pad) { pr_warn("Page size migration: Failed to allocate padding VMA"); return NULL; @@ -350,7 +347,7 @@ void show_map_pad_vma(struct vm_area_struct *vma, struct seq_file *m, else ((show_pad_maps_fn)func)(m, pad); - kmem_cache_free(vm_area_cachep, pad); + kfree(pad); } /*