Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753792AbYFJLT7 (ORCPT ); Tue, 10 Jun 2008 07:19:59 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751938AbYFJLTu (ORCPT ); Tue, 10 Jun 2008 07:19:50 -0400 Received: from fxip-0047f.externet.hu ([88.209.222.127]:43051 "EHLO pomaz-ex.szeredi.hu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751817AbYFJLTt (ORCPT ); Tue, 10 Jun 2008 07:19:49 -0400 To: peter.oberparleiter@de.ibm.com CC: miklos@szeredi.hu, akpm@linuxfoundation.org, jdike@addtoit.com, linux-kernel@vger.kernel.org, oberparleiter@googlemail.com In-reply-to: <484E5CBB.2040203@de.ibm.com> (message from Peter Oberparleiter on Tue, 10 Jun 2008 12:51:39 +0200) Subject: Re: 2.6.26-rc5-mm1: uml link error References: <484E5CBB.2040203@de.ibm.com> Message-Id: From: Miklos Szeredi Date: Tue, 10 Jun 2008 13:19:27 +0200 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4695 Lines: 99 > From: Peter Oberparleiter > > Fix for linker error on UML: > > /usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../x86_64-suse-linux/bin/ld:arch/um/kernel/vmlinux.lds:267: syntax error > > The error is triggered by the use of SORT(CONSTRUCTORS) in the UML > linker script which conflicts with the kernel-call-constructors patch. > Here is what the ld info page says about sorting constructors: > > If you are using the GNU C++ support for initialization priority, > which provides some control over the order in which global > constructors are run, you must sort the constructors at link time > to ensure that they are executed in the correct order. > > As there's no C++ code inside the kernel it should be safe to remove > the SORT construct. Hmm, uml still doesn't boot with this patch, it dies while calling the constructors. So maybe that SORT contruct is still needed? Miklos mszeredi@tucsk:/store/uml> /store/quilt/linux/linux umid=uml Locating the bottom of the address space ... 0x0 Locating the top of the address space ... 0xffffd000 Core dump limits : soft - NONE hard - NONE Checking that ptrace can change system call numbers...OK Checking syscall emulation patch for ptrace...missing Checking for tmpfs mount on /dev/shm...nothing mounted on /dev/shm Checking PROT_EXEC mmap in /tmp/...OK Checking for the skas3 patch in the host: - /proc/mm...not found: No such file or directory - PTRACE_FAULTINFO...not found - PTRACE_LDT...not found UML running in SKAS0 mode Adding 15208448 bytes to physical memory to account for exec-shield gap Aborted (core dumped) mszeredi@tucsk:/store/uml> gdb /store/quilt/linux/linux core GNU gdb 6.6.50.20070726-cvs Copyright (C) 2007 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "x86_64-suse-linux"... Using host libthread_db library "/lib64/libthread_db.so.1". warning: Can't read pathname for load map: Input/output error. Reading symbols from /lib/libutil.so.1...done. Loaded symbols for /lib/libutil.so.1 Reading symbols from /lib/libc.so.6...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld-linux.so.2...done. Loaded symbols for /lib/ld-linux.so.2 Core was generated by `/store/quilt/linux/linux umid=uml'. Program terminated with signal 6, Aborted. #0 0xffffe430 in __kernel_vsyscall () (gdb) bt #0 0xffffe430 in __kernel_vsyscall () #1 0xf7e598f5 in raise () from /lib/libc.so.6 #2 0xf7e5b1e1 in abort () from /lib/libc.so.6 #3 0x0807173d in os_dump_core () at arch/um/os-Linux/util.c:119 #4 0x08061d07 in panic_exit (self=0x8451594, unused1=0, unused2=0x8471f20) at arch/um/kernel/um_arch.c:233 #5 0x0809a2ea in notifier_call_chain (nl=0x84594ec, val=0, v=0x8471f20, nr_to_call=-1, nr_calls=0x0) at kernel/notifier.c:85 #6 0x0809a3e0 in __atomic_notifier_call_chain (nh=0x84594dc, val=0, v=0x8471f20, nr_to_call=-1, nr_calls=0x0) at kernel/notifier.c:174 #7 0x0809a41f in atomic_notifier_call_chain (nh=0x84594dc, val=0, v=0x8471f20) at kernel/notifier.c:183 #8 0x0807e88a in panic (fmt=0x83dd7be "Segfault with no mm") at kernel/panic.c:104 #9 0x08061922 in segv (fi={error_code = 21, cr2 = 4294967295, trap_no = 14}, ip=4294967295, is_user=0, regs=0x844fc70) at arch/um/kernel/trap.c:176 #10 0x080616c7 in segv_handler (sig=11, regs=0x6) at arch/um/kernel/trap.c:152 #11 0x0806ff00 in sig_handler_common (sig=11, sc=0x844fd24) at arch/um/os-Linux/signal.c:49 #12 0x0806ff87 in sig_handler (sig=11, sc=0x844fd24) at arch/um/os-Linux/signal.c:81 #13 0x0807011d in handle_signal (sig=2894, sc=0x844fd24) at arch/um/os-Linux/signal.c:158 #14 0x08071fb8 in hard_handler (sig=11) at arch/um/os-Linux/sys-i386/signal.c:12 #15 #16 0xffffffff in ?? () #17 0x08049793 in do_ctors () at init/main.c:706 #18 0x080499cc in do_basic_setup () at init/main.c:789 #19 0x08049a43 in kernel_init (unused=0x0) at init/main.c:897 #20 0x0806f241 in run_kernel_thread (fn=0x8049a10 , arg=0x0, jmp_ptr=0xa860b50) at arch/um/os-Linux/process.c:267 #21 0x0805ed02 in new_thread_handler () at arch/um/kernel/process.c:151 #22 0x00000000 in ?? () (gdb) Miklos -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/