Messages in this thread | | | Subject | linux-2.3.[23] won't boot with egcs-2.93.22: Some progress | Date | Thu, 20 May 1999 00:38:20 -0400 | From | Horst von Brand <> |
| |
This is i586/100 UP, binutils-2.9.1.0.24, glibc-2.1.1pre3; most of the rest is stock RedHat-6.0
It was reported that the above combination won't boot (it fails loading block-major-3 even for IDE builtin!). egcs-1.1.2 (i.e., 2.91.66) works fine.
I built several 2.3.3 kernels mixing *.o built with both compilers, and found out that the offending file is drivers/block/ide.c: If just that one is compiled with 1.1.2, the kernel works fine as far as my (limited!) testing shows. If that file is compiled with egcs-2.93.19 the kernel crashes too (I have no older egcs snapshots here to check).
Sadly, the file is quite big (I counted 160 functions), and the compilers generate rather different code, so a simple diff(1) of the assembler outputs doesn't help much. Mixing and matching functions out of both listings cold help to narrow down the search, but some global labels don't match and it's late now...
BTW, there is a bug in the file: An init_waitqueue_head() is duplicated in init_hwif_data(), but that isn't the problem. -- Horst von Brand vonbrand@sleipnir.valparaiso.cl Casilla 9G, Viña del Mar, Chile +56 32 672616
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |