Andi Kleen wrote: > On Thu, Aug 23, 2007 at 01:03:18PM +0100, Andy Whitcroft wrote: >> It seems that this is a problem caused by the way we check for >> compiler options in x86_64. Each compiler flag is checked for >> individually and if available added to cflags-y, later that is >> added to CFLAGS. However, this means that each flag is checked >> in total isolation. On x86_64 (on this compiler at least) the >> -mpreferred-stack-boundary and -m{32,64} flags are actually mutually >> dependant, the alignment constraints vary based on the word size. >> This leads to the compile failure: >> >> # gcc -mpreferred-stack-boundary=3 -S -xc /dev/null -o FOO >> # echo $? >> 0 >> # gcc -m64 -mpreferred-stack-boundary=3 -S -xc /dev/null -o FOO >> /dev/null:1: error: -mpreferred-stack-boundary=3 is not between 4 and 12 >> # echo $? >> 1 >> >> In the main Makefile we always add each flag directly to CFLAGS >> which means we check them all in combination, perhaps this is >> prudent here also? Either way I suspect that changing the -m64 >> check to add itself directly to CFLAGS will fix this us. > > Ok that makes sense. Most people don't see it because they don't > need -m64. > > I fixed it up with > ftp://ftp.firstfloor.org/pub/ak/x86_64/quilt/patches/cflags-probe > and then > ftp://ftp.firstfloor.org/pub/ak/x86_64/quilt/patches/less-stack-alignment > (replacement for the mm patch) > > Can you test?
Sure, will do that now and let you know. -apw - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/