Stephen M. Rumble wrote: On 07.03.09 15:33:26 you wrote: >> patch to src/gnu/dist/gcc4/gcc/config/mips/mips.c: > [snip] >> I already recompiled the kernel and all jumps and most branches seem >> to be >> aligned. And the kernel works! Now I'm recompiling the whole >> userland to see >> if it makes any difference. >> >> We made this fix depend on -mfix-r4000. > > Awesome! Given what I said above, I'm kind of surprised that it would > matter for the kernel. Perhaps I was wrong. With "the kernel works" I meant that it is not worse than before. ;) You're probably right, that it doesn't matter for the kernel. So I recompiled the whole userland yesterday with it. > One thing, though: I think that this bug affects branch instructions, > too. You're right. But the patch seems to affect most of the conditional branches already, although I have also seen that some are still unaligned (perhaps assembler-code or assembler-inlines in C code?). This morning I made an installation with a completely recompiled sgimips release (using -mfix-r4000 and alignment). Unfortunately, although the kernel seemed to work, this was a desaster. Installation process worked fine, but the bootstrap loader crashed (see attached photo). Unfortunately there must be more in userland which fails now. I tried to boot the generic kernel over the net (in the hope it is only the bootloader), but then the kernel crashed at the point when going multiuser, and dropped into db. Seems my experiment has ended at that point. :| -- _ Frank Wille (frank%phoenix.owl.de@localhost) _ // http://sun.hasenbraten.de/~frank/ \X/ Phx @ #AmigaGer
Attachment:
sgiboot.jpg
Description: JPEG image