Bug 119274 - gcc compile: internal error: Illegal instruction
Summary: gcc compile: internal error: Illegal instruction
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: gcc
Version: 9
Hardware: i586
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-03-28 19:30 UTC by Dev, Al
Modified: 2007-04-18 17:04 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-03-30 12:06:17 UTC
Embargoed:


Attachments (Terms of Use)

Description Dev, Al 2004-03-28 19:30:47 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.6)
Gecko/20040225 Firefox/0.8

Description of problem:
I am trying to compile the Linux Kernel version linux-2.4.20-20.9 on
redhat linux 9. When I do 'make modules' I get this errors:

gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-20.9/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2
-march=i586 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.4.20-20.9/include/linux/modversions.h  -nostdinc
-iwithprefix include -DKBUILD_BASENAME=empeg  -c -o empeg.o empeg.c
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-20.9/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2
-march=i586 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.4.20-20.9/include/linux/modversions.h  -nostdinc
-iwithprefix include -DKBUILD_BASENAME=mct_u232  -c -o mct_u232.o
mct_u232.c
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-20.9/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2
-march=i586 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.4.20-20.9/include/linux/modversions.h  -nostdinc
-iwithprefix include -DKBUILD_BASENAME=io_edgeport  -c -o
io_edgeport.o io_edgeport.c
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-20.9/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2
-march=i586 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.4.20-20.9/include/linux/modversions.h  -nostdinc
-iwithprefix include -DKBUILD_BASENAME=io_ti  -c -o io_ti.o io_ti.c
io_ti.c: In function `TIReadManufDescriptor':
io_ti.c:802: internal error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://bugzilla.redhat.com/bugzilla/> for instructions.
make[3]: *** [io_ti.o] Error 1
make[3]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers/usb/serial'
make[2]: *** [_modsubdir_serial] Error 2
make[2]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers/usb'
make[1]: *** [_modsubdir_usb] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers'
make: *** [_mod_drivers] Error 2


Version-Release number of selected component (if applicable):
Kernel linux-2.4.20-20.9

How reproducible:
Always

Steps to Reproduce:
1. Install the kernel-source-2.4.20-20.9.rpm
2. cd /usr/src/linux
3. make modules
    

Actual Results:  The gcc compile fails

Expected Results:  Clean compile of linux kernel

Additional info:

.c
make[3]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers/usb/host'
make -C serial modules
make[3]: Entering directory
`/usr/src/linux-2.4.20-20.9/drivers/usb/serial'


gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-20.9/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2
-march=i586 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.4.20-20.9/include/linux/modversions.h  -nostdinc
-iwithprefix include -DKBUILD_BASENAME=io_edgeport  -c -o
io_edgeport.o io_edgeport.c
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-20.9/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2
-march=i586 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.4.20-20.9/include/linux/modversions.h  -nostdinc
-iwithprefix include -DKBUILD_BASENAME=io_ti  -c -o io_ti.o io_ti.c
io_ti.c: In function `TIReadManufDescriptor':
io_ti.c:802: internal error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://bugzilla.redhat.com/bugzilla/> for instructions.
make[3]: *** [io_ti.o] Error 1
make[3]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers/usb/serial'
make[2]: *** [_modsubdir_serial] Error 2
make[2]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers/usb'
make[1]: *** [_modsubdir_usb] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.20-20.9/drivers'
make: *** [_mod_drivers] Error 2

Comment 1 Jakub Jelinek 2004-03-29 06:36:36 UTC
Is it reproducible, always on the same file same error?
If yes, I need preprocessed source for the file in question
(io_ti.i; just pass -save-temps option additionally to the given ones).
If no, you have hardware problems.

Comment 2 Dev, Al 2004-03-29 15:29:38 UTC
It is not reproducible on the same file.
But the same error comes up everytime on different file.
I also did memtest86 on RAM testing and everything passed (running for
16 hours).
I guess there is no hardware problem.

Comment 3 Dev, Al 2004-03-30 01:19:50 UTC
Found the problem: It is due to hardware.  The problem arises when I
installed new 512 SDRAM on the box (AMD K6 550mhz cpu). Somehow, it
looks like you cannot intermix new 512 SDRAM with older 128 MB SDRAM.
New RAMs are not compatible with older Motherboards or CPUs.
I removed the new 512MB SDRAM which I installed, and then gave the
same kernel compile and it works fine without any problems.

So it is the hardware RAM,RAM,RAM!!!


Note You need to log in before you can comment on or make changes to this bug.