[rrd-developers] rrdtool: *** glibc detected *** free(): invalid pointer: 0x08056450 ***
Joachim Weller
JoachimWeller at web.de
Thu Jul 17 21:00:55 CEST 2008
Bernhard Fischer wrote:
> You could provide a "bt f" from gdb
>
I tried this one, by substituting the call to rrdtool with "gdb bt f
--args rrdtool graph ..." (as a newbie to gdb, hope this was correct)
but got only (no debug symbols found). Then I tried to run it with
strace. Maybe this output gives some more info:
execve("/usr/bin/rrdtool", ["rrdtool", "graph",
"../png/SolvisData-1.png", "--imgformat", "PNG", "--interlaced",
"--slope-mode", "--alt-autoscale-max", "--alt-autoscale-min", "--start",
"1216073697", "--end", "1216160097", "-l", "-5", "-u", ...], [/* 21 vars
*/]) = 0
brk(0) = 0x804a000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f05000
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=75829, ...}) = 0
mmap2(NULL, 75829, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7ef2000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/usr/lib/librrd.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260a\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=281332, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7ef1000
mmap2(NULL, 289856, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7eaa000
mmap2(0xb7eeb000, 20480, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x40) = 0xb7eeb000
mmap2(0xb7ef0000, 3136, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7ef0000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/usr/lib/libpng12.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200=\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=139660, ...}) = 0
mmap2(NULL, 142572, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7e87000
mmap2(0xb7ea9000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x21) = 0xb7ea9000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/usr/lib/libz.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\30"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=81012, ...}) = 0
mmap2(NULL, 83740, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0xb7e72000
mmap2(0xb7e86000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13) = 0xb7e86000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 at 4\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=149328, ...}) = 0
mmap2(NULL, 151680, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7e4c000
mmap2(0xb7e70000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x23) = 0xb7e70000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300e\1"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1413540, ...}) = 0
mmap2(NULL, 1418864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7cf1000
mmap2(0xb7e46000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x155) = 0xb7e46000
mmap2(0xb7e49000, 9840, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7e49000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/usr/lib/libfreetype.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340x\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=449240, ...}) = 0
mmap2(NULL, 452152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7c82000
mmap2(0xb7ced000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6a) = 0xb7ced000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/usr/lib/libart_lgpl_2.so.2", O_RDONLY) = 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\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=84704, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7c81000
mmap2(NULL, 87620, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0xb7c6b000
mmap2(0xb7c80000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14) = 0xb7c80000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7c6a000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7c6a6b0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb7e46000, 4096, PROT_READ) = 0
munmap(0xb7ef2000, 75829) = 0
brk(0) = 0x804a000
brk(0x806b000) = 0x806b000
open("/etc/localtime", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f04000
read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\10\0\0\0\10\0"...,
4096) = 2295
_llseek(3, -28, [2267], SEEK_CUR) = 0
read(3, "\nCET-1CEST,M3.5.0,M10.5.0/3\n", 4096) = 28
close(3) = 0
munmap(0xb7f04000, 4096) = 0
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=17346192, ...}) = 0
mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7a6a000
mmap2(NULL, 258048, PROT_READ, MAP_PRIVATE, 3, 0x357) = 0xb7a2b000
mmap2(NULL, 925696, PROT_READ, MAP_PRIVATE, 3, 0x477) = 0xb7949000
close(3) = 0
time(NULL) = 1216316986
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
time(NULL) = 1216316986
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
time(NULL) = 1216316986
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
time(NULL) = 1216316986
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2295, ...}) = 0
open("/usr/share/rrdtool/librrd2/DejaVuSansMono-Roman.ttf", O_RDONLY) = 3
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=60444, ...}) = 0
mmap2(NULL, 60444, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb793a000
close(3) = 0
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=25700, ...}) = 0
mmap2(NULL, 25700, PROT_READ, MAP_SHARED, 3, 0) = 0xb7933000
close(3) = 0
munmap(0xb793a000, 60444) = 0
open("/usr/share/rrdtool/librrd2/DejaVuSansMono-Roman.ttf", O_RDONLY) = 3
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=60444, ...}) = 0
mmap2(NULL, 60444, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb793a000
close(3) = 0
munmap(0xb793a000, 60444) = 0
brk(0x80a5000) = 0x80a5000
brk(0x808c000) = 0x808c000
open("SolvisData-1year.rrd", O_RDONLY) = 3
fadvise64(3, 0, 0, POSIX_FADV_RANDOM) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=1157212688, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7948000
read(3, "RRD\0000003\0\0\0\0/%\300\307C+\37[\v\0\0\0\3\0\0\0h\1"...,
4096) = 4096
read(3, "\0\0\0\0\30\266\326$\313fC at d\311/\226\374\342)@\306i\3"...,
4096) = 4096
_llseek(3, 0, [8192], SEEK_CUR) = 0
_llseek(3, 1982464, [1982464], SEEK_SET) = 0
read(3, "\0\0\0\0\0\0000 at fffff\246N@\232\231\231\231\231\0319@("...,
4096) = 4096
open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 4
writev(4, [{"*** glibc detected *** ", 23}, {"rrdtool", 7}, {": ", 2},
{"free(): invalid pointer", 23}, {": 0x", 4}, {"08051a50", 8}, {"
***\n", 5}], 7) = 72
open("/etc/ld.so.cache", O_RDONLY) = 5
fstat64(5, {st_mode=S_IFREG|0644, st_size=75829, ...}) = 0
mmap2(NULL, 75829, PROT_READ, MAP_PRIVATE, 5, 0) = 0xb7ef2000
close(5) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/lib/libgcc_s.so.1", O_RDONLY) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\34"...,
512) = 512
mmap2(NULL, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE,
-1, 0) = 0xb7733000
munmap(0xb7733000, 839680) = 0
munmap(0xb7900000, 208896) = 0
mprotect(0xb7800000, 135168, PROT_READ|PROT_WRITE) = 0
fstat64(5, {st_mode=S_IFREG|0644, st_size=49644, ...}) = 0
mmap2(NULL, 52776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 5, 0)
= 0xb793b000
mmap2(0xb7947000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 5, 0xb) = 0xb7947000
close(5) = 0
munmap(0xb7ef2000, 75829) = 0
write(4, "======= Backtrace: =========\n", 29) = 29
writev(4, [{"/lib/i686/cmov/libc.so.6", 24}, {"[0x", 3}, {"b7d5f564",
8}, {"]\n", 2}], 4) = 37
writev(4, [{"/lib/i686/cmov/libc.so.6", 24}, {"(", 1}, {"cfree", 5},
{"+0x", 3}, {"96", 2}, {")", 1}, {"[0x", 3}, {"b7d61766", 8}, {"]\n",
2}], 9) = 49
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"rrd_free", 8},
{"+0x", 3}, {"24", 2}, {")", 1}, {"[0x", 3}, {"b7ed0294", 8}, {"]\n",
2}], 9) = 48
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"rrd_fetch_fn", 12},
{"+0x", 3}, {"4d3", 3}, {")", 1}, {"[0x", 3}, {"b7eb3303", 8}, {"]\n",
2}], 9) = 53
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"data_fetch", 10},
{"+0x", 3}, {"238", 3}, {")", 1}, {"[0x", 3}, {"b7eba9c8", 8}, {"]\n",
2}], 9) = 51
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"graph_paint", 11},
{"+0x", 3}, {"44", 2}, {")", 1}, {"[0x", 3}, {"b7ebae44", 8}, {"]\n",
2}], 9) = 51
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"rrd_graph", 9},
{"+0x", 3}, {"cd", 2}, {")", 1}, {"[0x", 3}, {"b7ebd02d", 8}, {"]\n",
2}], 9) = 49
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"HandleInputLine",
15}, {"+0x", 3}, {"10b9", 4}, {")", 1}, {"[0x", 3}, {"b7ecbc89", 8},
{"]\n", 2}], 9) = 57
writev(4, [{"/usr/lib/librrd.so.2", 20}, {"(", 1}, {"main", 4}, {"+0x",
3}, {"92", 2}, {")", 1}, {"[0x", 3}, {"b7ecbe62", 8}, {"]\n", 2}], 9) = 44
writev(4, [{"/lib/i686/cmov/libc.so.6", 24}, {"(", 1},
{"__libc_start_main", 17}, {"+0x", 3}, {"e6", 2}, {")", 1}, {"[0x", 3},
{"b7d07456", 8}, {"]\n", 2}], 9) = 61
writev(4, [{"rrdtool", 7}, {"(", 1}, {"main", 4}, {"+0x", 3}, {"35", 2},
{")", 1}, {"[0x", 3}, {"8048411", 7}, {"]\n", 2}], 9) = 30
write(4, "======= Memory map: ========\n", 29) = 29
open("/proc/self/maps", O_RDONLY) = 5
read(5, "08048000-08049000 r-xp 00000000 "..., 1024) = 1024
write(4, "08048000-08049000 r-xp 00000000 "..., 1024) = 1024
read(5, "0-b7ced000 r-xp 00000000 08:04 2"..., 1024) = 1024
write(4, "0-b7ced000 r-xp 00000000 08:04 2"..., 1024) = 1024
read(5, "3\nb7ef0000-b7ef2000 rw-p b7ef000"..., 1024) = 325
write(4, "3\nb7ef0000-b7ef2000 rw-p b7ef000"..., 325) = 325
read(5, "", 1024) = 0
close(5) = 0
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
rrdtool package info on the crashing system is:
Package: rrdtool
Priority: optional
Section: utils
Installed-Size: 1148
Maintainer: Debian RRDtool Team <rrdtool at ml.snow-crash.org>
Architecture: i386
Source: rrdtool (1.2.27-2)
Version: 1.2.27-2+b1
Depends: libc6 (>= 2.7-1), libpng12-0 (>= 1.2.13-4), librrd2 (>=
1.2.15), zlib1g (>= 1:1.1.4)
Suggests: librrds-perl
Filename: pool/main/r/rrdtool/rrdtool_1.2.27-2+b1_i386.deb
Size: 566148
MD5sum: 4f16a8d408f722cdebec48178a27ccd7
regards, Joachim
More information about the rrd-developers
mailing list