[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPhsuW6hqzLuNhvkHFOmKTJdQm8A0JdUna=1iFdRC0y+kKmF4Q@mail.gmail.com>
Date: Tue, 30 May 2023 15:48:51 -0700
From: Song Liu <song@...nel.org>
To: Kent Overstreet <kent.overstreet@...ux.dev>
Cc: linux-kernel@...r.kernel.org, bpf@...r.kernel.org,
mcgrof@...nel.org, peterz@...radead.org, tglx@...utronix.de,
x86@...nel.org, rppt@...nel.org
Subject: Re: [PATCH 0/3] Type aware module allocator
On Mon, May 29, 2023 at 11:25 AM Kent Overstreet
<kent.overstreet@...ux.dev> wrote:
>
> On Sat, May 27, 2023 at 10:58:37PM -0700, Song Liu wrote:
> > 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.
>
> Ok, I went back and read more thoroughly, I got this part wrong. The
> actual interface is the mod_mem_type enum, not mod_alloc_params or
> vmalloc_params.
>
> So this was my main complaint, but this actually looks ok now.
>
> It would be better to have those structs in a .c file, not the header
> file - it looks like those are the public interface the way you have it.
Thanks for this suggestion. It makes a lot of sense. But I am not quite
sure how we can avoid putting it in the header yet. I will take a closer
look. OTOH, if we plan to use Mike's new allocator to replace vmalloc,
we probably don't need this part.
>
> > > The memory protection interface also needs to go, we've got a better
> > > interface to model after (text_poke(), although that code needs work
> > > too!). And the instruction fill features need a thorough justification
> > > if they're to be included.
> >
> > I guess the first step to use text_poke() is to make it available on all
> > archs? That doesn't seem easy to me.
>
> We just need a helper that either calls text_poke() or does the page
> permission dance in a single place.
AFAICT, we don't have a global text_poke() API yet. I can take a look
into it (if it makes sense).
>
> If we do the same thing for other mod_mem_types, we could potentially
> allow them to be shared on hugepages too.
Yeah, that's part of the goal to extend the scope from executable to all
types.
Thanks,
Song
Powered by blists - more mailing lists