From: Vivek Goyal <vgoyal@in.ibm.com>
To: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: linux kernel mailing list <linux-kernel@vger.kernel.org>,
Reloc Kernel List <fastboot@lists.osdl.org>,
ebiederm@xmission.com, akpm@osdl.org, ak@suse.de, hpa@zytor.com,
magnus.damm@gmail.com, lwang@redhat.com, dzickus@redhat.com,
maneesh@in.ibm.com
Subject: Re: [PATCH 7/11] i386: Kallsyms generate relocatable symbols
Date: Mon, 6 Nov 2006 11:03:53 -0500 [thread overview]
Message-ID: <20061106160353.GD26091@in.ibm.com> (raw)
In-Reply-To: <20061106154857.003dc9d9@cad-250-152.norway.atmel.com>
On Mon, Nov 06, 2006 at 03:48:57PM +0100, Haavard Skinnemoen wrote:
> On Mon, 23 Oct 2006 15:37:48 -0400
> Vivek Goyal <vgoyal@in.ibm.com> wrote:
>
> > Add the _text symbol definitions to the architectures which don't
> > define it otherwise linker will fail.
>
> I get lots of this when building latest -mm for avr32:
>
> .tmp_kallsyms2.S:643: Warning: right operand is a bignum; integer 0
> assumed
>
> Reverting this patch makes the warnings go away. I think it's
> because on avr32, .init is the first section, not .text, so many of the
> offsets become negative and kallsyms doesn't seem to handle this very
> well. Here's a few lines from .tmp_kallsyms2.S:
>
> kallsyms_addresses:
> PTR _text + 0xffffffffffff4000
> PTR _text + 0xffffffffffff4000
>
> Any idea how to fix this? Could we introduce a new symbol that always
> marks the start of the image perhaps?
>
Hi Haavard,
Does the attached patch solve the issue for you?
Thanks
Vivek
o On some platforms like avr32, section init comes before .text and
not necessarily a symbol's relative position w.r.t _text is positive.
In such cases assembler detects the overflow and emits warning. This
patch fixes it.
Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
---
scripts/kallsyms.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff -puN scripts/kallsyms.c~i386-reloc-kallsyms-_text-symbol-relative-address-fix scripts/kallsyms.c
--- linux-2.6.19-rc4-reloc/scripts/kallsyms.c~i386-reloc-kallsyms-_text-symbol-relative-address-fix 2006-11-06 10:47:01.000000000 -0500
+++ linux-2.6.19-rc4-reloc-root/scripts/kallsyms.c 2006-11-06 10:47:01.000000000 -0500
@@ -277,8 +277,12 @@ static void write_src(void)
output_label("kallsyms_addresses");
for (i = 0; i < table_cnt; i++) {
if (toupper(table[i].sym[0]) != 'A') {
- printf("\tPTR\t_text + %#llx\n",
- table[i].addr - _text);
+ if (_text <= table[i].addr)
+ printf("\tPTR\t_text + %#llx\n",
+ table[i].addr - _text);
+ else
+ printf("\tPTR\t_text - %#llx\n",
+ _text - table[i].addr);
} else {
printf("\tPTR\t%#llx\n", table[i].addr);
}
_
next prev parent reply other threads:[~2006-11-06 16:04 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-23 19:24 [RFC][PATCH 0/11] i386: Relocatable BzImage (V3) Vivek Goyal
2006-10-23 19:26 ` [PATCH 1/11] i386: Distinguish absolute symbols Vivek Goyal
2006-10-23 19:29 ` [PATCH 2/11] i386: Remove unnecessary ALIGN() in vmlinux.lds.S Vivek Goyal
2006-10-23 19:30 ` [PATCH 3/11] i386: Force data segment to be 4K aligned Vivek Goyal
2006-10-23 19:32 ` [PATCH 4/11] i386: define __pa_symbol() Vivek Goyal
2006-10-23 19:33 ` [PATCH 5/11] i386: Reserve kernel memory starting from _text Vivek Goyal
2006-10-23 19:36 ` [PATCH 6/11] i386: CONFIG_PHYSICAL_START cleanup Vivek Goyal
2006-10-23 19:37 ` [PATCH 7/11] i386: Kallsyms generate relocatable symbols Vivek Goyal
2006-11-06 14:48 ` Haavard Skinnemoen
2006-11-06 16:03 ` Vivek Goyal [this message]
2006-11-06 16:13 ` Haavard Skinnemoen
2006-11-06 16:34 ` H. Peter Anvin
2006-10-23 19:39 ` [PATCH 8/11] i386: Relocatable kernel support Vivek Goyal
2006-10-23 19:40 ` [PATCH 9/11] i386: Warn upon absolute relocations being present Vivek Goyal
2006-10-23 19:42 ` [PATCH 10/11] i386: Implement CONFIG_PHYSICAL_ALIGN Vivek Goyal
2006-10-23 19:44 ` [PATCH 11/11] i386: Extend bzImage protocol for relocatable protected mode kernel Vivek Goyal
2006-10-24 13:44 ` [RFC][PATCH 0/11] i386: Relocatable BzImage (V3) Andi Kleen
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=20061106160353.GD26091@in.ibm.com \
--to=vgoyal@in.ibm.com \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=dzickus@redhat.com \
--cc=ebiederm@xmission.com \
--cc=fastboot@lists.osdl.org \
--cc=hpa@zytor.com \
--cc=hskinnemoen@atmel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lwang@redhat.com \
--cc=magnus.damm@gmail.com \
--cc=maneesh@in.ibm.com \
/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.