On Mon, 2010-05-03 at 21:30 +0200, Kenneth Johansson wrote: > I'm trying to setup a debian root that I can chroot into for armel and > mips from an ubuntu 9.10 x86_64. > > While I have it working for armel on a specific qemu the mips target is > more problematic. > > first both fail for qemu newer than > 6173d56bdcb53389c54e803873e6bf8f87836a4f. > > doing /sbin/ldconfig. I get "bad address" > > > now on to mips. during installation of debian I get the following error, > > /bin/tar: ./postinst: Cannot utime: Level 2 not synchronized
after discovering QEMU_STRACE. not sure why tar thinks it got EL2NSYNC in errno. 15978 execve("/bin/tar",{"tar","xf","-",NULL})15977 fcntl64(0,0x3000000,0x00000001) = 0 15976 exit_group(0) 15977 fstat64(0,0x4007e0e8) = 0 15977 mmap(NULL,256,0x3000000,0x2080000,-1,0) = 0x4225d000 15977 _llseek(0,0,0,1074258344,1,0) = -1 errno=29 (Illegal seek) 15977 read(0,0x43e570,16384) = 1959 15977 read(0,0x43ed17,12288) = 0 15977 _llseek(0,0,0,1074258408,1,0) = -1 errno=29 (Illegal seek) 15978 brk(NULL) = 0x0047a000 15978 uname(0x4007f240) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 mmap(NULL,1048576,0x3000000,0x2080000,-1,0) = 0x42081000 15978 access("/etc/ld.so.preload",0x4000000) = -1 errno=2 (No such file or directory) 15977 write(1,0x4007e43c,4096) = 4096 15977 write(1,0x4007e43c,4096) = 4096 15978 open("/etc/ld.so.cache",O_RDONLY) = 4 15978 fstat64(67108864,0x4007ee28) = 0 15978 mmap(NULL,-1358102528,0x1000000,0x2000000,67108864,0)15977 = 0x42082000 read(0,0x43e570,16384) = 0 15978 close(4) = 0 15977 write(1,0x4007e43c,2048) = 2048 15977 close(1) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/librt.so.1",O_RDONLY) = 4 15978 read(4,0x4007ef78,512) = 512 15978 lseek(4,744,0,1074262308,0,0) = 744 15978 read(4,0x4007eed0,32) = 32 15978 fstat64(67108864,0x4007ee40) = 0 15977 exit_group(0) 15978 mmap(NULL,-1602092800,0x5000000,0x2200000,67108864,0) = 0x42083000 15978 mprotect(0x4208b000,15728640,PROT_NONE) = 0 15978 mmap(0x4209a000,2097152,0x3000000,0x12200000,67108864,0x700000) = 0x4209a000 15978 close(4) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/libc.so.6",O_RDONLY) = 4 15978 read(4,0x4007ef60,512) = 512 15978 lseek(4,760,0,1074262316,0,0) = 760 15978 read(4,0x4007eeb8,32) = 32 15978 fstat64(67108864,0x4007ee28) = 0 15978 mmap(NULL,1048576,0x3000000,0x2080000,-1,0) = 0x4209c000 15978 mmap(NULL,1089345280,0x5000000,0x2200000,67108864,0) = 0x4209d000 15978 mprotect(0x421ff000,15728640,PROT_NONE) = 0 15978 mmap(0x4220e000,11534336,0x3000000,0x12200000,67108864,0x101600) = 0x4220e000 15978 mmap(0x42219000,1076756480,0x3000000,0x12080000,-1,0) = 0x42219000 15978 close(4) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/libpthread.so.0",O_RDONLY) = 4 15978 read(4,0x4007eeb0,512) = 512 15978 lseek(4,744,0,1074262108,0,0) = 744 15978 read(4,0x4007ee08,32) = 32 15978 fstat64(67108864,0x4007ed78) = 0 15978 mmap(NULL,-1599929856,0x5000000,0x2200000,67108864,0) = 0x4221c000 15978 mprotect(0x42233000,256,PROT_NONE) = 0 15978 mmap(0x42243000,2097152,0x3000000,0x12200000,67108864,0x700100) = 0x42243000 15978 mmap(0x42245000,-1609367552,0x3000000,0x12080000,-1,0) = 0x42245000 15978 close(4) = 0 15978 mmap(NULL,1048576,0x3000000,0x2080000,-1,0) = 0x42247000 15978 set_thread_area(1109714064,1109685392,65536,1109685392,0,0) = 0 15978 open("/dev/urandom",O_RDONLY) = 4 15978 read(4,0x4007f3e1,3) = 3 15978 close(4) = 0 15978 mprotect(0x42243000,1048576,0x1000000) = 0 15978 mprotect(0x4220e000,9437184,0x1000000) = 0 15978 mprotect(0x4209a000,1048576,0x1000000) = 0 15978 mprotect(0x400b2000,1048576,0x1000000) = 0 15978 munmap(0x42082000,-1358102528) = 0 15978 set_tid_address(1109684328,1109714064,1074264284,1074264284,0,0) = 15978 15978 set_robust_list(1109684336,12,1074264284,0,0,0) = -1 errno=89 (Function not implemented) 15978 futex(0x4007f758,-2130706432,16777216,0x00000001,NULL,0) = 0 15978 futex(0x4007f758,-1996423168,16777216,NULL,NULL,0) = -1 errno=89 (Function not implemented) 15978 rt_sigaction(32,1074263784,0,16,0,0) = 0 15978 rt_sigaction(33,1074263784,0,16,0,0) = -1 errno=22 (Invalid argument) 15978 rt_sigprocmask(2,1074263920,0,16,0,0) = 0 15978 getrlimit(3,1074263904,0,0,0,0) = 0 15978 clock_gettime(0,4688892,1074264284,0,0,0) = 0 15978 brk(NULL) = 0x0047a000 15978 brk(0x0049b000) = 0x0049b000 15978 open("/usr/lib/locale/locale-archive",O_RDONLY|O_LARGEFILE) = -1 errno=2 (No such file or directory) 15978 open("/usr/share/locale/locale.alias",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/usr/lib/locale/en_US.UTF-8/LC_IDENTIFICATION",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/usr/lib/locale/en_US.utf8/LC_IDENTIFICATION",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/usr/lib/locale/en_US/LC_IDENTIFICATION",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/usr/lib/locale/en.UTF-8/LC_IDENTIFICATION",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/usr/lib/locale/en.utf8/LC_IDENTIFICATION",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/usr/lib/locale/en/LC_IDENTIFICATION",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 fcntl64(0,0x1000000,NULL) = 0 15978 fcntl64(16777216,0x1000000,NULL) = 0 15978 fcntl64(33554432,0x1000000,NULL) = 0 15978 rt_sigaction(13,1074263504,1074263536,16,0,0) = 0 15978 rt_sigaction(18,1074263504,1074263536,16,0,0) = 0 15978 geteuid32(0,102,0,0,0,0) = 0 15978 umask(0) = 18 15978 read(0,0x47c000,10240) = 10240 15978 fstat64(0,0x00479318) = 0 15978 clock_gettime(0,4688856,45,0,0,0) = 0 15978 socket(1,524418,0,-2139062144,0,0) = -1 errno=22 (Invalid argument) 15978 socket(1,2,0,1,0,0) = 4 15978 fcntl64(67108864,0x4000000,0x00000082) = 0 15978 connect(4,0x4007f290,110) = -1 errno=2 (No such file or directory) 15978 close(4) = 0 15978 socket(1,2,0,1074263276,0,0) = 4 15978 fcntl64(67108864,0x4000000,0x00000082) = 0 15978 connect(4,0x4007f3e0,110) = -1 errno=2 (No such file or directory) 15978 close(4) = 0 15978 open("/etc/nsswitch.conf",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/etc/ld.so.cache",O_RDONLY) = 4 15978 fstat64(67108864,0x4007ed48) = 0 15978 mmap(NULL,-1358102528,0x1000000,0x2000000,67108864,0) = 0x42248000 15978 close(4) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/libnss_compat.so.2",O_RDONLY) = 4 15978 read(4,0x4007ee98,512) = 512 15978 lseek(4,688,0,1074262052,0,0) = 688 15978 read(4,0x4007edf0,32) = 32 15978 fstat64(67108864,0x4007ed60) = 0 15978 mmap(NULL,-1870528256,0x5000000,0x2200000,67108864,0) = 0x42249000 15978 mprotect(0x42251000,15728640,PROT_NONE) = 0 15978 mmap(0x42260000,2097152,0x3000000,0x12200000,67108864,0x700000) = 0x42260000 15978 close(4) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/libnsl.so.1",O_RDONLY) = 4 15978 read(4,0x4007ec68,512) = 512 15978 lseek(4,680,0,1074261492,0,0) = 680 15978 read(4,0x4007ebc0,32) = 32 15978 fstat64(67108864,0x4007eb30) = 0 15978 mmap(NULL,-796392960,0x5000000,0x2200000,67108864,0) = 0x42262000 15978 mprotect(0x42278000,15728640,PROT_NONE) = 0 15978 mmap(0x42287000,2097152,0x3000000,0x12200000,67108864,0x500100) = 0x42287000 15978 mmap(0x42289000,-803733504,0x3000000,0x12080000,-1,0) = 0x42289000 15978 close(4) = 0 15978 mprotect(0x42287000,1048576,0x1000000) = 0 15978 mprotect(0x42260000,1048576,0x1000000) = 0 15978 munmap(0x42248000,-1358102528) = 0 15978 open("/etc/nsswitch.conf",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/etc/ld.so.cache",O_RDONLY) = 4 15978 fstat64(67108864,0x4007eca8) = 0 15978 mmap(NULL,-1358102528,0x1000000,0x2000000,67108864,0) = 0x4228b000 15978 close(4) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/libnss_nis.so.2",O_RDONLY) = 4 15978 read(4,0x4007edf8,512) = 512 15978 lseek(4,696,0,1074261892,0,0) = 696 15978 read(4,0x4007ed50,32) = 32 15978 fstat64(67108864,0x4007ecc0) = 0 15978 mmap(NULL,-256769792,0x5000000,0x2200000,67108864,0) = 0x4228c000 15978 mprotect(0x42297000,15728640,PROT_NONE) = 0 15978 mmap(0x422a6000,2097152,0x3000000,0x12200000,67108864,0xa00000) = 0x422a6000 15978 close(4) = 0 15978 access("/etc/ld.so.nohwcap",F_OK) = -1 errno=2 (No such file or directory) 15978 open("/lib/libnss_files.so.2",O_RDONLY) = 4 15978 read(4,0x4007ebb0,512) = 512 15978 lseek(4,680,0,1074261308,0,0) = 680 15978 read(4,0x4007eb08,32) = 32 15978 fstat64(67108864,0x4007ea78) = 0 15978 mmap(NULL,819134720,0x5000000,0x2200000,67108864,0) = 0x422a8000 15978 mprotect(0x422b5000,15728640,PROT_NONE) = 0 15978 mmap(0x422c4000,2097152,0x3000000,0x12200000,67108864,0xc00000) = 0x422c4000 15978 close(4) = 0 15978 mprotect(0x422c4000,1048576,0x1000000) = 0 15978 mprotect(0x422a6000,1048576,0x1000000) = 0 15978 munmap(0x4228b000,-1358102528) = 0 15978 open("/etc/passwd",O_RDONLY|0x80000) = -1 errno=2 (No such file or directory) 15978 open("/etc/passwd",O_RDONLY|0x80000) = -1 errno=2 (No such file or directory) 15978 socket(1,2,0,-2139062144,0,0) = 4 15978 fcntl64(67108864,0x4000000,0x00000082) = 0 15978 connect(4,0x4007f260,110) = -1 errno=2 (No such file or directory) 15978 close(4) = 0 15978 socket(1,2,0,1074263244,0,0) = 4 15978 fcntl64(67108864,0x4000000,0x00000082) = 0 15978 connect(4,0x4007f3b0,110) = -1 errno=2 (No such file or directory) 15978 close(4) = 0 15978 open("/etc/nsswitch.conf",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/etc/nsswitch.conf",O_RDONLY) = -1 errno=2 (No such file or directory) 15978 open("/etc/group",O_RDONLY|0x80000) = -1 errno=2 (No such file or directory) 15978 open("/etc/group",O_RDONLY|0x80000) = -1 errno=2 (No such file or directory) 15978 mkdir(".",030000200000) = -1 errno=17 (File exists) 15978 stat64(".",0x4007f538) = 0 15978 open("./postinst",O_RDONLY|O_CREAT|O_EXCL|O_LARGEFILE|0x1) = 4 15978 write(4,0x47c400,3047) = 3047 15978 close(4) = 0 15978 write(2,0x4007cf00,10)/bin/tar: = 10 15978 write(2,0x4007cee0,24)./postinst: Cannot utime = 24 15978 write(2,0x4007ca88,26): Level 2 not synchronized = 26 15978 write(2,0x4007cea8,1) = 1 > now I guess what is really happening is that my x86_64 kernel is > returning ENOSYS and that maps to the mostly unused EL2NSYNC on mips. > > arch/mips/include/asm/errno.h:#define EL2NSYNC 38 /* Level 2 > not synchronized */ > include/asm-generic/errno.h:#define EL2NSYNC 45 /* Level 2 > not synchronized */ > include/asm-generic/errno.h:#define ENOSYS 38 /* Function > not implemented */ > > Is there anything that can be done to fix this ?? > I do not know what syscall this is happening on :( >