LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Adrian Bunk <bunk@kernel.org>
Cc: Ingo Molnar <mingo@elte.hu>,
	wli@holomorphy.com,
	Linus Torvalds <torvalds@linux-foundation.org>,
	linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	sparclinux@vger.kernel.org
Subject: Re: sparc compile error caused by x86 arch updates
Date: Thu, 31 Jan 2008 08:50:53 -0800	[thread overview]
Message-ID: <47A1FC6D.6090305@goop.org> (raw)
In-Reply-To: <20080131162920.GE19700@cs181133002.pp.htv.fi>

Adrian Bunk wrote:
> On Thu, Jan 31, 2008 at 05:15:23PM +0100, Ingo Molnar wrote:
>   
>> * Adrian Bunk <bunk@kernel.org> wrote:
>>
>>     
>>> On Thu, Jan 31, 2008 at 05:00:33PM +0100, Ingo Molnar wrote:
>>>       
>>>> * Adrian Bunk <bunk@kernel.org> wrote:
>>>>
>>>>         
>>>>> You tested x86 but broke more than half a dozen other archtectures, 
>>>>> with at least 3 different commits breaking other architectures.
>>>>>           
>>>> Note that all known breakages are fixed in current -git, except for the 
>>>> s390 problem that Martin/Nick posted the fix.
>>>>         
>>> What about the breakages caused by commit 
>>> a5a19c63f4e55e32dc0bc3d936d7f94793d8b380 (this commit broke the 
>>> defconfig compilation on at least avr32, blackfin, sh, sparc and uml)?
>>>       
>> the patch below fixes that.
>>     
>
> The sparc breakage (might not have been reported until now and I 
> bisected it just a few minutes ago) is caused by the following part of 
> commit a5a19c63f4e55e32dc0bc3d936d7f94793d8b380:
>
> --- a/include/linux/swap.h
> +++ b/include/linux/swap.h
> @@ -6,6 +6,7 @@
>  #include <linux/mmzone.h>
>  #include <linux/list.h>
>  #include <linux/sched.h>
> +#include <linux/pagemap.h>
>  
>  #include <asm/atomic.h>
>  #include <asm/page.h>
>
>
>   

Drat.  I added that because of

/* only sparc can not include linux/pagemap.h in this file
 * so leave page_cache_release and release_pages undeclared... */
#define free_page_and_swap_cache(page) \
	page_cache_release(page)
#define free_pages_and_swap_cache(pages, nr) \
	release_pages((pages), (nr), 0);


But I guess I overlooked the comment...

I guess the fix is to scatter linux/pagemap.h into the appropriate 
places where these macros are used (asm-generic/tlb.h, for a start).

    J
