[Top] [All Lists]

Re: gcc -3.4.4 and linux-2.4.32

To: David Daney <>
Subject: Re: gcc -3.4.4 and linux-2.4.32
From: "P. Christeas" <>
Date: Tue, 17 Jan 2006 14:26:08 +0200
Cc: Kishore K <>,
In-reply-to: <>
Original-recipient: rfc822;
References: <> <>
User-agent: KMail/1.9
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  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.

<Prev in Thread] Current Thread [Next in Thread>