Hello World\n I was recently trying to prepare a nfsroot environment for Motorola PPC 823e using debootstrap, sarge debs and some hand hacking (I've made that for woody some months ago without problems) but I'm now stuck with very wierd problems. I can boot 2.4.20 (compiled with gcc 2.95.4) into woody with glibc 2.2.5, everything ok I can boot 2.4.20 (compiled with gcc 2.95.4 or with 3.2.3) into sarge with glibc 2.3.2, boot ok, shell ok, ls ok, dpkg ok, but: awk segfaults, strace shows that the segfault happens after mmaping libm.so.6 ------ cut ------ # strace /usr/bin/mawk execve("/usr/bin/mawk", ["/usr/bin/mawk"], [/* 5 vars */]) = 0 uname({sys="Linux", node="192.168.40.10", ...}) = 0 brk(0) = 0x1002bbcc access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/libm.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0\241"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=475956, ...}) = 0 mmap(0xff6c000, 540596, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xff6c000 mprotect(0xffde000, 73652, PROT_NONE) = 0 mmap(0xffec000, 16384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3,0x70000) = 0xffec000 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ ------ cut ------ OK, I said to me, something wrong with glibc in sarge and floating point, so I took my brand new glibc 2.3.2 from cross compiler chain and tried to chroot into it, now the bash from chroot hangs, here after mmap of libnsl.so.1, see the follwoing latest lines of strace chroot /bin/bash (the machine can still be pinged from the network, kernel is alive, tcpdump left alone for hours does not show any network activity)... ------ cut ------ ... ... uname({sys="Linux", node="192.168.40.10", ...}) = 0 socket(PF_UNIX, SOCK_STREAM, 0) = 3 connect(3, {sa_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) = -1 ENOENT (No such file or directory) close(3) = 0 open("/etc/nsswitch.conf", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/libnss_compat.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0\30"..., 1024) = 1024 fstat64(3, {st_mode=S_IFREG|0755, st_size=59426, ...}) = 0 mmap(0xfde8000, 110660, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xfde8000 mprotect(0xfdf3000, 65604, PROT_NONE) = 0 mmap(0xfdf8000, 45056, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3,0) = 0xfdf8000 mmap(0xfe03000, 68, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xfe03000 close(3) = 0 open("/lib/libnsl.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0B\30"..., 1024) = 1024 fstat64(3, {st_mode=S_IFREG|0755, st_size=100581, ...}) = 0 mmap(0xfdb2000, 151900, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xfdb2000 mprotect(0xfdc4000, 78172, PROT_NONE) = 0 mmap(0xfdd2000, 12288, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3,0x10000) = 0xfdd2000 ------ cut ------ Anyone has a clue what could be the cause? the kernel we are running is a hand patched ppc 2.4.20, but I've already received a report that 2.4.24 from denx.de can be booted on our MPC853e based board succesfully, so I'll give it a try soon, meanwhile I'm just speculating.. thanx, martin
Attachment:
signature.asc
Description: Digital signature