[PATCH -RT] fix i386 RWSEM_GENERIC_SPINLOCK (was: Re: 2.6.15-rc5-rt1 will not compile)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2005-12-13 at 09:15 +0100, Ingo Molnar wrote:
> * Steven Rostedt <[email protected]> wrote:
> 
> > Looks like Ingo has a generic rwsem to work with, but if your arch 
> > turns on CONFIG_RWSEM_XCHGADD_ALGORITHM, it will compile lib/rwsem.c 
> > which won't compile as you've seen.
> > 
> > Try out this patch: I changed the Makefile, instead of going to each 
> > and every arch and change its Kconfig to do it properly.
> 
> i rather went for fixing up the Kconfig, that makes things easier to 
> follow. If it turns out to be lots of duplicate stuff we could create a 
> lib/Kconfig.rwsem that architectures can include.
> 

OK, scratch my last patch.  I'll submit this arch per arch.  Starting
with i386.  Each arch does it differently, so a generic lib/Konfig.rwsem
wouldn't work, since each arch has a different dependency.

-- Steve

Quick note:

I originally had:  default y if !(RWSEM_GENERIC_SPINLOCK || PREEMPT_RT || M386)
But then I realized that RWSEM_GENERIC_SPINLOCK was dependent on 
(PREEMPT_RT || M386) so I thought it was redundant to keep the three,
since RWSEM_GENERIC_SPINLOCK itself satisfies the dependencies.


Index: linux-2.6.15-rc5-rt1/arch/i386/Kconfig
===================================================================
--- linux-2.6.15-rc5-rt1.orig/arch/i386/Kconfig	2005-12-12 16:31:25.000000000 -0500
+++ linux-2.6.15-rc5-rt1/arch/i386/Kconfig	2005-12-13 09:14:33.000000000 -0500
@@ -245,8 +245,7 @@
 
 config RWSEM_XCHGADD_ALGORITHM
 	bool
-	depends on !RWSEM_GENERIC_SPINLOCK && !PREEMPT_RT
-	default y
+	default y if !RWSEM_GENERIC_SPINLOCK
 
 config X86_UP_APIC
 	bool "Local APIC support on uniprocessors"
Index: linux-2.6.15-rc5-rt1/arch/i386/Kconfig.cpu
===================================================================
--- linux-2.6.15-rc5-rt1.orig/arch/i386/Kconfig.cpu	2005-12-12 16:31:20.000000000 -0500
+++ linux-2.6.15-rc5-rt1/arch/i386/Kconfig.cpu	2005-12-13 09:10:54.000000000 -0500
@@ -229,11 +229,6 @@
 	depends on M386
 	default y
 
-config RWSEM_XCHGADD_ALGORITHM
-	bool
-	depends on !M386
-	default y
-
 config GENERIC_CALIBRATE_DELAY
 	bool
 	default y
Index: linux-2.6.15-rc5-rt1/arch/i386/defconfig
===================================================================
--- linux-2.6.15-rc5-rt1.orig/arch/i386/defconfig	2005-10-27 20:02:08.000000000 -0400
+++ linux-2.6.15-rc5-rt1/arch/i386/defconfig	2005-12-13 09:05:21.000000000 -0500
@@ -81,7 +81,7 @@
 CONFIG_X86_CMPXCHG=y
 CONFIG_X86_XADD=y
 CONFIG_X86_L1_CACHE_SHIFT=7
-CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
 CONFIG_X86_WP_WORKS_OK=y
 CONFIG_X86_INVLPG=y
 CONFIG_X86_BSWAP=y


-
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/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux