Re: .exit.text section in vmlinux

From: Magnus Damm
Date: Mon Jul 03 2006 - 03:29:40 EST


On 7/1/06, Chase Venters <chase.venters@xxxxxxxxxxxx> wrote:
On Fri, 30 Jun 2006, Magnus Damm wrote:
> The linker script arch/i386/kernel/vmlinux.lds.S mentions the following:
>
> /* .exit.text is discard at runtime, not link time, to deal with references
> from .altinstructions and .eh_frame */

.altinstructions is for alternatives code (code that is rewritten at
runtime based on some factor such as UP-vs-SMP). .eh_frame has call
framing information used for unwinding. I think it's copied into the
vsyscall page (not entirely familiar with this mechanism though).

Thanks for clarifying.

> The text above seems to answer my question, but I cannot say I fully
> understand the comment. I'd appreciate if someone could explain a bit
> more if possible.
>
> Ok, so the section should be discarded at runtime. Sounds ok. But
> where in the code is this section discarded? -ENOSYS?

When you see "Freeing unused kernel memory", the memory between
__init_begin and __init_end (as marked in vmlinux.ld.S) is released. See
arch-specific mm/init.c.

Oh, I see. It looks like things are working as expected then. Thank you!

Cheers,

/ magnus
-
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/