[Pkg-utopia-maintainers] Bug#414569: avahi-daemon: delay on resolving IP addresses when mdns is specified in /etc/nsswitch.conf

Martin Steigerwald ms at teamix.de
Mon Mar 12 16:57:08 CET 2007


Package: avahi-daemon
Version: 0.6.16-2
Severity: critical

Today I spent 5 hours or more for debugging a problem with slowness of
almost all running applications. I first found that IMAP access with
KMail was unusable slow, even after I installed dovecot locally. ssh and
most network related commands took 5 seconds delay after being started
before anything happened.

Well finally I found it times out on a request to resolve an IP address
with avahi. I stopped avahi and ssh worked instantly and IMAP access via
KMail accelerated immediately.

I started avahi-daemon again and the delays occured again.

I found that instead of stopping avahi-daemon I could also change
/etc/nsswitch.conf by removing any reference to mdns:

#hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
hosts:          files dns

This happened on a NFS based workstation with Debian Etch. And then
after an update to second workstation it happened also there. However I
am not sure which package update triggered this problem (see package
list below).

I am setting this to critical as it makes a NFS based network
workstation next to unusable. Feel free to lower the priority as you see
fit. Maybe it just happened here. But if not it IMHO should be fixed
before Etch release.

Excerpt of strace to demonstrate where the delays happen: 

ms at mango:~> strace ssh
execve("/usr/bin/ssh", ["ssh"], [/* 31 vars */]) = 0
uname({sys="Linux", node="mango", ...}) = 0
brk(0)                                  = 0x808a000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7fab000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=115326, ...}) = 0
[...]

