public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Brian Gerst <bgerst@didntduck.org>
To: Adrian Bunk <bunk@kernel.org>
Cc: Sam Ravnborg <sam@ravnborg.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 03/10] x86: arch/x86/Kconfig.cpu unification
Date: Tue, 06 Nov 2007 02:10:27 -0500	[thread overview]
Message-ID: <47301363.9030303@didntduck.org> (raw)
In-Reply-To: <20071106025253.GF3444@stusta.de>

Adrian Bunk wrote:
> On Tue, Nov 06, 2007 at 03:46:30AM +0100, Sam Ravnborg wrote:
>> On Mon, Nov 05, 2007 at 07:53:39PM -0500, Brian Gerst wrote:
>>> Sam Ravnborg wrote:
>>>> Move all CPU definitions to Kconfig.cpu
>>> This patch causes build failure on x86_64:
>>>
>>> lib/rwsem.c: In function ‘__init_rwsem’:
>>> lib/rwsem.c:24: error: ‘struct rw_semaphore’ has no member named ‘count’
>>> lib/rwsem.c:24: error: ‘RWSEM_UNLOCKED_VALUE’ undeclared (first use in
>>> this function)
>>> lib/rwsem.c:24: error: (Each undeclared identifier is reported only once
>>> lib/rwsem.c:24: error: for each function it appears in.)
>>> lib/rwsem.c: In function ‘__rwsem_do_wake’:
>>> lib/rwsem.c:64: error: implicit declaration of function
>>> ‘rwsem_atomic_update’
>>> lib/rwsem.c:64: error: ‘RWSEM_ACTIVE_BIAS’ undeclared (first use in this
>>> function)
>>> lib/rwsem.c:66: error: ‘RWSEM_ACTIVE_MASK’ undeclared (first use in this
>>> function)
>>> lib/rwsem.c:115: error: ‘RWSEM_WAITING_BIAS’ undeclared (first use in
>>> this function)
>>> lib/rwsem.c:120: error: implicit declaration of function ‘rwsem_atomic_add’
>>> lib/rwsem.c: In function ‘rwsem_down_failed_common’:
>>> lib/rwsem.c:169: error: ‘RWSEM_ACTIVE_MASK’ undeclared (first use in
>>> this function)
>>> lib/rwsem.c: In function ‘rwsem_down_read_failed’:
>>> lib/rwsem.c:197: error: ‘RWSEM_WAITING_BIAS’ undeclared (first use in
>>> this function)
>>> lib/rwsem.c:197: error: ‘RWSEM_ACTIVE_BIAS’ undeclared (first use in
>>> this function)
>>> lib/rwsem.c: In function ‘rwsem_down_write_failed’:
>>> lib/rwsem.c:210: error: ‘RWSEM_ACTIVE_BIAS’ undeclared (first use in
>>> this function)
>>>
>>> git bisect gives:
>>> 55432d383871d127685d78f94e0ad60307dcc0e9 is first bad commit
>>> commit 55432d383871d127685d78f94e0ad60307dcc0e9
>>> Author: Sam Ravnborg <sam@ravnborg.org>
>>> Date:   Thu Nov 1 21:54:39 2007 +0100
>>>
>>>     x86: arch/x86/Kconfig.cpu unification
>> Seems that a default value fail to change value when we shift
>> from 32 to 64 bit. I have it reproduced here.
>> Will look at it tonight.
> 
> The problem is that you source arch/x86/Kconfig.cpu from 
> arch/x86/Kconfig.x86_64 but didn't give RWSEM_XCHGADD_ALGORITHM 
> the required dependency on X86_32.
> 
>> 	Sam
> 
> cu
> Adrian
> 

The quick fix is to move the RWSEM_XCHGADD_ALGORITHM and
RWSEM_XCHGADD_ALGORITHM defines from Kconfig.cpu to Kconfig.i386.

Looking at this closer, the 64-bit code has been using the generic
spinlock-based implementation, while the 32-bit code uses an optimized
version on all but true 386 cpus.  The 64-bit code should be adapted to
use the optimized version at some point.

  reply	other threads:[~2007-11-06  7:10 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-03 23:51 [PATCH 01/10] x86: unification of cfufreq/Kconfig Sam Ravnborg
2007-11-03 23:51 ` [PATCH 02/10] x86: start unification of arch/x86/Kconfig.* Sam Ravnborg
2007-11-03 23:51   ` [PATCH 03/10] x86: arch/x86/Kconfig.cpu unification Sam Ravnborg
2007-11-03 23:51     ` [PATCH 04/10] x86: add X86_32 dependency to i386 specific symbols in Kconfig.i386 Sam Ravnborg
2007-11-03 23:51       ` [PATCH 05/10] x86: add X86_64 dependency to x86_64 specific symbols in Kconig.x86_64 Sam Ravnborg
2007-11-03 23:51         ` [PATCH 06/10] x86: copy x86_64 specific Kconfig symbols to Kconifg.i386 Sam Ravnborg
2007-11-03 23:51           ` [PATCH 07/10] x86: add remaning bits from x86_64 to Kconfig.i386 Sam Ravnborg
2007-11-03 23:51             ` [PATCH 08/10] x86: combine all config options with prompts in Kconfig Sam Ravnborg
2007-11-03 23:51               ` [PATCH 09/10] x86: select i386 or x86_64 at config time Sam Ravnborg
2007-11-03 23:51                 ` [PATCH 10/10] x86: enable make ARCH=x86 Sam Ravnborg
2007-11-06  0:53     ` [PATCH 03/10] x86: arch/x86/Kconfig.cpu unification Brian Gerst
2007-11-06  2:46       ` Sam Ravnborg
2007-11-06  2:52         ` Adrian Bunk
2007-11-06  7:10           ` Brian Gerst [this message]
2007-11-04  1:44   ` [PATCH 02/10] x86: start unification of arch/x86/Kconfig.* Adrian Bunk
2007-11-04 18:07     ` Sam Ravnborg
2007-11-04  1:28 ` [PATCH 01/10] x86: unification of cfufreq/Kconfig Adrian Bunk
2007-11-04  8:35   ` Sam Ravnborg
2007-11-06  7:38 ` Dave Jones
2007-11-06  8:13   ` Sam Ravnborg
2007-11-06 10:49     ` Adrian Bunk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47301363.9030303@didntduck.org \
    --to=bgerst@didntduck.org \
    --cc=bunk@kernel.org \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=sam@ravnborg.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox