H.J. Would the approach below help debug an issue with why ia64 kernel is completely[*] broken with gcc-4.7.3, but works with gcc-4.5.4? If not - do you have a better suggestion on how to narrow the scope of the problem. -Tony [*] No output to serial console at all - not even with the ia64 early console enabled. -----Original Message----- From: Luck, Tony Sent: Tuesday, January 21, 2014 4:54 PM To: 'Dennis Schridde' Cc: Yu, Fenghua; linux-ia64@xxxxxxxxxxxxxxx Subject: RE: Kernel compiled with gcc-4.6+ fails to boot on ia64 >> I'd start off with using the old compiler >> for arch/ia64/kernel/* (perhaps arch/ia64/mm/* too) and the new >> compiler for everything else. > > Thanks for your suggestion. How do I do that properly? > I think the following will not work, because changing CC will cause > arch/ia64/kernel to be rebuild, right? > # make -C arch/ia64/kernel CC=gcc-4.7.3 > # make CC=gcc-4.5.4 yes - you'd have to fake Kbuild/make into thinking you were using the same compiler all the time. I don't know if there is a "proper" way to do that. I'd do it by writing a shell script "mycc" that in pseudo-code looks like: --------- #!/bin/bash USECC=gcc-4.7.3 # Look to see if we have a ".c" file argument on a special list for i do case "$i" in *.c) if grep -s "^$i$" ~/special then USECC=gcc4.5.4 fi ;; esac done $USECC "$@" ---------- Then start with: $ find arch/ia64/kernel arch/ia64/mm -name "*.c" > ~/special $ make CC=mycc [Warning: I've never tried anything like this] > And what would you suggest to add after ia64/kernel and ia64/mm? I do > not know much about the parts of the kernel that run at this early > stage. Not a clue. If My guess that the problem is in those arch specific files, then you have a list of ~64 to play with ... bisection would get you to one (if just one is the root of the problem) in six builds. If I'm wrong ... well the full list of files built in a typical configuration is a couple of thousand. So eleven builds. If the problem is in a static inline" - well none of this will help :-( -Tony -- To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html