[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m1mybu40qu.fsf@fess.ebiederm.org>
Date: Mon, 09 Mar 2009 18:36:57 -0700
From: ebiederm@...ssion.com (Eric W. Biederman)
To: Jeremy Fitzhardinge <jeremy@...p.org>
Cc: Yinghai Lu <yinghai@...nel.org>, Ingo Molnar <mingo@...e.hu>,
the arch/x86 maintainers <x86@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: Absolute symbols in vmlinux_64.lds.S
Jeremy Fitzhardinge <jeremy@...p.org> writes:
> Why does vmlinux_64.lds.S use absolute symbols for things like __bss_start/stop:
>
> __bss_start = .; /* BSS */
> .bss : AT(ADDR(.bss) - LOAD_OFFSET) {
> *(.bss.page_aligned)
> *(.bss)
> }
> __bss_stop = .;
>
>
> vmlinux_32.lds.S puts __bss_start/stop into the .bss section itself. Is there
> some particular reason they need to be absolute symbols (relocation?).
It is more that in vmlinux_32.lds.S they needed to be section relative, to
deal with relocation.
For the 64bit kernel the relocation happens at the level under the page table
so does not show up in vmlinux_64.lds.S. Which means it was probably
laziness that didn't get it changed simply because it hasn't matter.
Eric
--
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