On Thu, Jan 31, 2008 at 05:15:23PM +0100, Ingo Molnar wrote:
* Adrian Bunk <bunk@xxxxxxxxxx> wrote:
On Thu, Jan 31, 2008 at 05:00:33PM +0100, Ingo Molnar wrote:the patch below fixes that.
* Adrian Bunk <bunk@xxxxxxxxxx> wrote:What about the breakages caused by commit a5a19c63f4e55e32dc0bc3d936d7f94793d8b380 (this commit broke the defconfig compilation on at least avr32, blackfin, sh, sparc and uml)?
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.
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>
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