From: Shavian S. <sha...@gm...> - 2005-04-18 06:44:29
|
Hi, I recently configured a UML on Suse 9.0. Everything else is fine but from the bash shell whenever I issue any command I get the error in the subject line. I saw a similar post by another user in this list but did not see any reply posted. Searching on the net I came across the openmosix howto which had this to say about the problem : "The above line meas that the shell you were using has acutallly migrated to another node ? This printout from bash is caused by a bug in old version of openmosix, but a fix has been commited. " The bash version on the UML is 2.05b.0 which is pretty recent and which works fine on the host. "ps" shows that the xxx in the error message corresponds to the process id of the bash shell. So I guess the child process is trying to set the parent (shell ) as the process group leader but for some reason the shell's process instance cannot be located in the system. I start the UML as :=20 linux ubda=3Droot.img eth0=3Ddaemon con=3Dpty con0=3Dfd:0,fd:1 con1=3Dxterm= con2=3Dxterm=20 This opens a console and 2 ttys (tty1 and tty2) and I see this problem on all the 3. It also happens if I log into the UML from the host machine via ssh etc. I am at a loss of ideas how to debug this. Any help, ideas really appreciat= ed.=20 Shavian. |
From: Jeff D. <jd...@ad...> - 2005-04-18 14:12:31
|
On Sun, Apr 17, 2005 at 11:44:20PM -0700, Shavian Shakes wrote: > Hi, I recently configured a UML on Suse 9.0. Everything else is fine > but from the bash shell whenever I issue any command I get the error > in the subject line. > I am at a loss of ideas how to debug this. Any help, ideas really appreciated. First thing is to strace a bash that's doing this, to see what's happening at the syscall level. Jeff |
From: Shavian S. <sha...@gm...> - 2005-04-18 17:47:52
|
On 4/18/05, Jeff Dike <jd...@ad...> wrote: > On Sun, Apr 17, 2005 at 11:44:20PM -0700, Shavian Shakes wrote: > > Hi, I recently configured a UML on Suse 9.0. Everything else is fine > > but from the bash shell whenever I issue any command I get the error > > in the subject line. >=20 > > I am at a loss of ideas how to debug this. Any help, ideas really appre= ciated. >=20 > First thing is to strace a bash that's doing this, to see what's happenin= g > at the syscall level. Thanks for the pointer.=20 I tried the strace (strace ls) and tried to compare it with the same on the host. Not much difference. One thing I noticed on the guest was : set_thread_area({entry_number:-1 -> -1, base_addr:0x40175900, limit:1048575= , seg s:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) =3D= -1 ENO implemented) Searching through the devel list I gather that this is due to TLS issues, but that should be ok as long as the UML boots up and runs fine. So maybe something else is causing the problem. Here is the strace I got from the guest for "ls": execve("/bin/ls", ["ls"], [/* 50 vars */]) =3D 0 uname({sys=3D"Linux", node=3D"um3_lnx21", ...}) =3D 0 brk(0) =3D 0x805b000 open("/etc/ld.so.preload", O_RDONLY) =3D -1 ENOENT (No such file or dire= ctory) open("/etc/ld.so.cache", O_RDONLY) =3D 3 fstat64(3, {st_mode=3DS_IFREG|0644, st_size=3D98693, ...}) =3D 0 old_mmap(NULL, 98693, PROT_READ, MAP_PRIVATE, 3, 0) =3D 0x40017000 close(3) =3D 0 open("/lib/tls/librt.so.1", O_RDONLY) =3D 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\34\0"..., 512) = =3D 512 fstat64(3, {st_mode=3DS_IFREG|0755, st_size=3D36067, ...}) =3D 0 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x40030000 old_mmap(NULL, 30684, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =3D 0x4003100= 0 madvise(0x40031000, 30684, MADV_SEQUENTIAL|0x1) =3D 0 old_mmap(0x40038000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x6000) =3D 0x40038000 close(3) =3D 0 open("/lib/libacl.so.1", O_RDONLY) =3D 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\24"..., 512) = =3D 512 fstat64(3, {st_mode=3DS_IFREG|0644, st_size=3D31632, ...}) =3D 0 old_mmap(NULL, 20956, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =3D 0x4003900= 0 madvise(0x40039000, 20956, MADV_SEQUENTIAL|0x1) =3D 0 old_mmap(0x4003e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x5000) =3D 0x4003e000 close(3) =3D 0 open("/lib/libselinux.so.1", O_RDONLY) =3D 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0003\0"..., 512) = =3D 512 fstat64(3, {st_mode=3DS_IFREG|0755, st_size=3D61336, ...}) =3D 0 old_mmap(NULL, 57140, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =3D 0x4003f00= 0 madvise(0x4003f000, 57140, MADV_SEQUENTIAL|0x1) =3D 0 old_mmap(0x4004b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb000) =3D 0x4004b000 close(3) =3D 0 open("/lib/tls/libc.so.6", O_RDONLY) =3D 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@S\1\000"..., 512) = =3D 512 fstat64(3, {st_mode=3DS_IFREG|0755, st_size=3D1345545, ...}) =3D 0 old_mmap(NULL, 1128748, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =3D 0x4004d= 000 madvise(0x4004d000, 1128748, MADV_SEQUENTIAL|0x1) =3D 0 old_mmap(0x40156000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x109000) =3D 0x40156000 old_mmap(0x4015e000, 10540, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) =3D 0x4015e000 close(3) =3D 0 open("/lib/tls/libpthread.so.0", O_RDONLY) =3D 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360I\0"..., 512) = =3D 512 fstat64(3, {st_mode=3DS_IFREG|0755, st_size=3D88272, ...}) =3D 0 old_mmap(NULL, 65004, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =3D 0x4016100= 0 madvise(0x40161000, 65004, MADV_SEQUENTIAL|0x1) =3D 0 old_mmap(0x4016e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xd000) =3D 0x4016e000 old_mmap(0x4016f000, 7660, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) =3D 0x4016f000 close(3) =3D 0 open("/lib/libattr.so.1", O_RDONLY) =3D 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \r\0\000"..., 512) =3D 512 fstat64(3, {st_mode=3DS_IFREG|0644, st_size=3D14478, ...}) =3D 0 old_mmap(NULL, 13204, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =3D 0x4017100= 0 madvise(0x40171000, 13204, MADV_SEQUENTIAL|0x1) =3D 0 old_mmap(0x40174000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2000) =3D 0x40174000 close(3) =3D 0 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x40175000 set_thread_area({entry_number:-1 -> -1, base_addr:0x40175900, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_ in_pages:1, seg_not_present:0, useable:1}) =3D -1 ENOSYS (Function not implemented) modify_ldt(1, {entry_number:0, base_addr:0x40175900, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages: 1, seg_not_present:0, useable:1}, 16) =3D 0 munmap(0x40017000, 98693) =3D 0 set_tid_address(0x40175948) =3D 3839 rt_sigaction(SIGRTMIN, {0x40165950, [], SA_RESTORER|SA_SIGINFO, 0x4016c360}, NULL, 8) =3D 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN], NULL, 8) =3D 0 getrlimit(RLIMIT_STACK, {rlim_cur=3DRLIM_INFINITY, rlim_max=3DRLIM_INFINITY= }) =3D 0 _sysctl({{CTL_KERN, KERN_VERSION}, 2, 0xbffff328, 31, (nil), 0}) =3D 0 open("/proc/mounts", O_RDONLY) =3D 3 brk(0) =3D 0x805b000 brk(0x807d000) =3D 0x807d000 read(3, "rootfs / rootfs rw 0 0\n/dev/root"..., 4095) =3D 152 brk(0x807c000) =3D 0x807c000 close(3) =3D 0 open("/proc/filesystems", O_RDONLY) =3D 3 read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tb"..., 4095) =3D 203 close(3) =3D 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B9600 opost isig icanon echo ...})= =3D 0 ioctl(1, TIOCGWINSZ, {ws_row=3D44, ws_col=3D100, ws_xpixel=3D0, ws_ypixel= =3D0}) =3D 0 open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) =3D 3 fstat64(3, {st_mode=3DS_IFDIR|0700, st_size=3D4096, ...}) =3D 0 fcntl64(3, F_SETFD, FD_CLOEXEC) =3D 0 getdents64(3, /* 16 entries */, 4096) =3D 488 getdents64(3, /* 0 entries */, 4096) =3D 0 close(3) =3D 0 fstat64(1, {st_mode=3DS_IFCHR|0620, st_rdev=3Dmakedev(5, 1), ...}) =3D 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B9600 opost isig icanon echo ...})= =3D 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x40017000 write(1, "bin\n", 4) =3D 4 munmap(0x40017000, 4096) =3D 0 exit_group(0) =3D ? |
From: Blaisorblade <bla...@ya...> - 2005-04-18 18:17:48
|
On Monday 18 April 2005 19:47, Shavian Shakes wrote: > On 4/18/05, Jeff Dike <jd...@ad...> wrote: > > On Sun, Apr 17, 2005 at 11:44:20PM -0700, Shavian Shakes wrote: > > > Hi, I recently configured a UML on Suse 9.0. Everything else is fine > > > but from the bash shell whenever I issue any command I get the error > > > in the subject line. > > > > > > I am at a loss of ideas how to debug this. Any help, ideas really > > > appreciated. > > > > First thing is to strace a bash that's doing this, to see what's > > happening at the syscall level. > > Thanks for the pointer. > > I tried the strace (strace ls) and tried to compare it with the same > on the host. Not much difference. One thing I noticed on the guest was > > > set_thread_area({entry_number:-1 -> -1, base_addr:0x40175900, > limit:1048575, seg s:0, read_exec_only:0, limit_in_pages:1, > seg_not_present:0, useable:1}) = -1 ENO implemented) > > Searching through the devel list I gather that this is due to TLS > issues, but that should be ok as long as the UML boots up and runs > fine. Well, when you don't rename /lib/tls to something else, you get "strange" failures, i.e. things *almost* work. If that fixes the problem, don't go further. Otherwise, read below. > So maybe something else is causing the problem. Here is the > strace I got from the guest for "ls": Hmm, probably to debug this you need to do a strace bash -c "true" Assuming bash -c "true" gives the error. In fact, the stracing starts after bash has finished his work, so it can't help. -- Paolo Giarrusso, aka Blaisorblade Linux registered user n. 292729 http://www.user-mode-linux.org/~blaisorblade |
From: Shavian S. <sha...@gm...> - 2005-04-18 21:28:11
|
> Well, when you don't rename /lib/tls to something else, you get "strange" > failures, i.e. things *almost* work. If that fixes the problem, don't go > further. Otherwise, read below. >=20 Renaming /lib/tls did the job ! Really nice to have it working cleanly.=20 Thanks for all the help ! Shavian |