[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.1.10.0907011454050.18560@vinegar-pot.mit.edu>
Date: Mon, 6 Jul 2009 11:55:40 -0400 (EDT)
From: Tim Abbott <tabbott@...lice.com>
To: Jan Beulich <JBeulich@...ell.com>
cc: Rusty Russell <rusty@...tcorp.com.au>, tony.luck@...el.com,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Tim Abbott <tabbott@....edu>, sam@...nborg.org,
Paul Mackerras <paulus@...ba.org>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] also discard .*init sections after module
initialization
On Wed, 1 Jul 2009, Jan Beulich wrote:
> >>> Rusty Russell <rusty@...tcorp.com.au> 01.07.09 07:22 >>>
> >On Tue, 30 Jun 2009 09:27:26 pm Jan Beulich wrote:
> >> Just like .init, these sections are supposed to be unneeded after init,
> >> and modpost warns about improper section references anyway.
> >
> >Tim Abbot had a section renaming patch, for -ffunction-sections. Can we kill
> >two birds with one stone and have a unique string for init sections, and
> >another for exit sections?
>
> Not sure, would need to see what that patch does first. And then, the patch
> here doesn't do any renaming.
We don't need to rename the .{dev,cpu,mem}init.* sections for
-ffunction-sections -fdata-sections; the only things that need to be
renamed for that are sections with names that start with ".text.",
".data.", ".bss.", and ".rodata." since those are the section names
generated by -ffunction-sections -fdata-sections. So I think that this
change is orthogonal to my efforts.
> >> Likewise
> >> for .*exit which, other than .exit, aren't needed for the module unload
> >> path.
> >
> >Currently true, but I can't see that being true in general.
>
> Why? .*exit sections deal with device/memory/CPU hot remove, which is
> orthogonal to module unload.
For the core kernel, the .devinit sections are currently being squashed
into either the .data section or the .init.data section depending on
whether hotplug is enabled using the vmlinux linker scripts. Can we use
the same approach for modules (i.e. have a module linker script that does
this)? It seems that would avoid having two duplicate mechanisms for
doing the same thing, one in the module loader and one in the core
kernel's linker scripts.
-Tim Abbott
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists