Messages in this thread | | | Date | Thu, 3 Jun 2004 10:53:28 +0200 | From | Ingo Molnar <> | Subject | Re: [announce] [patch] NX (No eXecute) support for x86, 2.6.7-rc2-bk2 |
| |
* Rusty Russell <rusty@rustcorp.com.au> wrote:
> You want to replace the arch-specific module_alloc() function for > this. Or even better, reset the NX bit only on executable sections (in > the arch-specific module_finalize(), using mod->core_text_size and > mod->init_text_size). No generic changes necessary.
this reminds me of another issue: x86_64 currently seems to manually map the whole module via PAGE_KERNEL_EXEC. Andi, we could change it to use vmalloc_exec(), right?
and yet another sub-topic: when building modules we should align .rodata (the first non-executable section) to page boundary. This adds ~2K to the module size but it's not an issue i think. Data section overflows do happen and if it has a function pointer that can be used as a trampoline then we want the whole data section to be non-executable.
Ingo - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |