On Wed, Jul 02, 2014 at 04:21:06PM -0700, Randy Dunlap wrote: > On 07/02/14 15:08, akpm@xxxxxxxxxxxxxxxxxxxx wrote: > > The mm-of-the-moment snapshot 2014-07-02-15-07 has been uploaded to > > > > http://www.ozlabs.org/~akpm/mmotm/ > > > > mmotm-readme.txt says > > > > README for mm-of-the-moment: > > > > http://www.ozlabs.org/~akpm/mmotm/ > > > > This is a snapshot of my -mm patch queue. Uploaded at random hopefully > > more than once a week. > > Hi Andi, > > Here is an extract from 10 randconfig builds: > > > $ grep STACKPROTECTOR_STRONG config-r* > config-r8735:CONFIG_CC_STACKPROTECTOR_STRONG=y > config-r8736:CONFIG_CC_STACKPROTECTOR_STRONG=y > config-r8737:# CONFIG_CC_STACKPROTECTOR_STRONG is not set > config-r8738:# CONFIG_CC_STACKPROTECTOR_STRONG is not set > config-r8739:CONFIG_CC_STACKPROTECTOR_STRONG=y > config-r8740:CONFIG_CC_STACKPROTECTOR_STRONG=y > config-r8741:CONFIG_CC_STACKPROTECTOR_STRONG=y > config-r8742:# CONFIG_CC_STACKPROTECTOR_STRONG is not set > config-r8743:# CONFIG_CC_STACKPROTECTOR_STRONG is not set > config-r8744:# CONFIG_CC_STACKPROTECTOR_STRONG is not set > > > but the captured output for each one says: > > grep STACKPROTECTOR_STRONG build*.out > build-r8735.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8736.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8736.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8737.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8739.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8740.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8740.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8741.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8741.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > build-r8742.out:/local/lnx/MM/mmotm-2014-0702-1507/Makefile:662: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler > > > then the build goes on to produce many errors like this one: > > CC init/do_mounts.o > gcc: error: unrecognized command line option '-fstack-protector-strong' > > > Can you explain this, please? or even better yet, fix it. That's the code ifdef CONFIG_CC_STACKPROTECTOR_STRONG stackp-flag := -fstack-protector-strong ifeq ($(call cc-option, $(stackp-flag)),) $(warning Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: \ -fstack-protector-strong not supported by compiler) endif else # Force off for distro compilers that enable stack protector by default. stackp-flag := $(call cc-option, -fno-stack-protector) endif endif KBUILD_CFLAGS += $(stackp-flag) So -fstack-protector-strong itself is never protected by a cc-option call. You could add it to the stack-flag line, then it would only warn. stackp-flag := $(call cc-option, -fstack-protector-strong) It's hard to tell what the original author wanted, perhaps they wanted it to error out. It looks intentional. Clearly they didn't think of randconfig though. Or get a compiler that supports stack protection? -Andi -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html