> The compile error with the sparc defconfig is:
>
> <--  snip  -->
>
> ...
>   CC      init/main.o
> In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/highmem.h:24,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:10,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/swap.h:9,
>                  from include2/asm/pgtable.h:15,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/mm.h:39,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/asm-generic/dma-mapping.h:17,
>                  from include2/asm/dma-mapping.h:6,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/dma-mapping.h:52,
>                  from include2/asm/sbus.h:10,
>                  from include2/asm/dma.h:13,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/bootmem.h:8,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/init/main.c:26:
> include2/asm/highmem.h: In function 'kmap':
> include2/asm/highmem.h:60: error: implicit declaration of function 'PageHighMem'
> include2/asm/highmem.h:61: error: implicit declaration of function 'page_address'
> include2/asm/highmem.h:61: warning: return makes pointer from integer without a cast
> In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/swap.h:9,
>                  from include2/asm/pgtable.h:15,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/mm.h:39,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/asm-generic/dma-mapping.h:17,
>                  from include2/asm/dma-mapping.h:6,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/dma-mapping.h:52,
>                  from include2/asm/sbus.h:10,
>                  from include2/asm/dma.h:13,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/bootmem.h:8,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/init/main.c:26:
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h: In function 'lock_page':
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:169: error: implicit declaration of function 'TestSetPageLocked'
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h: In function 'wait_on_page_locked':
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:199: error: implicit declaration of function 'PageLocked'
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:200: error: 'PG_locked' undeclared (first use in this function)
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:200: error: (Each undeclared identifier is reported only once
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:200: error: for each function it appears in.)
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h: In function 'wait_on_page_writeback':
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:208: error: implicit declaration of function 'PageWriteback'
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pagemap.h:209: error: 'PG_writeback' undeclared (first use in this function)
> In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/asm-generic/dma-mapping.h:17,
>                  from include2/asm/dma-mapping.h:6,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/dma-mapping.h:52,
>                  from include2/asm/sbus.h:10,
>                  from include2/asm/dma.h:13,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/bootmem.h:8,
>                  from /home/bunk/linux/kernel-2.6/git/linux-2.6/init/main.c:26:
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/mm.h: At top level:
> /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/mm.h:556: error: conflicting types for 'page_address'
> include2/asm/highmem.h:61: error: previous implicit declaration of 'page_address' was here
> make[2]: *** [init/main.o] Error 1
> make[1]: *** [init] Error 2
> make: *** [sub-make] Error 2
>
> <--  snip  -->
>
>
>   
>> 	Ingo
>>     
>
> cu
> Adrian
>
>   


  reply	other threads:[~2008-01-31 16:51 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-30  1:15 [git pull] x86 arch updates for v2.6.25 Ingo Molnar
2008-01-31  0:33 ` x86 arch updates also broke s390 Adrian Bunk
2008-01-31  9:34   ` Martin Schwidefsky
2008-01-31 10:24     ` Ingo Molnar
2008-01-31 12:37       ` Nick Piggin
2008-02-01  9:48     ` Ingo Molnar
2008-02-01  9:52       ` Ingo Molnar
2008-02-01  9:54       ` Martin Schwidefsky
2008-02-01 10:02         ` Ingo Molnar
2008-01-31 15:57 ` [git pull] x86 arch updates for v2.6.25 Adrian Bunk
2008-01-31 16:00   ` Ingo Molnar
2008-01-31 16:04     ` Ingo Molnar
2008-01-31 16:12     ` Adrian Bunk
2008-01-31 16:15       ` Ingo Molnar
2008-01-31 16:21         ` WANG Cong
2008-01-31 16:24         ` Adrian Bunk
2008-01-31 16:46           ` Ingo Molnar
2008-01-31 16:52             ` Jeremy Fitzhardinge
2008-01-31 16:29         ` sparc compile error caused by x86 arch updates Adrian Bunk
2008-01-31 16:50           ` Jeremy Fitzhardinge [this message]
2008-01-31 17:43             ` Ingo Molnar
2008-01-31 17:55               ` Jeremy Fitzhardinge
2008-01-31 18:21               ` Adrian Bunk
2008-01-31 18:38                 ` Ingo Molnar
2008-02-05  2:36 ` [git pull] x86 arch updates for v2.6.25 Maxim Levitsky
2008-02-05  3:27   ` Linus Torvalds
2008-02-05  4:11     ` Phil Oester
2008-02-05  4:54       ` Andrew Morton
2008-02-06 12:08         ` Jan Kiszka
2008-02-07 20:00           ` Daniel Phillips
2008-02-08  4:48       ` Christoph Hellwig
2008-02-08  9:51         ` Jan Kiszka
2008-02-05 17:45     ` John Stoffel
2008-02-05 17:52       ` H. Peter Anvin
2008-02-08 18:24         ` Bernhard Kaindl
2008-02-08 19:38           ` remote DMA via FireWire (was Re: [git pull] x86 arch updates for v2.6.25) Stefan Richter
2008-02-07 19:20     ` [git pull] x86 arch updates for v2.6.25 Daniel Phillips
2008-02-08 17:00     ` Andi Kleen
2008-02-08 17:48       ` Jan Kiszka
2008-02-08 18:57         ` Andi Kleen
2008-02-08 21:28           ` [RFC][PATCH] KGDB: remove kgdb-own fault handling (was: Re: [git pull] x86 arch updates for v2.6.25) Jan Kiszka
2008-02-08 21:58             ` Linus Torvalds
2008-02-08 22:16               ` [RFC][PATCH] KGDB: remove kgdb-own fault handling Jason Wessel
2008-02-09 14:11 ` [git pull] x86 arch updates for v2.6.25 Amit Shah
2008-02-10 12:30   ` Jiri Kosina
2008-02-12  7:16     ` Amit Shah
2008-02-13  8:56       ` Ingo Molnar
2008-02-13 10:19         ` Amit Shah

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=47A1FC6D.6090305@goop.org \
    --to=jeremy@goop.org \
    --cc=akpm@linux-foundation.org \
    --cc=bunk@kernel.org \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=sparclinux@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=wli@holomorphy.com \
    --subject='Re: sparc compile error caused by x86 arch updates' \
    /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

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).