Good day, all,
Vince Berk pointed out what appears to be a thread issue with uml.
The "host" command, part of the bind-utils package, uses threads and
crashes when asked to do anything more complex than show its help screen:
-bash-3.1# rpm -q bind-libs bind-utils
bind-libs-9.3.3-0.1.rc3.fc6
bind-utils-9.3.3-0.1.rc3.fc6
-bash-3.1# host www.google.com.
Segmentation fault
(strace below)
I rebuilt the "bind" rpm (which creates bind-utils and bind-libs)
with a one-line change to the spec file, specifically to the configure
command:
[EMAIL PROTECTED] SPECS]$ diff -bud bind.spec.orig bind.spec
--- bind.spec.orig 2006-12-06 09:55:51.000000000 -0500
+++ bind.spec 2007-01-28 13:13:54.000000000 -0500
@@ -320,7 +320,7 @@
%configure \
--with-libtool \
--localstatedir=/var \
- --enable-threads \
+ --disable-threads \
--enable-ipv6 \
--with-pic \
--with-openssl=/usr \
The new packages work just fine inside uml:
-bash-3.1# rpm -e bind-libs bind-utils
-bash-3.1# rpm -Uvh
/home/wstearns/rpm/RPMS/x86_64/bind-libs-9.3.3-0.1.rc3.x86_64.rpm
/home/wstearns/rpm/RPMS/x86_64/bind-utils-9.3.3-0.1.rc3.x86_64.rpm
Preparing... ###########################################
1:bind-libs ########################################### [
2:bind-utils ###########################################
-bash-3.1# host www.google.com.
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 64.233.161.99
www.l.google.com has address 64.233.161.104
www.l.google.com has address 64.233.161.147
The problem is completely reproducible; the root filesystem and
kernel at http://ford.stearns.org/uml/ give a crash every time you
actually try to look something up with "host".
Should I be talking to the glibc folks about this?
Vince, the non-thread packages under /shared/spamgate/ in your vm.
Cheers,
- Bill
Here are the last lines from "strace -f host www.google.com"
using the stock (thread-enabled) "host" (no idea if this will help):
mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x40,
-1, 0) = 0x41e86000
mprotect(0x41e86000, 4096, PROT_NONE) = 0
clone(Process 27121 attached
child_stack=0x42686240,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
parent_tidptr=0x426869d0, tls=0x42686940, child_tidptr=0x426869d0) = 27121
[pid 27120] mmap(NULL, 8392704, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|0x40, -1, 0) = 0x42687000
[pid 27120] mprotect(0x42687000, 4096, PROT_NONE) = 0
[pid 27120] clone(Process 27122 attached
child_stack=0x42e87240,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
parent_tidptr=0x42e879d0, tls=0x42e87940, child_tidptr=0x42e879d0) = 27122
[pid 27120] pipe([3, 4]) = 0
[pid 27120] fcntl(3, F_GETFL) = 0 (flags O_RDONLY)
[pid 27120] fcntl(3, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
[pid 27120] mmap(NULL, 8392704, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|0x40, -1, 0) = 0x42e88000
[pid 27120] mprotect(0x42e88000, 4096, PROT_NONE) = 0
[pid 27120] clone(Process 27123 attached
child_stack=0x43688240,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
parent_tidptr=0x436889d0, tls=0x43688940, child_tidptr=0x436889d0) = 27123
[pid 27120] open("/usr/share/locale/C/libdst.cat", O_RDONLY) = -1 ENOENT
(No such file or directory)
[pid 27120] open("/usr/share/locale/C/LC_MESSAGES/libdst.cat", O_RDONLY) =
-1 ENOENT (No such file or directory)
[pid 27120] open("/usr/share/locale/C/libdst.cat", O_RDONLY) = -1 ENOENT
(No such file or directory)
[pid 27120] open("/usr/share/locale/C/LC_MESSAGES/libdst.cat", O_RDONLY) =
-1 ENOENT (No such file or directory)
[pid 27120] futex(0x40741ee0, FUTEX_WAKE, 2147483647) = 0
[pid 27120] open("/usr/share/locale/C/libisc.cat", O_RDONLY) = -1 ENOENT
(No such file or directory)
[pid 27120] open("/usr/share/locale/C/LC_MESSAGES/libisc.cat", O_RDONLY
<unfinished ...>
[pid 27121] set_robust_list(0x426869e0, 0x18 <unfinished ...>
[pid 27122] set_robust_list(0x42e879e0, 0x18 <unfinished ...>
[pid 27123] set_robust_list(0x436889e0, 0x18 <unfinished ...>
[pid 27120] <... open resumed> ) = -1 ENOENT (No such file or
directory)
[pid 27121] <... set_robust_list resumed> ) = 0
[pid 27122] <... set_robust_list resumed> ) = 0
[pid 27123] <... set_robust_list resumed> ) = 0
[pid 27120] open("/usr/share/locale/C/libisc.cat", O_RDONLY <unfinished
...>
[pid 27121] --- SIGSEGV (Segmentation fault) @ 0 (0) ---
Process 27121 detached
[pid 27122] --- SIGSEGV (Segmentation fault) @ 0 (0) ---
Process 27122 detached
[pid 27123] --- SIGSEGV (Segmentation fault) @ 0 (0) ---
Process 27123 detached
<... open resumed> ) = -1 ENOENT (No such file or
directory)
+++ killed by SIGSEGV +++
Process 27120 detached
-bash-3.1#
---------------------------------------------------------------------------
"While it may be true that a watched pot never boils, the one
you don't keep an eye on can make an awful mess of your stove."
-- Edward Stevenson
(Courtesy of Slashdot)
--------------------------------------------------------------------------
William Stearns ([EMAIL PROTECTED]). Mason, Buildkernel, freedups, p0f,
rsync-backup, ssh-keyinstall, dns-check, more at: http://www.stearns.org
--------------------------------------------------------------------------
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel