On Tue, May 30, 2023 at 03:37:24PM -0700, Song Liu wrote: > On Mon, May 29, 2023 at 3:45 AM Mike Rapoport <rppt@xxxxxxxxxx> wrote: > > > > On Sat, May 27, 2023 at 10:58:37PM -0700, Song Liu wrote: > > > On Sat, May 27, 2023 at 12:04 AM Kent Overstreet > > > <kent.overstreet@xxxxxxxxx> wrote: > > > > > > > > I think this needs to back to the drawing board and we need something > > > > simpler just targeted at executable memory; architecture specific > > > > options should definitely _not_ be part of the exposed interface. > > > > > > I don't think we are exposing architecture specific options to users. > > > Some layer need to handle arch specifics. If the new allocator is > > > built on top of module_alloc, module_alloc is handling that. If the new > > > allocator is to replace module_alloc, it needs to handle arch specifics. > > > > I'm for creating a new allocator that will replace module_alloc(). This > > will give us a clean abstraction that modules and all the rest will use and > > it will make easier to plug binpack or another allocator instead of > > vmalloc. > > > > Another point is with a new allocator we won't have weird dependencies on > > CONFIG_MODULE in e.g. bpf and kprobes. > > > > I'll have something ready to post as an RFC in a few days. > > I guess this RFC is similar to unmapped_alloc()? If it replaces > vmalloc, we can probably trim this set down a bit (remove > mod_alloc_params and vmalloc_params, etc.). No, it's not a new allocator. I'm trying to create an API for code allocations that can accommodate all the architectures and it won't be a part of modules code. The modules will use the new API just like every other subsystem that needs to allocate code. I've got a core part of it here: https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git/log/?h=jitalloc/v1 and I hope I'll get it ready to post this week. > Thanks, > Song -- Sincerely yours, Mike.