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