I'm using latest linux-mips CVS kernel (2.6.10rc3) and GCC 3.4.2 on a AMD Alchemy DBau1100 development board (mipsel/MIPS32). I wasn't able to find any other location to post bugs, so please let me know if there is a bug system or more appropriate place to post this. The kernel build dies with: CC drivers/net/au1000_eth.o drivers/net/au1000_eth.c: In function `au1000_init_module': drivers/net/au1000_eth.c:100: sorry, unimplemented: inlining failed in call to 'str2eaddr': function body not available drivers/net/au1000_eth.c:1506: sorry, unimplemented: called from here drivers/net/au1000_eth.c: At top level: drivers/net/au1000_eth.c:152: warning: 'phy_link' defined but not used make[2]: *** [drivers/net/au1000_eth.o] Error 1 make[1]: *** [drivers/net] Error 2 make: *** [drivers] Error 2 I was able to get things to build with the following patch, although I'm sure this is not the proper way to do things: $ cvs diff drivers/net/au1000_eth.c Index: drivers/net/au1000_eth.c =================================================================== RCS file: /home/cvs/linux/drivers/net/au1000_eth.c,v retrieving revision 1.39 diff -r1.39 au1000_eth.c 100c100 < extern inline void str2eaddr(unsigned char *ea, unsigned char *str); --- > extern void str2eaddr(unsigned char *ea, unsigned char *str); I'm noticing another problem now though (a kernel oops), which could be related to my little patch above. I changed the definition of str2eaddr in arch/mips/au1000/common/prom.c to also not be inline just to make sure they matched. I now get this oops which seems to appear/disappear after enabling/disabling kernel options (although I have not been able to trace it down to one particular feature). This leads me to believe it is some sort of alignment bug, which is what the exception refers to. I have yet been able to build a ksymoops that will work properly, but I'm still working on that. If any one has any tips on how I can resolve this issue I could use the help. Raw oops output (not ksymoops yet) is attached. Best regards, Josh Green
Unhandled kernel unaligned access in arch/mips/kernel/unaligned.c::emulate_load_store_insn, line 475[#1]: Cpu 0 $ 0 : 00000000 1000fc00 6e2f7373 00000000 $ 4 : 80300000 810f1400 00000003 b0500014 $ 8 : 0000561b 810f1400 b0500018 00000000 $12 : 8036fcf8 fffffffa ffffffff 0000000a $16 : 00000022 00000001 00000020 810f1400 $20 : 810f1620 0000ffff 80326ccc b0500000 $24 : 00000001 810b9e1a $28 : 810b8000 810b9f40 810f1620 8035a2f8 Hi : 000301ff Lo : fc85b000 epc : 8035a4d4 au1000_init_module+0x4b8/0x8bc Not tainted ra : 8035a2f8 au1000_init_module+0x2dc/0x8bc Status: 1000fc03 KERNEL EXL IE Cause : 00800010 BadVA : 6e2f7373 PrId : 02030204 Modules linked in: Process swapper (pid: 1, threadinfo=810b8000, task=810adb48) Stack : 37687465 810f1400 b0500000 0000001c 181a0000 8035c2d4 00000000 00000000 0000001c 8036fcf8 8036158c 00000000 802f0000 802f0000 80360000 803615bc 802f0000 802f0000 80300000 801006fc 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 80104d54 1000fc03 00000000 00000000 00000000 00000000 80104d44 ... Call Trace: [<8035c2d4>] devinet_init+0x24/0x64 [<801006fc>] init+0xc4/0x254 [<80104d54>] kernel_thread_helper+0x10/0x18 [<80104d44>] kernel_thread_helper+0x0/0x18 Code: 00000000 8c420004 3c048030 <8c460000> 248408a0 0c049920 00008821 00001021 26850004 Kernel panic - not syncing: Attempted to kill init!
Attachment:
signature.asc
Description: This is a digitally signed message part