gcc-2.96-33 compiles kernel 2.4.0-test5-pre1 but when booting it hangs after 'Starting kswapd v1.6'. I tried with egcs-1.1.2 and it boots just fine, so the problem is probably a gcc issue, not a kernel one. I inserted various 'printk("coucou\n")' in the code and it appears that the problem occurs in linux/init/main.c lines 615--624: static void __init do_initcalls(void) { initcall_t *call; call = &__initcall_start; do { (*call)(); call++; } while (call < &__initcall_end); } The first iteration, which threads kswapd, is correctly executed. In the second, the computer hangs after (*call)(). Normally, if compiled with egcs, the kernel outputs 'Detected PS/2 Mouse Port.' so it is possible that the build problem is somewhere in the PS/2 driver. Also note that kernel 2.4.0-test2 did not have this problem whereas 2.4.0-test4-pre6 did. I could not try with test3 because gcc was unable to compile it.
Am just testing new gcc fixes if the kernel works with them
gcc in the current distribution builds a working kernel (last tried 2.4.0-test6-pre9)