• Linus Torvalds's avatar
    Merge tag 'modules-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux · a4946824
    Linus Torvalds authored
    Pull modules updates from Luis Chamberlain:
     "Finally something fun. Mike Rapoport does some cleanup to allow us to
      take out module_alloc() out of modules into a new paint shedded
      execmem_alloc() and execmem_free() so to make emphasis these helpers
      are actually used outside of modules.
    
      It starts with a non-functional changes API rename / placeholders to
      then allow architectures to define their requirements into a new shiny
      struct execmem_info with ranges, and requirements for those ranges.
    
      Archs now can intitialize this execmem_info as the last part of
      mm_core_init() if they have to diverge from the norm. Each range is a
      known type clearly articulated and spelled out in enum execmem_type.
    
      Although a lot of this is major cleanup and prep work for future
      enhancements an immediate clear gain is we get to enable KPROBES
      without MODULES now. That is ultimately what motiviated to pick this
      work up again, now with smaller goal as concrete stepping stone"
    
    * tag 'modules-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux:
      bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
      kprobes: remove dependency on CONFIG_MODULES
      powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate
      x86/ftrace: enable dynamic ftrace without CONFIG_MODULES
      arch: make execmem setup available regardless of CONFIG_MODULES
      powerpc: extend execmem_params for kprobes allocations
      arm64: extend execmem_info for generated code allocations
      riscv: extend execmem_params for generated code allocations
      mm/execmem, arch: convert remaining overrides of module_alloc to execmem
      mm/execmem, arch: convert simple overrides of module_alloc to execmem
      mm: introduce execmem_alloc() and execmem_free()
      module: make module_memory_{alloc,free} more self-contained
      sparc: simplify module_alloc()
      nios2: define virtual address space for modules
      mips: module: rename MODULE_START to MODULES_VADDR
      arm64: module: remove unneeded call to kasan_alloc_module_shadow()
      kallsyms: replace deprecated strncpy with strscpy
      module: allow UNUSED_KSYMS_WHITELIST to be relative against objtree.
    a4946824
core.c 77.9 KB