[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080701231717.047d580a.akpm@linux-foundation.org>
Date: Tue, 1 Jul 2008 23:17:17 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: "Jan Beulich" <jbeulich@...ell.com>
Cc: <sam@...nborg.org>, <stable@...nel.org>, <llipavsky@...e.cz>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] move __attribute__((__cold__)) functions back into
final .text section
On Wed, 18 Jun 2008 12:36:01 +0100 "Jan Beulich" <jbeulich@...ell.com> wrote:
> Due to the addition of __attribute__((__cold__)) to a few symbols
> without adjusting the linker scripts, those symbols currently may end
> up outside the [_stext,_etext) range, as they get placed in
> .text.unlikely by (at least) gcc 4.3.0. This may confuse code not only
> outside of the kernel, symbol_put_addr()'s BUG() could also trigger.
> Hence we need to add .text.unlikely (and for future uses of
> __attribute__((__hot__)) also .text.hot) to the TEXT_TEXT() macro.
>
> Issue observed by Lukas Lipavsky.
>
> Cc: Lukas Lipavsky <llipavsky@...e.cz>
> Signed-off-by: Jan Beulich <jbeulich@...ell.com>
>
> ---
> include/asm-generic/vmlinux.lds.h | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> --- linux-2.6.26-rc6/include/asm-generic/vmlinux.lds.h 2008-04-17 04:49:44.000000000 +0200
> +++ 2.6.26-rc6-hot-cold-text/include/asm-generic/vmlinux.lds.h 2008-06-18 12:19:22.000000000 +0200
> @@ -204,6 +204,7 @@
> * during second ld run in second ld pass when generating System.map */
> #define TEXT_TEXT \
> ALIGN_FUNCTION(); \
> + *(.text.hot) \
> *(.text) \
> *(.ref.text) \
> *(.text.init.refok) \
> @@ -213,7 +214,8 @@
> CPU_KEEP(init.text) \
> CPU_KEEP(exit.text) \
> MEM_KEEP(init.text) \
> - MEM_KEEP(exit.text)
> + MEM_KEEP(exit.text) \
> + *(.text.unlikely)
>
>
> /* sched.text is aling to function alignment to secure we have same
>
So this is now in Sam's
git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next.git.
But it is not in the present linux-next. Either because Sam added it
after Stephen pulled Sam's tree, or because something screwed up.
So I'll now be dropping it. Sam, please ensure that it gets into
2.6.26 and 2.6.25.x (IMO).
Thanks.
--
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