2013/6/8 Arnd Bergmann <arnd at arndb.de>: > On Friday 07 June 2013, HATAYAMA Daisuke wrote: >> Thanks for trying the build and your report! >> >> OTOH, I don't have no-MMU architectures; x86 box only. I cannot reproduce this build error. >> Could you give me your build log? I want to use it to detect what part depends on CONFIG_MMU. > > What I get is a link-time error: > > fs/built-in.o: In function `mmap_vmcore': > :(.text+0x4bc18): undefined reference to `remap_vmalloc_range_partial' > fs/built-in.o: In function `merge_note_headers_elf32.constprop.4': > :(.init.text+0x142c): undefined reference to `find_vm_area' > > and I used this patch to temporarily work around the problem, effectively disabling all > of /proc/vmcore on non-MMU kernels. > > diff --git a/include/linux/crash_dump.h b/include/linux/crash_dump.h > index 37e4f8d..9a078ef 100644 > --- a/include/linux/crash_dump.h > +++ b/include/linux/crash_dump.h > @@ -55,7 +55,7 @@ static inline int is_kdump_kernel(void) > > static inline int is_vmcore_usable(void) > { > - return is_kdump_kernel() && elfcorehdr_addr != ELFCORE_ADDR_ERR ? 1 : 0; > + return IS_ENABLED(CONFIG_MMU) && is_kdump_kernel() && elfcorehdr_addr != ELFCORE_ADDR_ERR ? 1 : 0; > } > > /* vmcore_unusable() marks the vmcore as unusable, > > > For testing, I used ARM at91x40_defconfig and manually turned on VMCORE support in > menuconfig, but it happened before using "randconfig". On most distros you can > these days install an arm cross compiler using yum or apt-get and build > the kernel yourself with 'make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-' > Thanks for the detailed explanation. To be honest, I had totally forgotten existence of cross-compiler and need of build check on multiple architectures before posting patch set... I tried installing cross compiler for arm and I've successfully got arm compiler using yum. I feel it much easier than I tried building them on console some years. I successfully reproduce the build error you see and I found I overlooked no MMU system. This build error is caused by my mmap patch set I made that maps physically non-contiguous objects into virtually contiguous user-space as ELF layout. For this, MMU is essential. I'll post a patch to disable mmap on /proc/vmcore on no MMU system next week. I cannot use compony email address now. Thanks. HATAYAMA, Daisuke