open("/etc/ld.so.cache", O_RDONLY)      = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=115326, ...}) = 0
mmap2(NULL, 115326, PROT_READ, MAP_PRIVATE, 4, 0) = 0xb796f000
close(4)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/libnss_mdns4.so.2", O_RDONLY) = 4
read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\t\0\000"...,
512) = 512
fstat64(4, {st_mode=S_IFREG|0644, st_size=7208, ...}) = 0
mmap2(NULL, 10164, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0)
= 0xb796c000
mmap2(0xb796e000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1) = 0xb796e000
close(4)                                = 0
munmap(0xb796f000, 115326)              = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 4
fcntl64(4, F_GETFD)                     = 0
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/var/run/avahi-daemon/socket"},
110) = 0
fcntl64(4, F_GETFL)                     = 0x2 (flags O_RDWR)
fstat64(4, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f8f000
_llseek(4, 0, 0xbfc67f44, SEEK_CUR)     = -1 ESPIPE (Illegal seek)
write(4, "RESOLVE-ADDRESS 172.21.242.9\n", 29) = 29
read(4,

Here is hangs for about 5 seconds, maybe a bit more... then it goes on
with:

"-15 Timeout reached\n", 1024)  = 20
close(4)                                = 0
munmap(0xb7f8f000, 4096)                = 0
uname({sys="Linux", node="mango", ...}) = 0
time(NULL)                              = 1173712863
write(3, "0\f\2\1\1`\7\2\1\3\4\0\200\0", 14) = 14
time(NULL)                              = 1173712863
select(1024, [3], [], NULL, {30, 0})    = 1 (in [3], left {30, 0})
read(3, "0\f\2\1\1a\7\n", 8)            = 8
read(3, "\1\0\4\0\4\0", 6)              = 6
time(NULL)                              = 1173712863
setsockopt(3, SOL_SOCKET, SO_KEEPALIVE, [0], 4) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getsockname(3, {sa_family=AF_INET, sin_port=htons(45161),
sin_addr=inet_addr("172.21.123.1")}, [16]) = 0
getpeername(3, {sa_family=AF_INET, sin_port=htons(389),
sin_addr=inet_addr("172.21.242.9")}, [16]) = 0
time([1173712863])                      = 1173712863
time(NULL)                              = 1173712863
write(3, "0\201\304\2\1\2c\201\276\4\20dc=teamix,dc=net\n\1\2\n\1"...,
199) = 199
select(1024, [3], [], NULL, NULL)       = 1 (in [3])
read(3, "0\202\1H\2\1\2d", 8)           = 8
read(3, "\202\1A\4!uid=ms,ou=people,dc=teamix,"..., 324) = 324
select(1024, [3], [], NULL, NULL)       = 1 (in [3])
read(3, "0\f\2\1\2e\7\n", 8)            = 8
read(3, "\1\0\4\0\4\0", 6)              = 6
time(NULL)                              = 1173712863
time([1173712863])                      = 1173712863
rt_sigaction(SIGPIPE, {SIG_DFL}, NULL, 8) = 0
umask(022)                              = 022
write(2, "usage: ssh [-1246AaCfgKkMNnqsTtV"..., 407usage: ssh
[-1246AaCfgKkMNnqsTtVvXxY] [-b bind_address] [-c cipher_spec]
           [-D [bind_address:]port] [-e escape_char] [-F configfile]
           [-i identity_file] [-L [bind_address:]port:host:hostport]
           [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p
port]
           [-R [bind_address:]port:host:hostport] [-S ctl_path]
           [-w tunnel:tunnel] [user@]hostname [command]
) = 407
exit_group(255)                         = ?
Process 8977 detached


List of packages updated recently:
mango:~# ls -lt /var/cache/apt/archives | head -n50
insgesamt 48660
drwxr-xr-x 2 root root       6 2007-03-12 14:13 partial
-rw-r--r-- 1 root root  567300 2007-03-09 03:17
libx11-6_2%3a1.0.3-6_i386.deb
-rw-r--r-- 1 root root  157038 2007-03-09 03:17
libx11-data_2%3a1.0.3-6_all.deb
-rw-r--r-- 1 root root 1268796 2007-03-09 03:17
libx11-dev_2%3a1.0.3-6_i386.deb
-rw-r--r-- 1 root root 1527904 2007-03-08 18:47
libavcodec0d_0.cvs20060823-7_i386.deb
-rw-r--r-- 1 root root   36862 2007-03-08 18:47
libpostproc0d_0.cvs20060823-7_i386.deb
-rw-r--r-- 1 root root  132350 2007-03-07 19:02
libvisual-0.4-0_0.4.0-1.1_i386.deb
-rw-r--r-- 1 root root 9039658 2007-03-07 11:02
iceweasel_2.0.0.2+dfsg-3_i386.deb
-rw-r--r-- 1 root root   80258 2007-03-07 11:02
iceweasel-gnome-support_2.0.0.2+dfsg-3_i386.deb
-rw-r--r-- 1 root root   46278 2007-03-07 03:47
comerr-dev_2.1-1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root   86822 2007-03-07 03:47
e2fslibs_1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root  596094 2007-03-07 03:47
e2fsprogs_1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root   43370 2007-03-07 03:47
libblkid1_1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root   31114 2007-03-07 03:47
libcomerr2_1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root   37158 2007-03-07 03:47
libss2_1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root   33418 2007-03-07 03:47
libuuid1_1.39+1.40-WIP-2006.11.14+dfsg-2_i386.deb
-rw-r--r-- 1 root root   18116 2007-03-06 19:17
libglu1-xorg-dev_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root  334288 2007-03-06 19:17
x11-common_1%3a7.1.0-15_i386.deb
-rw-r--r-- 1 root root   18110 2007-03-06 19:17
xlibmesa-dri_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18112 2007-03-06 19:17
xlibmesa-gl_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18122 2007-03-06 19:17
xlibmesa-gl-dev_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18134 2007-03-06 19:17
xlibs-data_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18248 2007-03-06 19:17
xlibs-static-dev_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18384 2007-03-06 19:17
xorg_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root  442862 2007-03-06 19:17
xserver-xorg_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18188 2007-03-06 19:17
xserver-xorg-input-all_1%3a7.1.0-15_i386.deb
-rw-r--r-- 1 root root   18326 2007-03-06 19:17
xserver-xorg-video-all_1%3a7.1.0-15_i386.deb
-rw-r--r-- 1 root root   18160 2007-03-06 19:17
x-window-system_1%3a7.1.0-15_all.deb
-rw-r--r-- 1 root root   18170 2007-03-06 19:17
x-window-system-core_1%3a7.1.0-15_all.deb
-rw-r----- 1 root root       0 2007-03-06 14:14 lock
-rw-r--r-- 1 root root   82452 2007-03-06 12:47
libgksu2-0_2.0.3-7_i386.deb
-rw-r--r-- 1 root root  302844 2007-03-05 20:32 tcpdump_3.9.5-2_i386.deb
-rw-r--r-- 1 root root  616078 2007-03-05 18:32
openssh-client_1%3a4.3p2-9_i386.deb
-rw-r--r-- 1 root root  221646 2007-03-05 18:32
openssh-server_1%3a4.3p2-9_i386.deb
-rw-r--r-- 1 root root   82520 2007-03-05 18:32
libsensors3_1%3a2.10.1-3_i386.deb
-rw-r--r-- 1 root root  501988 2007-03-05 18:32
lm-sensors_1%3a2.10.1-3_i386.deb
-rw-r--r-- 1 root root    1054 2007-03-05 17:32 ssh_1%3a4.3p2-9_all.deb
-rw-r--r-- 1 root root   60830 2007-03-04 22:47
gtk2-engines-pixbuf_2.8.20-7_i386.deb
-rw-r--r-- 1 root root 1620154 2007-03-04 22:47
libgtk2.0-0_2.8.20-7_i386.deb
-rw-r--r-- 1 root root    7168 2007-03-04 22:47
libgtk2.0-bin_2.8.20-7_all.deb
-rw-r--r-- 1 root root 3755056 2007-03-04 22:47
libgtk2.0-common_2.8.20-7_all.deb
-rw-r--r-- 1 root root  334388 2007-03-04 20:32 ppp_2.4.4rel-7_i386.deb
-rw-r--r-- 1 root root 5497542 2007-03-04 16:02 ekiga_2.0.3-4_i386.deb
-rw-r--r-- 1 root root  142134 2007-03-04 16:02
gnomemeeting_2.0.3-4_all.deb
-rw-r--r-- 1 root root   76044 2007-03-04 13:32
libpth20_2.0.7-6_i386.deb
-rw-r--r-- 1 root root   62356 2007-03-03 22:17
libvolume-id0_0.105-3_i386.deb
-rw-r--r-- 1 root root  263126 2007-03-03 22:17 udev_0.105-3_i386.deb
-rw-r--r-- 1 root root  799252 2007-02-27 20:02
login_1%3a4.0.18.1-7_i386.deb
-rw-r--r-- 1 root root  789268 2007-02-27 20:02
passwd_1%3a4.0.18.1-7_i386.deb



-- System Information:
Debian Release: 4.0
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17.7-workstation-sws2-2.2.7
Locale: LANG=de_DE at euro, LC_CTYPE=de_DE at euro (charmap=ISO-8859-15)

Versions of packages avahi-daemon depends on:
ii  adduser                     3.102        Add and remove users and groups
ii  dbus                        1.0.2-1      simple interprocess messaging syst
ii  libavahi-common3            0.6.16-2     Avahi common library
ii  libavahi-core4              0.6.16-2     Avahi's embeddable mDNS/DNS-SD lib
ii  libc6                       2.3.6.ds1-13 GNU C Library: Shared libraries
ii  libcap1                     1:1.10-14    support for getting/setting POSIX.
ii  libdaemon0                  0.10-1       lightweight C library for daemons
ii  libdbus-1-3                 1.0.2-1      simple interprocess messaging syst
ii  libexpat1                   1.95.8-3.4   XML parsing C library - runtime li

Versions of packages avahi-daemon recommends:
ii  libnss-mdns                   0.9-0.2    NSS module for Multicast DNS name 

-- no debconf information




More information about the Pkg-utopia-maintainers mailing list