Re: K7/Athlon Optimization Causes Build Fail on Kernel 3.3 i686

From: Matt Fleming
Date: Thu Mar 29 2012 - 04:14:33 EST


On Thu, 2012-03-29 at 09:48 +0200, Borislav Petkov wrote:
> On Wed, Mar 28, 2012 at 07:27:59PM +0200, Borislav Petkov wrote:
> > On Wed, Mar 28, 2012 at 10:13:31AM -0700, Randy Dunlap wrote:
> > > > in your config. K7 and EFI are from different epochs anyway and cannot
> > > > obviously be enabled both on the same system with the current Kconfig
> > > > for EFI.
> >
> > > but the Kconfig files shouldn't allow such a failing .config to be
> > > created, or the Makefiles are inadequate, or <mumble something>....
> >
> > Yeah, something like the following:
> >
> > config MK7
> > bool "Athlon/Duron/K7"
> > depends on X86_32 && !EFI_STUB
> >
> > or the other way around:
> >
> > config EFI_STUB
> > bool "EFI stub support"
> > depends on EFI && !MK7
>
> Trevor,
>
> can you apply the following patch and retest please? You shouldn't
> be able to select EFI_STUB and K7 optimizations at the same time in
> Kconfig.
>
> Thanks.
>
> --
> From 24e9ee38516a770a275dde217c250cf8b78521d5 Mon Sep 17 00:00:00 2001
> From: Borislav Petkov <bp@xxxxxxxxx>
> Date: Thu, 29 Mar 2012 09:39:51 +0200
> Subject: [PATCH] AMD, K7: Fix compilation error when EFI_STUG is enabled
>
> Trevor Turner reported that building the 3.3 kernel on his K7 box fails.
> Reproducing the issue locally got us also the exact build error:
>
> arch/x86/boot/compressed/eboot.o: In function `efi_main':
> eboot.c:(.text+0x1530): undefined reference to `_mmx_memcpy'
> eboot.c:(.text+0x17d0): undefined reference to `_mmx_memcpy'
> make[2]: *** [arch/x86/boot/compressed/vmlinux] Error 1
> make[1]: *** [arch/x86/boot/compressed/vmlinux] Error 2
> make[1]: *** Waiting for unfinished jobs....
>
> due to the fact that K7 has special MMX memcpy routines which EFI_STUB
> uses through memcpy but is not linked against them thus the build
> failure.
>
> Instead of making this work, we decided to make EFI_STUB and K7 mutually
> exclusive since they're from different epochs anyway. The patch below
> fixes that.
>
> Reported-by: Trevor Turner <turn3r.tr3v0r@xxxxxxxxx>
> Cc: Matt Fleming <matt.fleming@xxxxxxxxx>
> Signed-off-by: Borislav Petkov <bp@xxxxxxxxx>
> ---
> arch/x86/Kconfig | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)

Hmm... I think what might make more sense is to make EFI (not EFI_STUB)
depend on !MK7, since I doubt people actually need both MK7 and any EFI
firmware support.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/