[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <45A63615.2080706@shadowen.org>
Date: Thu, 11 Jan 2007 13:05:25 +0000
From: Andy Whitcroft <apw@...dowen.org>
To: Roman Zippel <zippel@...ux-m68k.org>
CC: Linus Torvalds <torvalds@...l.org>,
Jean Delvare <khali@...ux-fr.org>,
Andrey Borzenkov <arvidjaar@...l.ru>,
Andrew Morton <akpm@...l.org>, linux-kernel@...r.kernel.org,
Herbert Poetzl <herbert@...hfloor.at>,
Olaf Hering <olaf@...fle.de>
Subject: Re: .version keeps being updated
Roman Zippel wrote:
> Hi,
>
> On Wed, 10 Jan 2007, Linus Torvalds wrote:
>
>> This part:
>>
>> const char __init linux_banner[] =
>>
>> CANNOT work, because the stupid SuSE tool that look into the kernel binary
>> searches for "Linux version " as the thing, and as such the "linux_banner"
>> has to be the _first_ thing to trigger it for it to work.
>
> Unless the SuSE tool is completely stupid, it should actually work:
>
> $ strings vmlinux | grep "Linux version"
> Linux version 2.6.20-rc3-git7 (roman@...id) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #7 SMP Wed Jan 10 14:20:10 CET 2007
> $
Try compiling a kernel with CIFS enabled and you will find the output
somewhat different. And herein lies the rub, if the proc string is
__initdata then it falls to the bottom, and the tool takes the first
entry starting from 'Linux version ', which matches these incorrect
lines and the tool fails.
>
>> Which is why "__init" is wrong. It causes the linker to either put it at
>> the end of the thing (which would break the SuSE tool). Alternatively it
>> causes section mismatch problems ("init" and "const" don't work that well
>> together), in which case it might work, but only due to toolchain bugs.
>
> The const could be dropped, but it shouldn't hurt much either...
Longer term I do wonder if the linker section idea mooted elsewhere in
this thread would fly.
-apw
-
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