Re: [PATCH v2 01/12] nios2: define virtual address space for modules
From: Edgecombe, Rick P
Date: Fri Jun 16 2023 - 12:00:36 EST
On Fri, 2023-06-16 at 11:50 +0300, Mike Rapoport wrote:
> void *module_alloc(unsigned long size)
> {
> - if (size == 0)
> - return NULL;
> - return kmalloc(size, GFP_KERNEL);
> -}
> -
> -/* Free memory returned from module_alloc */
> -void module_memfree(void *module_region)
> -{
> - kfree(module_region);
> + return __vmalloc_node_range(size, 1, MODULES_VADDR,
> MODULES_END,
> + GFP_KERNEL, PAGE_KERNEL_EXEC,
> + VM_FLUSH_RESET_PERMS,
> NUMA_NO_NODE,
> + __builtin_return_address(0));
> }
>
> int apply_relocate_add(Elf32_Shdr *sechdrs, const char *s
I wonder if the (size == 0) check is really needed, but
__vmalloc_node_range() will WARN on this case where the old code won't.