On Monday 16 January 2006 7:34 pm, David Daney wrote: > Kishore K wrote: > > hi > > When 2.4.32 kernel (from linux-mips) is compiled with the tool chain > > based on gcc 3.4.4 and binutils 2.16.1, the kernel crashes on malta > > board. The crash file is enclosed along with the mail. If the same > > kernel is compiled with the tool chain based on gcc 3.3.6, no problem is > > observed. > > > > May I know, whether it is because of the changes in ABI in gcc 3.4. > > Not exactly. It has to do with -funit-at-a-time. In the 2.4.x kernel > it is assumed that gcc will not reorder top level asm statements and > functions. For gcc-3.3.x and earlier this was a valid assumption. With > 3.4.x and later it is not. > Does that apply to gcc-4.0.2 as well? It is mentioned in linux documentation that -funit-at-a-time is safe as of gcc-4.x. Is there (I'm not a MIPS expert) a way to verify whether gcc produces wrong instructions? I've had a similar problem (I only try with gcc 4, because I compile linux 2.6) and is reduced when I use -fno-unit-at-a-time. Still, I have instability, which now appears less often. I've tried the '-fno-unit-at-a-time' solution (for the whole kernel) and the 'pop/push' at interrupt.h fix. > > If > > so, has any one got the patch to make 2.4.x kernels work with gcc 3.4 > > compilers? From the changelog, I can infer that, some changes have been > > done in 2.4.28 kernel to work with gcc 3.4 for i386. If so, has the same > > thing been done for MIPS as well. > > IIRC the patches were never applied to linux-mips.org. If you search > the archives of this list for messages that I sent, you can find the > patches. Can you please list the necessary patches? One line for each would do, as I want to check if I have them all. > > David Daney.