On Wed, Oct 04, 2023 at 12:29:36AM +0000, Edgecombe, Rick P wrote: > On Mon, 2023-09-18 at 10:29 +0300, Mike Rapoport wrote: > > diff --git a/arch/x86/kernel/module.c b/arch/x86/kernel/module.c > > index 5f71a0cf4399..9d37375e2f05 100644 > > --- a/arch/x86/kernel/module.c > > +++ b/arch/x86/kernel/module.c > > > > -void *module_alloc(unsigned long size) > > +struct execmem_params __init *execmem_arch_params(void) > > { > > - gfp_t gfp_mask = GFP_KERNEL; > > - void *p; > > - > > - if (PAGE_ALIGN(size) > MODULES_LEN) > > - return NULL; > > + unsigned long module_load_offset = 0; > > + unsigned long start; > > > > - p = __vmalloc_node_range(size, MODULE_ALIGN, > > - MODULES_VADDR + > > get_module_load_offset(), > > - MODULES_END, gfp_mask, PAGE_KERNEL, > > - VM_FLUSH_RESET_PERMS | > > VM_DEFER_KMEMLEAK, > > - NUMA_NO_NODE, > > __builtin_return_address(0)); > > + if (IS_ENABLED(CONFIG_RANDOMIZE_BASE) && kaslr_enabled()) > > + module_load_offset = > > + get_random_u32_inclusive(1, 1024) * > > PAGE_SIZE; > > Minor: > I think you can skip the IS_ENABLED(CONFIG_RANDOMIZE_BASE) part because > CONFIG_RANDOMIZE_MEMORY depends on CONFIG_RANDOMIZE_BASE (which is > checked in kaslr_enabled()). Thanks, I'll look into it. -- Sincerely yours, Mike.