Re: [PATCH v5] RO/NX protection for loadable kernel modules

From: Jesper Nilsson
Date: Mon Jul 13 2009 - 07:02:16 EST


On Sun, Jul 12, 2009 at 06:40:39AM +0200, Rusty Russell wrote:
> On Sun, 12 Jul 2009 01:19:58 am Arjan van de Ven wrote:
> > Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
> > > I have a question about this patch though: I think it's unsafe in
> > > general to mark the last partial page as NX (we asked for executable
> > > pages, this could remove executable from some unrelated allocation).
> >
> > we vmalloc / g_f_p modules right? so we don't share the last page.
>
> Historically yes, but I don't think we should be counting on it. It makes
> sense to kmalloc for small modules, and it's arch specific code.
>
> OTOH, a quick grep shows currently only cris does kmalloc, and that's a config
> option.

...which is a not often used debug option.

> It might be time to unify this code. If we rename MODULE_START to
> MODULE_VADDR on MIPS, then ignoring CRIS there's only two real variants;
> vmalloc and __vmalloc.
>
> (I like the idea of trying kmalloc and falling back, simply because it reduces
> TLB pressure, but that's probably best done after unification).
>
> Thoughts?
> Rusty.

/^JN - Jesper Nilsson
--
Jesper Nilsson -- jesper.nilsson@xxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/