public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* compile error for 2.6.18-git19 with CONFIG_RWSEM_GENERIC_SPINLOCK=y
@ 2006-10-03 19:20 Klaus Knopper
  2006-10-05  8:16 ` [PATCH] " Jarek Poplawski
  0 siblings, 1 reply; 2+ messages in thread
From: Klaus Knopper @ 2006-10-03 19:20 UTC (permalink / raw)
  To: linux-kernel

Hello everyone,

Since the "reporting bugs" FAQ told me to post here in case I can't
identify the right person to ask, and have not found any mention of this
problem on the list and anywhere else yet, I do.

Problem description: Compiling 2.6.18-git19 (gcc-3.3 and 4.1) fails for
processor family i386 (when CONFIG_RWSEM_GENERIC_SPINLOCK=y) is set,
with

arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_down_read_failed':
arch/i386/lib/semaphore.S:(.sched.text+0x5f): undefined reference to `rwsem_down_read_failed'
arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_down_write_failed':
arch/i386/lib/semaphore.S:(.sched.text+0x6a): undefined reference to `rwsem_down_write_failed'
arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_wake':
arch/i386/lib/semaphore.S:(.sched.text+0x76): undefined reference to `rwsem_wake'
arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_downgrade_wake':
arch/i386/lib/semaphore.S:(.sched.text+0x7f): undefined reference to `rwsem_downgrade_wake'

This option is present in .config when setting processor family to
plain "i386" in make menuconfig.

Using CONFIG_RWSEM_XCHGADD_ALGORITHM=y INSTEAD of
CONFIG_RWSEM_GENERIC_SPINLOCK=y (i486 and up) kind of "fixes" the
compile error, but I'm not sure if the resulting code would still run on
a real i386.

This problem also exists for ealier gits, but I can't tell exactly when
it started.

Regards
-Klaus Knopper
PS: Please CC any answers to me, since I'm not a subscriber to this list.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] Re: compile error for 2.6.18-git19 with CONFIG_RWSEM_GENERIC_SPINLOCK=y
  2006-10-03 19:20 compile error for 2.6.18-git19 with CONFIG_RWSEM_GENERIC_SPINLOCK=y Klaus Knopper
@ 2006-10-05  8:16 ` Jarek Poplawski
  0 siblings, 0 replies; 2+ messages in thread
From: Jarek Poplawski @ 2006-10-05  8:16 UTC (permalink / raw)
  To: Klaus Knopper; +Cc: Andi Kleen, linux-kernel

On 03-10-2006 21:20, Klaus Knopper wrote:
> Hello everyone,
> 
> Since the "reporting bugs" FAQ told me to post here in case I can't
> identify the right person to ask, and have not found any mention of this
> problem on the list and anywhere else yet, I do.
> 
> Problem description: Compiling 2.6.18-git19 (gcc-3.3 and 4.1) fails for
> processor family i386 (when CONFIG_RWSEM_GENERIC_SPINLOCK=y) is set,
> with
> 
> arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_down_read_failed':
> arch/i386/lib/semaphore.S:(.sched.text+0x5f): undefined reference to `rwsem_down_read_failed'
> arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_down_write_failed':
> arch/i386/lib/semaphore.S:(.sched.text+0x6a): undefined reference to `rwsem_down_write_failed'
> arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_wake':
> arch/i386/lib/semaphore.S:(.sched.text+0x76): undefined reference to `rwsem_wake'
> arch/i386/lib/lib.a(semaphore.o): In function `call_rwsem_downgrade_wake':
> arch/i386/lib/semaphore.S:(.sched.text+0x7f): undefined reference to `rwsem_downgrade_wake'
> 
> This option is present in .config when setting processor family to
> plain "i386" in make menuconfig.
> 
> Using CONFIG_RWSEM_XCHGADD_ALGORITHM=y INSTEAD of
> CONFIG_RWSEM_GENERIC_SPINLOCK=y (i486 and up) kind of "fixes" the
> compile error, but I'm not sure if the resulting code would still run on
> a real i386.
> 
> This problem also exists for ealier gits, but I can't tell exactly when
> it started.
> 
> Regards
> -Klaus Knopper
> PS: Please CC any answers to me, since I'm not a subscriber to this list.

It looks there is only one person in the world who remembers i386!

I attach my patch proposal.

Best regards,

Jarek P.


diff -Nurp linux-2.6.18-rc1-/arch/i386/lib/semaphore.S linux-2.6.18-rc1/arch/i386/lib/semaphore.S
--- linux-2.6.18-rc1-/arch/i386/lib/semaphore.S	2006-10-05 09:25:44.000000000 +0200
+++ linux-2.6.18-rc1/arch/i386/lib/semaphore.S	2006-10-05 10:01:01.000000000 +0200
@@ -153,6 +153,7 @@ ENTRY(__read_lock_failed)
 #endif
 
 /* Fix up special calling conventions */
+#ifdef CONFIG_RWSEM_XCHGADD_ALGORITHM
 ENTRY(call_rwsem_down_read_failed)
 	CFI_STARTPROC
 	push %ecx
@@ -214,3 +215,4 @@ ENTRY(call_rwsem_downgrade_wake)
 	CFI_ENDPROC
 	END(call_rwsem_downgrade_wake)
 
+#endif

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-10-05  8:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-03 19:20 compile error for 2.6.18-git19 with CONFIG_RWSEM_GENERIC_SPINLOCK=y Klaus Knopper
2006-10-05  8:16 ` [PATCH] " Jarek Poplawski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox