On Wed, 2010-03-17 at 14:52 +0100, Ralf Baechle wrote: > On Sat, Mar 13, 2010 at 12:34:16PM +0800, Wu Zhangjin wrote: > > > diff --git a/arch/mips/Makefile b/arch/mips/Makefile > > index 2f2eac2..5ae342e 100644 > > --- a/arch/mips/Makefile > > +++ b/arch/mips/Makefile > > @@ -135,7 +135,9 @@ cflags-$(CONFIG_CPU_LOONGSON2) += -Wa,--trap > > cflags-$(CONFIG_CPU_LOONGSON2E) += \ > > $(call cc-option,-march=loongson2e,-march=r4600) > > cflags-$(CONFIG_CPU_LOONGSON2F) += \ > > - $(call cc-option,-march=loongson2f,-march=r4600) > > + $(call cc-option,-march=loongson2f,-march=r4600) \ > > + $(call as-option,-Wa$(comma)-mfix-loongson2f-nop,) \ > > + $(call as-option,-Wa$(comma)-mfix-loongson2f-jump,) > > Shouldn't these options be used unconditionally? It seems a kernel build > should rather fail than a possibly unreliable kernel be built - possibly > even without the user noticing the problem. Thanks for your good suggestion! Just added a new kernel config option: CPU_LOONGSON2F_WORKAROUNDS to allow the users to enable the workarounds for the necessary loongson2f batches and it is enabled by default. And to force the users to use the right binutils with the workarounds, errors will be printed on the standard output with the following stuff: ifeq ($(call as-option,-Wa$(comma)-mfix-loongson2f-nop,),) $(error gcc does not support needed option -mfix-loongson2f-nop) else cflags-$(CONFIG_CPU_NOP_WORKAROUNDS) += -Wa $(comma)-mfix-loongson2f-nop endif Will resend the new patchset with your feedbacks asap. Regards, Wu Zhangjin