Re: unmatched R_MIPS_HI16/LO16 on gcc 3.4.3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Attachment is a testsuit. It costed me a week to make this testsuit.

If I added -mno-explicit-relocs -mno-split-addresses to makefile, this bug
disappeared. Is there any performance difference with and without these
flags ?

Thanks!

----- Original Message ----- 
From: "Ralf Baechle" <ralf@xxxxxxxxxxxxxx>
To: <wyb@xxxxxxxxxxxxx>
Cc: <macro@xxxxxxxxxxxxxx>; <sskowron@xxxxxxxxxxxxxxxx>;
<rsandifo@xxxxxxxxxx>; <linux-mips@xxxxxxxxxxxxxx>
Sent: Tuesday, July 25, 2006 11:44 AM
Subject: Re: unmatched R_MIPS_HI16/LO16 on gcc 3.4.3


> On Tue, Jul 25, 2006 at 10:49:56AM +0800, wyb@xxxxxxxxxxxxx wrote:
>
> > I met similar problem as Stanislaw Skowronek, but for gcc 3.4.3. I
created a
> > kernel module, when insmod, kernel reported "dangerous relocation". I
traced
> > the bug, found unmatched R_MIPS_HI16/LO16 in module's elf file, and
kernel
> > refused to relocate:
> > ...
> > 00015a5c  00039a05 R_MIPS_HI16       0000000c   tos_net_debug
> > 00015a68  00000204 R_MIPS_26         00000000   .text
> > 00015a64  00046005 R_MIPS_HI16       0006b598   arp_proxy_list
> > 00015a6c  00046006 R_MIPS_LO16       0006b598   arp_proxy_list
> > ...
> >
> > My problem arised when expression on tos_net_debug could be optimized
out,
> > it seemed like gcc optimized out the LO16, but left HI16.
> >
> > The original discussion on similar problem is at
> > http://www.linux-mips.org/archives/linux-mips/2005-05/msg00097.html
>
> Do you have a testcase, a kernel .config file to trigger this?
>
>   Ralf
>

Attachment: bug.tgz
Description: Binary data

Attachment: .config
Description: Binary data


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux