From: Andi Kleen Date: Sat, 23 Jun 2007 00:29:23 +0000 (+0200) Subject: i386: Make CMPXCHG64 only dependent on PAE X-Git-Tag: v2.6.22-rc6~36 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=9d9bbd4d247a674deb43565582151acdc22e90d1;p=linux-2.6-omap-h63xx.git i386: Make CMPXCHG64 only dependent on PAE It is only used for PAE kernels in set_64bit. The problem is that due to a old Windows bug many CPUs need magic MSRs to enable CMPXCHG64, and we can't do that nicely early enough before it is potentially used. But since we only need it in PAE kernels so only force the checking for CMPXCHG65 with PAE. This fixes a boot failure on Transmeta Crusoe Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds --- diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig index 8770a5d0b14..d2f6a247414 100644 --- a/arch/i386/Kconfig +++ b/arch/i386/Kconfig @@ -541,7 +541,7 @@ config HIGHMEM4G config HIGHMEM64G bool "64GB" - depends on X86_CMPXCHG64 + depends on !M386 && !M486 help Select this if you have a 32-bit processor and more than 4 gigabytes of physical RAM. diff --git a/arch/i386/Kconfig.cpu b/arch/i386/Kconfig.cpu index d7f6fb0b30f..5c95ceb7f12 100644 --- a/arch/i386/Kconfig.cpu +++ b/arch/i386/Kconfig.cpu @@ -299,7 +299,7 @@ config X86_POPAD_OK config X86_CMPXCHG64 bool - depends on !M386 && !M486 + depends on X86_PAE default y config X86_ALIGNMENT_16