module: Use vzalloc() instead of vmalloc()/memset(0)
authorYang Yingliang <yangyingliang@huawei.com>
Mon, 4 Jul 2022 12:03:37 +0000 (20:03 +0800)
committerLuis Chamberlain <mcgrof@kernel.org>
Mon, 11 Jul 2022 17:49:14 +0000 (10:49 -0700)
Use vzalloc() instead of vmalloc() and memset(0) to simpify the code.

Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Aaron Tomlin <atomlin@redhat.com>
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
kernel/module/main.c

index b2de00e..d34227c 100644 (file)
@@ -2138,7 +2138,7 @@ static int move_module(struct module *mod, struct load_info *info)
 
 #ifdef CONFIG_ARCH_WANTS_MODULES_DATA_IN_VMALLOC
        /* Do the allocs. */
-       ptr = vmalloc(mod->data_layout.size);
+       ptr = vzalloc(mod->data_layout.size);
        /*
         * The pointer to this block is stored in the module structure
         * which is inside the block. Just mark it as not being a
@@ -2151,7 +2151,6 @@ static int move_module(struct module *mod, struct load_info *info)
                return -ENOMEM;
        }
 
-       memset(ptr, 0, mod->data_layout.size);
        mod->data_layout.base = ptr;
 #endif
        /* Transfer each section which specifies SHF_ALLOC */