Odp: Re: AlphaCore 2.0 vs. AlphaServer 4100
Sergey Tikhonov
tsv at solvo.ru
Fri Mar 24 23:36:22 UTC 2006
Michal Jaegermann wrote:
>>Yes, as soon as I figure out what to do with famost "Relocation" problem
>>with modules on Alpha.
>>
>>
>
>By any chance this will not be the following (I got that a long
>time ago with an obvious white-space damage so if this cast is
>really missing then it has to be added with an editor)?
>
>---------------------------
>
>On Mon, Jan 05, 2004 at 02:21:37AM +0100, Måns Rullgård wrote:
>
>
>>I compiled Linux 2.6.0 for Alpha, and it mostly works, except the
>>somewhat large modules. They fail to load with the message
>>"Relocation overflow vs section 17", or some other section number.
>>
>>
>
>This failure happens with GPRELHIGH relocation, which is *signed*
>short, but relocation overflow check in module.c doesn't take into
>account the sign extension.
>Appended patch should help.
>
>Ivan.
>
>--- 2.6/arch/alpha/kernel/module.c Wed May 28 01:05:20 2003
>+++ linux/arch/alpha/kernel/module.c Mon Aug 11 23:23:02 2003
>@@ -259,7 +259,7 @@ apply_relocate_add(Elf64_Shdr *sechdrs,
>*(u64 *)location = value;
>break;
>case R_ALPHA_GPRELHIGH:
>- value = (value - gp + 0x8000) >> 16;
>+ value = (long)(value - gp + 0x8000) >> 16;
>if ((short) value != value)
>goto reloc_overflow;
>*(u16 *)location = value;
>
>---------------------------
>
>I would think that this was applied a long time ago but maybe
>not? I cannot check at this moment.
>
>
Yes, this one is applied.
There are other relocation problems related to "per_cpu data" reference
ipv6 module (this easily fixed by compiling module in).
Another one I got today while testing qboot3 iso image with recent fixes
to kernel. It is "cramfs" module and relocation type is
R_ALPHA_LITERAL. It seems it depens on size of .text and .data sections
plus where .got section is allocated. I am still trying
to understand all of this.
Regards,
Sergey.
More information about the axp-list
mailing list