linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonas Bonn <jonas@southpole.se>
To: David Howells <dhowells@redhat.com>
Cc: linux-arch@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>,
	linux@openrisc.net, linux-kernel@vger.kernel.org,
	paul.gortmaker@windriver.com, hpa@zytor.com,
	torvalds@linux-foundation.org
Subject: Re: [PATCH 17/35] Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h [ver #2]
Date: Wed, 14 Mar 2012 15:43:02 +0100	[thread overview]
Message-ID: <1331736182.5104.74.camel@jerome.southpole.se> (raw)
In-Reply-To: <11556.1331723400@redhat.com>


On Wed, 2012-03-14 at 11:10 +0000, David Howells wrote:
> Jonas Bonn <jonas.bonn@gmail.com> wrote:
> 
> > --- a/include/asm-generic/bitops/atomic.h
> > +++ b/include/asm-generic/bitops/atomic.h
> > @@ -2,7 +2,6 @@
> >  #define _ASM_GENERIC_BITOPS_ATOMIC_H_
> > 
> >  #include <asm/types.h>
> > -#include <asm/system.h>
> > 
> >  #ifdef CONFIG_SMP
> >  #include <asm/spinlock.h>
> 
> That's actually done in patch 33.  I wouldn't want to remove that if I can
> avoid it until after all the arches have been altered.

OK, fair enough.

Am I right in thinking that OpenRISC is the only architecture the
depends on the changes in asm-generic?  If yes, I could take this series
and hold off on the pull request until after the rest of your changes go
in.  Either way, it seems that OpenRISC will break for a bit...

The error I get while building (if asm/system.h is included) is a
circular dependency that I don't see that I can easily resolve:

  CC      arch/openrisc/kernel/asm-offsets.s
In file included from include/asm-generic/switch_to.h:17:0,
                 from arch/openrisc/include/generated/asm/switch_to.h:1,

from /home/jonas/openrisc/linux/arch/openrisc/include/asm/system.h:5,
                 from include/asm-generic/bitops/atomic.h:5,

from /home/jonas/openrisc/linux/arch/openrisc/include/asm/bitops.h:55,
                 from include/linux/bitops.h:22,
                 from include/linux/signal.h:38,
                 from arch/openrisc/kernel/asm-offsets.c:26:
include/linux/thread_info.h: In function ‘set_ti_thread_flag’:
include/linux/thread_info.h:64:2: error: implicit declaration of
function ‘set_bit’
include/linux/thread_info.h: In function ‘clear_ti_thread_flag’:
include/linux/thread_info.h:69:2: error: implicit declaration of
function ‘clear_bit’
include/linux/thread_info.h: In function ‘test_and_set_ti_thread_flag’:
include/linux/thread_info.h:74:2: error: implicit declaration of
function ‘test_and_set_bit’
include/linux/thread_info.h: In function
‘test_and_clear_ti_thread_flag’:
include/linux/thread_info.h:79:2: error: implicit declaration of
function ‘test_and_clear_bit’
include/linux/thread_info.h: In function ‘test_ti_thread_flag’:
include/linux/thread_info.h:84:2: error: implicit declaration of
function ‘test_bit’
In file included
from /home/jonas/openrisc/linux/arch/openrisc/include/asm/bitops.h:55:0,
                 from include/linux/bitops.h:22,
                 from include/linux/signal.h:38,
                 from arch/openrisc/kernel/asm-offsets.c:26:
include/asm-generic/bitops/atomic.h: At top level:
include/asm-generic/bitops/atomic.h:65:20: warning: conflicting types
for ‘set_bit’
include/asm-generic/bitops/atomic.h:65:20: error: static declaration of
‘set_bit’ follows non-static declaration
include/linux/thread_info.h:64:2: note: previous implicit declaration of
‘set_bit’ was here
include/asm-generic/bitops/atomic.h:86:20: warning: conflicting types
for ‘clear_bit’
include/asm-generic/bitops/atomic.h:86:20: error: static declaration of
‘clear_bit’ follows non-static declaration
include/linux/thread_info.h:69:2: note: previous implicit declaration of
‘clear_bit’ was here
include/asm-generic/bitops/atomic.h:127:19: error: static declaration of
‘test_and_set_bit’ follows non-static declaration
include/linux/thread_info.h:74:9: note: previous implicit declaration of
‘test_and_set_bit’ was here
include/asm-generic/bitops/atomic.h:151:19: error: static declaration of
‘test_and_clear_bit’ follows non-static declaration
include/linux/thread_info.h:79:9: note: previous implicit declaration of
‘test_and_clear_bit’ was here
In file included
from /home/jonas/openrisc/linux/arch/openrisc/include/asm/bitops.h:56:0,
                 from include/linux/bitops.h:22,
                 from include/linux/signal.h:38,
                 from arch/openrisc/kernel/asm-offsets.c:26:
include/asm-generic/bitops/non-atomic.h:103:19: error: static
declaration of ‘test_bit’ follows non-static declaration
include/linux/thread_info.h:84:9: note: previous implicit declaration of
‘test_bit’ was here
make[1]: *** [arch/openrisc/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2

/Jonas

_______________________________________________
Linux mailing list
Linux@lists.openrisc.net
http://lists.openrisc.net/listinfo/linux

WARNING: multiple messages have this Message-ID (diff)
From: Jonas Bonn <jonas@southpole.se>
To: David Howells <dhowells@redhat.com>
Cc: linux-arch@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>,
	linux@openrisc.net, linux-kernel@vger.kernel.org,
	paul.gortmaker@windriver.com, hpa@zytor.com,
	torvalds@linux-foundation.org
Subject: Re: [ORLinux] [PATCH 17/35] Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h [ver #2]
Date: Wed, 14 Mar 2012 15:43:02 +0100	[thread overview]
Message-ID: <1331736182.5104.74.camel@jerome.southpole.se> (raw)
Message-ID: <20120314144302.mqrQOy9vDr23OIMhRdbQ1kcgirf1CHe9KLN7rbZrfnc@z> (raw)
In-Reply-To: <11556.1331723400@redhat.com>


On Wed, 2012-03-14 at 11:10 +0000, David Howells wrote:
> Jonas Bonn <jonas.bonn@gmail.com> wrote:
> 
> > --- a/include/asm-generic/bitops/atomic.h
> > +++ b/include/asm-generic/bitops/atomic.h
> > @@ -2,7 +2,6 @@
> >  #define _ASM_GENERIC_BITOPS_ATOMIC_H_
> > 
> >  #include <asm/types.h>
> > -#include <asm/system.h>
> > 
> >  #ifdef CONFIG_SMP
> >  #include <asm/spinlock.h>
> 
> That's actually done in patch 33.  I wouldn't want to remove that if I can
> avoid it until after all the arches have been altered.

OK, fair enough.

Am I right in thinking that OpenRISC is the only architecture the
depends on the changes in asm-generic?  If yes, I could take this series
and hold off on the pull request until after the rest of your changes go
in.  Either way, it seems that OpenRISC will break for a bit...

The error I get while building (if asm/system.h is included) is a
circular dependency that I don't see that I can easily resolve:

  CC      arch/openrisc/kernel/asm-offsets.s
In file included from include/asm-generic/switch_to.h:17:0,
                 from arch/openrisc/include/generated/asm/switch_to.h:1,

from /home/jonas/openrisc/linux/arch/openrisc/include/asm/system.h:5,
                 from include/asm-generic/bitops/atomic.h:5,

from /home/jonas/openrisc/linux/arch/openrisc/include/asm/bitops.h:55,
                 from include/linux/bitops.h:22,
                 from include/linux/signal.h:38,
                 from arch/openrisc/kernel/asm-offsets.c:26:
include/linux/thread_info.h: In function ‘set_ti_thread_flag’:
include/linux/thread_info.h:64:2: error: implicit declaration of
function ‘set_bit’
include/linux/thread_info.h: In function ‘clear_ti_thread_flag’:
include/linux/thread_info.h:69:2: error: implicit declaration of
function ‘clear_bit’
include/linux/thread_info.h: In function ‘test_and_set_ti_thread_flag’:
include/linux/thread_info.h:74:2: error: implicit declaration of
function ‘test_and_set_bit’
include/linux/thread_info.h: In function
‘test_and_clear_ti_thread_flag’:
include/linux/thread_info.h:79:2: error: implicit declaration of
function ‘test_and_clear_bit’
include/linux/thread_info.h: In function ‘test_ti_thread_flag’:
include/linux/thread_info.h:84:2: error: implicit declaration of
function ‘test_bit’
In file included
from /home/jonas/openrisc/linux/arch/openrisc/include/asm/bitops.h:55:0,
                 from include/linux/bitops.h:22,
                 from include/linux/signal.h:38,
                 from arch/openrisc/kernel/asm-offsets.c:26:
include/asm-generic/bitops/atomic.h: At top level:
include/asm-generic/bitops/atomic.h:65:20: warning: conflicting types
for ‘set_bit’
include/asm-generic/bitops/atomic.h:65:20: error: static declaration of
‘set_bit’ follows non-static declaration
include/linux/thread_info.h:64:2: note: previous implicit declaration of
‘set_bit’ was here
include/asm-generic/bitops/atomic.h:86:20: warning: conflicting types
for ‘clear_bit’
include/asm-generic/bitops/atomic.h:86:20: error: static declaration of
‘clear_bit’ follows non-static declaration
include/linux/thread_info.h:69:2: note: previous implicit declaration of
‘clear_bit’ was here
include/asm-generic/bitops/atomic.h:127:19: error: static declaration of
‘test_and_set_bit’ follows non-static declaration
include/linux/thread_info.h:74:9: note: previous implicit declaration of
‘test_and_set_bit’ was here
include/asm-generic/bitops/atomic.h:151:19: error: static declaration of
‘test_and_clear_bit’ follows non-static declaration
include/linux/thread_info.h:79:9: note: previous implicit declaration of
‘test_and_clear_bit’ was here
In file included
from /home/jonas/openrisc/linux/arch/openrisc/include/asm/bitops.h:56:0,
                 from include/linux/bitops.h:22,
                 from include/linux/signal.h:38,
                 from arch/openrisc/kernel/asm-offsets.c:26:
include/asm-generic/bitops/non-atomic.h:103:19: error: static
declaration of ‘test_bit’ follows non-static declaration
include/linux/thread_info.h:84:9: note: previous implicit declaration of
‘test_bit’ was here
make[1]: *** [arch/openrisc/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2

/Jonas


  reply	other threads:[~2012-03-14 14:43 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-12 23:36 [RFC][PATCH 00/35] Disintegrate and kill asm/system.h [ver #2] David Howells
2012-03-12 23:36 ` [PATCH 01/35] Disintegrate asm/system.h for X86 " David Howells
2012-03-12 23:36   ` David Howells
2012-03-12 23:36 ` [PATCH 02/35] Disintegrate asm/system.h for Alpha " David Howells
2012-03-12 23:36   ` David Howells
2012-03-12 23:36 ` [PATCH 03/35] Disintegrate asm/system.h for ARM " David Howells
2012-03-12 23:36 ` [PATCH 04/35] Disintegrate asm/system.h for AVR32 " David Howells
2012-03-12 23:36   ` David Howells
2012-03-12 23:36 ` [PATCH 05/35] Disintegrate asm/system.h for Blackfin " David Howells
2012-03-12 23:36   ` David Howells
2012-03-13  4:44   ` Bob Liu
2012-03-12 23:37 ` [PATCH 06/35] Disintegrate asm/system.h for C6X " David Howells
2012-03-12 23:37   ` David Howells
2012-03-14 12:29   ` Mark Salter
2012-03-14 12:29     ` Mark Salter
2012-03-14 13:29     ` [Linux-c6x-dev] " Jacquiot, Aurelien
2012-03-14 13:39       ` Mark Salter
2012-03-15 17:41     ` David Howells
2012-03-15 17:41       ` David Howells
2012-03-15 17:41   ` David Howells
2012-03-12 23:37 ` [PATCH 07/35] Disintegrate asm/system.h for CRIS " David Howells
2012-03-12 23:37   ` David Howells
2012-03-13  9:16   ` Jesper Nilsson
2012-03-12 23:37 ` [PATCH 08/35] Disintegrate asm/system.h for FRV " David Howells
2012-03-12 23:37   ` David Howells
2012-03-12 23:37 ` [PATCH 09/35] Disintegrate asm/system.h for H8300 " David Howells
2012-03-12 23:37   ` David Howells
2012-03-12 23:37 ` [PATCH 10/35] Disintegrate asm/system.h for Hexagon " David Howells
2012-03-12 23:37   ` David Howells
2012-03-13  9:16   ` Arnd Bergmann
2012-03-13  9:16     ` Arnd Bergmann
2012-03-13 10:01   ` David Howells
2012-03-13 10:01     ` David Howells
2012-03-13 11:33     ` Arnd Bergmann
2012-03-13 11:33       ` Arnd Bergmann
2012-03-13 16:31     ` Richard Kuo
2012-03-13 18:34   ` Richard Kuo
2012-03-13 18:34     ` Richard Kuo
2012-03-12 23:37 ` [PATCH 11/35] Disintegrate asm/system.h for IA64 " David Howells
2012-03-12 23:38 ` [PATCH 12/35] Disintegrate asm/system.h for M32R " David Howells
2012-03-12 23:38   ` David Howells
2012-03-12 23:38 ` [PATCH 13/35] Disintegrate asm/system.h for M68K " David Howells
2012-03-14 12:07   ` Greg Ungerer
2012-03-15 20:18   ` David Howells
2012-03-15 20:18     ` David Howells
2012-03-16  1:05     ` Greg Ungerer
2012-03-16  1:05       ` Greg Ungerer
2012-03-16 13:42   ` David Howells
2012-03-16 13:42     ` David Howells
2012-03-19  2:24     ` Greg Ungerer
2012-03-19 10:49     ` David Howells
2012-03-19 11:48       ` Greg Ungerer
2012-03-19 11:48         ` Greg Ungerer
2012-03-12 23:38 ` [PATCH 14/35] Disintegrate asm/system.h for Microblaze " David Howells
2012-03-12 23:38 ` [PATCH 15/35] Disintegrate asm/system.h for MIPS " David Howells
2012-03-12 23:38   ` David Howells
2012-03-12 23:38 ` [PATCH 16/35] Disintegrate asm/system.h for MN10300 " David Howells
2012-03-12 23:38   ` David Howells
2012-03-12 23:38 ` [PATCH 17/35] Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h " David Howells
2012-03-12 23:38   ` David Howells
2012-03-13  9:00   ` Arnd Bergmann
2012-03-13 17:26     ` [ORLinux] " Jonas Bonn
2012-03-14 11:10     ` David Howells
2012-03-14 14:43       ` Jonas Bonn [this message]
2012-03-14 14:43         ` Jonas Bonn
2012-03-14 15:17       ` David Howells
2012-03-14 15:17         ` [ORLinux] " David Howells
2012-03-14 15:23         ` Jonas Bonn
2012-03-14 15:23           ` [ORLinux] " Jonas Bonn
2012-03-14 17:07         ` David Howells
2012-03-14 17:07           ` [ORLinux] " David Howells
2012-03-14 17:36           ` Jonas Bonn
2012-03-14 17:36             ` [ORLinux] " Jonas Bonn
2012-03-19 10:51           ` David Howells
2012-03-19 10:51             ` [ORLinux] " David Howells
2012-03-19 11:33             ` Jonas Bonn
2012-03-19 11:33               ` [ORLinux] " Jonas Bonn
2012-03-19 12:05             ` David Howells
2012-03-19 12:05               ` [ORLinux] " David Howells
2012-03-12 23:39 ` [PATCH 18/35] Create asm-generic/barrier.h " David Howells
2012-03-12 23:39   ` David Howells
2012-03-13  9:10   ` Arnd Bergmann
2012-03-12 23:39 ` [PATCH 19/35] Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h " David Howells
2012-03-12 23:39   ` David Howells
2012-03-13  9:11   ` Arnd Bergmann
2012-03-13  9:11     ` Arnd Bergmann
2012-03-12 23:39 ` [PATCH 20/35] Split the switch_to() wrapper out of asm-generic/system.h " David Howells
2012-03-12 23:39   ` David Howells
2012-03-13  9:11   ` Arnd Bergmann
2012-03-12 23:39 ` [PATCH 21/35] Split arch_align_stack() out from " David Howells
2012-03-13  9:11   ` Arnd Bergmann
2012-03-13  9:11     ` Arnd Bergmann
2012-03-12 23:39 ` [PATCH 22/35] Disintegrate asm/system.h for OpenRISC " David Howells
2012-03-12 23:39   ` David Howells
2012-03-13  9:12   ` Arnd Bergmann
2012-03-13  9:12     ` Arnd Bergmann
2012-03-12 23:39 ` [PATCH 23/35] Disintegrate asm/system.h for PA-RISC " David Howells
2012-03-12 23:39   ` David Howells
2012-03-12 23:40 ` [PATCH 24/35] Disintegrate asm/system.h for PowerPC " David Howells
2012-03-12 23:40   ` David Howells
2012-03-12 23:40 ` [PATCH 25/35] Disintegrate asm/system.h for S390 " David Howells
2012-03-12 23:40   ` David Howells
2012-03-12 23:40 ` [PATCH 26/35] Disintegrate asm/system.h for Score " David Howells
2012-03-12 23:40   ` David Howells
2012-03-12 23:40 ` [PATCH 27/35] Disintegrate asm/system.h for SH " David Howells
2012-03-12 23:40   ` David Howells
2012-03-12 23:40 ` [PATCH 28/35] Disintegrate asm/system.h for Sparc " David Howells
2012-03-12 23:40   ` David Howells
2012-03-12 23:40 ` [PATCH 29/35] Disintegrate asm/system.h for Tile " David Howells
2012-03-12 23:40   ` David Howells
2012-03-13 17:59   ` Chris Metcalf
2012-03-12 23:41 ` [PATCH 30/35] Disintegrate asm/system.h for Unicore32 " David Howells
2012-03-12 23:41   ` David Howells
2012-03-12 23:41 ` [PATCH 31/35] Disintegrate asm/system.h for Xtensa " David Howells
2012-03-12 23:41   ` David Howells
2012-03-12 23:41 ` [PATCH 32/35] Move all declarations of free_initmem() to linux/mm.h " David Howells
2012-03-12 23:41   ` David Howells
2012-03-12 23:41 ` [PATCH 33/35] Disintegrate asm/system.h on all arches " David Howells
2012-03-12 23:41   ` David Howells
2012-03-12 23:41 ` [PATCH 34/35] Remove all #inclusions of asm/system.h " David Howells
2012-03-14 12:35   ` Mark Salter
2012-03-12 23:42 ` [PATCH 35/35] Delete all instances " David Howells
2012-03-13 14:11 ` [RFC][PATCH 00/35] Disintegrate and kill " David Howells

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=1331736182.5104.74.camel@jerome.southpole.se \
    --to=jonas@southpole.se \
    --cc=arnd@arndb.de \
    --cc=dhowells@redhat.com \
    --cc=hpa@zytor.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@openrisc.net \
    --cc=paul.gortmaker@windriver.com \
    --cc=torvalds@linux-foundation.org \
    /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;
as well as URLs for NNTP newsgroup(s).