RO/NX Protections and Modules

Fredrick fjohnber at zoho.com
Wed Jan 25 14:01:06 EST 2012


On 01/23/2012 02:04 PM, Dannie Stanley wrote:
> Regarding the source code for kernel version 2.6.38. In
> kernel/module.c the function defined as:
>
>     SYSCALL_DEFINE3(init_module...)
>
> Calls set_section_ro_nx for core and init. My first question is this:
>
>    Q1: Why doesn't the exit text/data get the RO/NX page protection?
>

I guess this is a trade off.

> In the set_section_ro_nx function the RO comment reads: "Do not
> protect last partial page" and the NX comment reads: "Do not protect
> first partial page." In the presence of mixed pages this makes sense.
> However, change_page_attr_set_clr seems to check for page alignment.
> So my second question is this:
>
>    Q2: Does the RO/NX only apply to page aligned sections?
>

Most MMUs/TLBs deal only with page sized memory. They handle access 
attributes in page sized memory.

> Thank you,
> Dannie
>


-Fredrick





More information about the Kernelnewbies mailing list