From: Sam Ravnborg <sam@ravnborg.org>
To: Arjan van de Ven <arjan@infradead.org>
Cc: torvalds@linux-foundation.org, linux-kernel@vger.kernel.org,
Matt Mackall <mpm@selenic.com>
Subject: Re: [pull request] getting rid of __cpuinit
Date: Sat, 25 Oct 2008 16:35:28 +0200 [thread overview]
Message-ID: <20081025143528.GA30900@uranus.ravnborg.org> (raw)
In-Reply-To: <20081025070043.50578543@infradead.org>
On Sat, Oct 25, 2008 at 07:00:43AM -0700, Arjan van de Ven wrote:
> On Sat, 25 Oct 2008 09:59:25 +0200
> Sam Ravnborg <sam@ravnborg.org> wrote:
>
> > > text data bss dec
> > > hex filename 4618096 1358684 848588
> > > 6825368 682598 vmlinux.before 4619965
> > > 1356908 848716 6825589 682675 vmlinux.after
> >
> > The interesting number here is the size of the cpuinit/cpuexit
> > sections. cpuinit sections are discarded after init and cpuexit
> > sections are discarded if you do not use modules.
> >
> > Can you share these numbers with us?
>
> those sections don't actually exist because of the linker script
> magic...
The code exist in both the before and after case, only in the after case
you cannot distingush them.
Your patch simply moves code/data from the cpuinit/exit sections
to .text/.data.
So if you look at the size of the cpuinit/exit sections in the
before case you get the real space saving that is lost in the
embedded case after your patch is applied.
The space savings that happen after early init.
As for the complexity of especially the cpuinit/exit stuff
the reason is that whoever started to use this mechnishm extended
the __cpuinit case to be:
a) Code that is only used during early init and can be discarded
b) Code that is only used for CPU hotplugging
The a) case is the traditional way __fooinit is used.
The b) case is usually handled by our configuration
but for CPU hotplugging it was misused.
Let us please get the numbers correct before we rip it out.
Sam
next prev parent reply other threads:[~2008-10-25 14:36 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-24 21:20 [pull request] getting rid of __cpuinit Arjan van de Ven
2008-10-24 21:37 ` [PATCH] kbuild: drop cpuinit/cpuexit checks in modpost Sam Ravnborg
2008-10-25 23:56 ` Arjan van de Ven
2008-10-25 7:59 ` [pull request] getting rid of __cpuinit Sam Ravnborg
2008-10-25 14:00 ` Arjan van de Ven
2008-10-25 14:35 ` Sam Ravnborg [this message]
2008-10-25 15:06 ` Arjan van de Ven
2008-10-25 16:21 ` Sam Ravnborg
2008-10-25 16:29 ` Arjan van de Ven
2008-10-25 18:20 ` Rafael J. Wysocki
2008-10-25 21:36 ` Sam Ravnborg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20081025143528.GA30900@uranus.ravnborg.org \
--to=sam@ravnborg.org \
--cc=arjan@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mpm@selenic.com \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.