Critical compile bug: 2.4.1-pre2 alpha
init/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'
make: *** [vmlinux] Error 1
On compiling (and recompiling) i get this fatal error. This function does not exist anymore?
Shawn Starr.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
[PROBLEM] 2.4.1-pre2 - Undefined symbol `__buggy_fxsr_alignment'
GCC 2.95.2 -> PGCC 2.95.2(3?) patched. 2.4.0 compiles fine
init/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'
make: *** [vmlinux] Error 1
On compiling (and recompiling) i get this fatal error. This function does not exist anymore?
Anyone else having this problem?
Shawn Starr.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
Re: [PROBLEM] 2.4.1-pre2 - Undefined symbol `__buggy_fxsr_alignment' - (FIXED)
In reply to Shawn Starrerrrr i think it was just fixed in pre3 ;-)
+ if (offsetof(struct task_struct, thread.i387.fxsave) & 15) {
+ extern void __buggy_fxsr_alignment(void);
+ __buggy_fxsr_alignment();
+ }
Quoted 10 lines
GCC 2.95.2 -> PGCC 2.95.2(3?) patched. 2.4.0 compiles fine
init/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'make: *** [vmlinux] Error 1
On compiling (and recompiling) i get this fatal error. This function does not exist anymore?
Quoted 8 lines
Anyone else having this problem?
Shawn Starr.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
[CONT PROBLEM] 2.4.1-pre3 - Undefined symbol `__buggy_fxsr_alignment'
In reply to Shawn StarrNope, its not ;/
Im on a Intel Pentium 200Mhz PC, 64MB RAM,
ld -m elf_i386 -T /usr/src/linux/arch/i386/vmlinux.lds -e stext arch/i386/kernel/head.o arch/i386/kernel/init_task.o init/main.o init/version.o \
--start-group \
arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.oipc/ipc.o \
drivers/block/block.o drivers/char/char.o drivers/misc/misc.o drivers/net/net.odrivers/media/media.o drivers/parport/driver.o drivers/ide/idedriver.o drivers/cdrom/driver.o drivers/sound/sounddrivers.o drivers/pci/driver.o drivers/pnp/pnp.o drivers/video/video.o drivers/input/inputdrv.o \
net/network.o \
/usr/src/linux/arch/i386/lib/lib.a /usr/src/linux/lib/lib.a/usr/src/linux/arch/i386/lib/lib.a \
--end-group \
-o vmlinuxinit/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'
make: *** [vmlinux] Error 1
same fatal error. Where is this function defined in the i386 asm header?
If so, I could fix this and submit a patch.
[root@coredump linux]# grep -r "__buggy_fxsr_alignment" *
include/asm-i386/bugs.h: extern void __buggy_fxsr_alignment(void); include/asm-i386/bugs.h: __buggy_fxsr_alignment(); include/asm/bugs.h: extern void __buggy_fxsr_alignment(void); include/asm/bugs.h: __buggy_fxsr_alignment();
/* Enable FXSR and company _before_ testing for FP problems. */
/*
* Verify that the FXSAVE/FXRSTOR data will be 16-byte aligned.
*/
if (offsetof(struct task_struct, thread.i387.fxsave) & 15) {
extern void __buggy_fxsr_alignment(void);
__buggy_fxsr_alignment();Where is this function? Where is it defined? When i grep the whole dir i dont see this function anywhere?
Shawn.
Quoted 21 lines · Shawn Starr
errrr i think it was just fixed in pre3 ;-)
(quoted diff) +4
-0+ if (offsetof(struct task_struct, thread.i387.fxsave) & 15) { + extern void __buggy_fxsr_alignment(void); + __buggy_fxsr_alignment(); + }Quoted 15 lines
GCC 2.95.2 -> PGCC 2.95.2(3?) patched. 2.4.0 compiles fine
init/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'make: *** [vmlinux] Error 1
On compiling (and recompiling) i get this fatal error. This function does not exist anymore?
Anyone else having this problem?
Shawn Starr.
Re: [CONT PROBLEM] 2.4.1-pre3 - Undefined symbol `__buggy_fxsr_alignment'
In reply to Shawn StarrQuoted 9 lines · Shawn Starr
Nope, its not ;/
Im on a Intel Pentium 200Mhz PC, 64MB RAM,
init/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'
make: *** [vmlinux] Error 1same fatal error. Where is this function defined in the i386 asm header?
It should not be present at all in the objects. The compiler optimizer should remove that call, which is just an example of similar kind of "if optimizer fails, here is cannon-fodder to alert users about it."
Quoted 10 lines
If so, I could fix this and submit a patch.
/* Enable FXSR and company _before_ testing for FP problems. */
/* * Verify that the FXSAVE/FXRSTOR data will be 16-byte aligned. */ if (offsetof(struct task_struct, thread.i387.fxsave) & 15) { extern void __buggy_fxsr_alignment(void); __buggy_fxsr_alignment();
Quoted 2 lines
Where is this function? Where is it defined? When i grep the whole dir i dont see this function anywhere?
See the comment above the offsetof() call.
Now think. Figure out why things are at wrong offset.
Has something been added into task_struct lately ?
Or to thread_struct, which actually is processor context data where this 'thread.i386.fxsave' thing resides ?
Oh yes, if compilation DOES NOT happen with -O flag, this will also happen..
Quoted 1 line
Shawn.
/Matti Aarnio
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
Re: [CONT PROBLEM] 2.4.1-pre3 - Undefined symbol `__buggy_fxsr_alignment'
In reply to Shawn StarrWell, when i Make bzImage it uses -O2 for optimization. Is there any fix? change the optimization to -O0 ?
Quoted 39 lines · Matti Aarnio
Quoted 9 lines · Shawn Starr
Nope, its not ;/
Im on a Intel Pentium 200Mhz PC, 64MB RAM,
init/main.o: In function `check_fpu':
init/main.o(.text.init+0x53): undefined reference to `__buggy_fxsr_alignment'
make: *** [vmlinux] Error 1same fatal error. Where is this function defined in the i386 asm header?
It should not be present at all in the objects. The compiler optimizer should remove that call, which is just an example of similar kind of "if optimizer fails, here is cannon-fodder to alert users about it."
Quoted 10 lines
If so, I could fix this and submit a patch.
/* Enable FXSR and company _before_ testing for FP problems. */
/* * Verify that the FXSAVE/FXRSTOR data will be 16-byte aligned. */ if (offsetof(struct task_struct, thread.i387.fxsave) & 15) { extern void __buggy_fxsr_alignment(void); __buggy_fxsr_alignment();Quoted 2 lines
Where is this function? Where is it defined? When i grep the whole dir i dont see this function anywhere?
See the comment above the
offsetof()call.
Now think. Figure out why things are at wrong offset.
Has something been added intotask_structlately ?
Or tothread_struct, which actually is processor context data where this 'thread.i386.fxsave' thing resides ?Oh yes, if compilation DOES NOT happen with -O flag, this will also happen..
Quoted 7 lines
Quoted 1 line
Shawn.
/Matti Aarnio
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/