lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <E1K61st-0008JT-9e@pomaz-ex.szeredi.hu>
Date:	Tue, 10 Jun 2008 13:19:27 +0200
From:	Miklos Szeredi <miklos@...redi.hu>
To:	peter.oberparleiter@...ibm.com
CC:	miklos@...redi.hu, akpm@...uxfoundation.org, jdike@...toit.com,
	linux-kernel@...r.kernel.org, oberparleiter@...glemail.com
Subject: Re: 2.6.26-rc5-mm1: uml link error

> From: Peter Oberparleiter <peter.oberparleiter@...ibm.com>
> 
> 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@...sk:/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@...sk:/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 <signal handler called>
#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 <kernel_init>, 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@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