Bug#36050: Suspect problems in libc6
Package: libc6
Version: 2.1.1-0.2
Severity: critical
I suspect that this version of libc6 is unstable. I am not sure at all,
but if this is true, then the severity: critical is justified.
These are the facts:
smail behaves strangely. It used to dump core. After a reboot, it begun
to work, but instead of delivering the mail it receives immediately, it
puts it in the outgoing queue (called input queue) and waits for the next
instance of smail to see that there is mail to send. I worked around this
problem by setting up a cron script which calls runq every minute.
sl@escher.north.de, which responded to a previous bug on smail describing
this behaviour, says that the same thing happened long ago, bcause of a bug
in libc, which is not present in libc 2.0.7.
I saw lpd die spontaneously, but this is not reproducible.
qps dump core immediately at start. The packages qps depends on, and qps
itself, were all updated before libc6, and qps worked.
What's sad is that trying to analyse qps core with gdb, or even trying to
run qps under gdb, makes gdb itself dump core.
Here is a trace of qps dying. Please let me know if I can test something
to help debugging this.
$ DISPLAY=0:0 strace qps
execve("/usr/bin/X11/qps", ["qps"], [/* 51 vars */]) = 0
brk(0) = 0x8084434
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
mmap(0, 17291, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40014000
close(3) = 0
open("/usr/X11R6/lib/libqt.so.1", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40019000
mmap(0, 1857956, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001a000
mprotect(0x40190000, 326052, PROT_NONE) = 0
mmap(0x40190000, 315392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x175000) = 0x40190000
mmap(0x401dd000, 10660, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x401dd000
close(3) = 0
open("/usr/lib/libstdc++.so.2.7.2", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 248236, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x401e0000
mprotect(0x40214000, 35244, PROT_NONE) = 0
mmap(0x40214000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x33000) = 0x40214000
mmap(0x4021b000, 6572, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4021b000
close(3) = 0
open("/lib/libm.so.6", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 115640, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4021d000
mprotect(0x40239000, 952, PROT_NONE) = 0
mmap(0x40239000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1b000) = 0x40239000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 979064, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4023a000
mprotect(0x40321000, 32888, PROT_NONE) = 0
mmap(0x40321000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xe6000) = 0x40321000
mmap(0x40326000, 12408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40326000
close(3) = 0
open("/usr/X11R6/lib/libX11.so.6", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 666796, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4032a000
mprotect(0x403c8000, 19628, PROT_NONE) = 0
mmap(0x403c8000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x9d000) = 0x403c8000
close(3) = 0
open("/usr/X11R6/lib/libXext.so.6", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 45384, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x403cd000
mprotect(0x403d7000, 4424, PROT_NONE) = 0
mmap(0x403d7000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x9000) = 0x403d7000
close(3) = 0
open("/usr/lib/libstdc++-libc6.0-1.so.2", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x403d9000
mmap(0, 276208, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x403da000
mprotect(0x40410000, 55024, PROT_NONE) = 0
mmap(0x40410000, 49152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x35000) = 0x40410000
mmap(0x4041c000, 5872, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4041c000
close(3) = 0
mprotect(0x401e0000, 212992, PROT_READ|PROT_WRITE) = 0
mprotect(0x401e0000, 212992, PROT_READ|PROT_EXEC) = 0
munmap(0x40014000, 17291) = 0
personality(PER_LINUX) = 0
getpid() = 184
brk(0) = 0x8084434
brk(0x808445c) = 0x808445c
brk(0x8085000) = 0x8085000
getppid() = 183
brk(0x8086000) = 0x8086000
open("/proc/183/cmdline", O_RDONLY) = 3
fstat(3, {st_mode=0, st_size=0, ...}) = 0
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++
-- System Information
Debian Release: potato
Kernel Version: Linux pot 2.0.34 #42 Wed Sep 23 08:44:47 CEST 1998 i586 unknown
Versions of the packages libc6 depends on:
ii ldso 1.9.10-1.2 The Linux dynamic linker, library and utilit
Reply to: