Binary package hint: conky
Using Ubuntu 11.04 on AMD64, but the problem also happened on my i386 netbook. When I create weather and weather_forecast objects together in $HOME/.conkyrc, Conky (version 1.8.0-1ubuntu1) eventually crashes. Here's the TEXT section of a basic conkyrc that triggers the crash:
TEXT
$nodename - $sysname $kernel on $machine
$hr
Today's weather: ${weather http://xoap.weather.com/weather/local/ UKXX0079 temperature 6}C ${weather http://xoap.weather.com/weather/local/ UKXX0079 cloud_cover 6}
Tomorrow's weather: ${weather_forecast http://xoap.weather.com/weather/local/ UKXX0079 1 hi 7}C ${weather_forecast http://xoap.weather.com/weather/local/ UKXX0079 1 forecast 7}
$hr
${color grey}Uptime:$color $uptime
${color grey}Frequency (in MHz):$color $freq
${color grey}Frequency (in GHz):$color $freq_g
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${color grey}Processes:$color $processes ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
/ $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
${color grey}Networking:
Up:$color ${upspeed wlan0} ${color grey} - Down:$color ${downspeed wlan0}
${color grey}Current internal IP:$color
${addr wlan0}
$hr
${color grey}Name PID CPU% MEM%
${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
A few minutes later, Conky crashes with the following dump:
*** longjmp causes uninitialized stack frame ***: conky terminated
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x7f18d48d71d7]
/lib/x86_64-linux-gnu/libc.so.6(+0xfe169)[0x7f18d48d7169]
/lib/x86_64-linux-gnu/libc.so.6(__longjmp_chk+0x33)[0x7f18d48d70d3]
/usr/lib/libcurl-gnutls.so.4(+0xbb45)[0x7f18d53bfb45]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfc60)[0x7f18d6fd8c60]
/lib/x86_64-linux-gnu/libc.so.6(__select+0x33)[0x7f18d48b7143]
conky[0x4333b5]
conky[0x433ace]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xff)[0x7f18d47f7eff]
conky[0x408c69]
======= Memory map: ========
00400000-00466000 r-xp 00000000 08:01 11543395 /usr/bin/conky
00665000-00666000 r--p 00065000 08:01 11543395 /usr/bin/conky
00666000-00668000 rw-p 00066000 08:01 11543395 /usr/bin/conky
00668000-00676000 rw-p 00000000 00:00 0
00c8a000-00d19000 rw-p 00000000 00:00 0 [heap]
7f18c79d5000-7f18c79ea000 r-xp 00000000 08:01 27266713 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18c79ea000-7f18c7be9000 ---p 00015000 08:01 27266713 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18c7be9000-7f18c7bea000 r--p 00014000 08:01 27266713 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18c7bea000-7f18c7beb000 rw-p 00015000 08:01 27266713 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18c7beb000-7f18c7bf2000 r-xp 00000000 08:01 27266729 /lib/x86_64-linux-gnu/libnss_dns-2.13.so
7f18c7bf2000-7f18c7df1000 ---p 00007000 08:01 27266729 /lib/x86_64-linux-gnu/libnss_dns-2.13.so
7f18c7df1000-7f18c7df2000 r--p 00006000 08:01 27266729 /lib/x86_64-linux-gnu/libnss_dns-2.13.so
7f18c7df2000-7f18c7df3000 rw-p 00007000 08:01 27266729 /lib/x86_64-linux-gnu/libnss_dns-2.13.so
7f18c7df3000-7f18c7dff000 r-xp 00000000 08:01 27266731 /lib/x86_64-linux-gnu/libnss_files-2.13.so
7f18c7dff000-7f18c7ffe000 ---p 0000c000 08:01 27266731 /lib/x86_64-linux-gnu/libnss_files-2.13.so
7f18c7ffe000-7f18c7fff000 r--p 0000b000 08:01 27266731 /lib/x86_64-linux-gnu/libnss_files-2.13.so
7f18c7fff000-7f18c8000000 rw-p 0000c000 08:01 27266731 /lib/x86_64-linux-gnu/libnss_files-2.13.so
7f18c8000000-7f18c8042000 rw-p 00000000 00:00 0
7f18c8042000-7f18cc000000 ---p 00000000 00:00 0
7f18cc006000-7f18cc008000 r-xp 00000000 08:01 27263044 /lib/libnss_mdns4_minimal.so.2
7f18cc008000-7f18cc207000 ---p 00002000 08:01 27263044 /lib/libnss_mdns4_minimal.so.2
7f18cc207000-7f18cc208000 r--p 00001000 08:01 27263044 /lib/libnss_mdns4_minimal.so.2
7f18cc208000-7f18cc209000 rw-p 00002000 08:01 27263044 /lib/libnss_mdns4_minimal.so.2
7f18cc209000-7f18cc20a000 ---p 00000000 00:00 0
7f18cc20a000-7f18cca0a000 rw-p 00000000 00:00 0
7f18cca0a000-7f18cca0b000 ---p 00000000 00:00 0
7f18cca0b000-7f18cd20b000 rw-p 00000000 00:00 0
7f18cd20b000-7f18cd25a000 r--p 00000000 08:01 12584036 /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf
7f18cd25a000-7f18cd25b000 r--s 00000000 08:01 9175185 /var/cache/fontconfig/c05880de57d1f5e948fdfacc138775d9-le64.cache-3
7f18cd25b000-7f18cd264000 r--s 00000000 08:01 9175182 /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-le64.cache-3
7f18cd264000-7f18cd266000 r--s 00000000 08:01 9175183 /var/cache/fontconfig/99e8ed0e538f840c565b6ed5dad60d56-le64.cache-3
7f18cd266000-7f18cd269000 r--s 00000000 08:01 9175193 /var/cache/fontconfig/e383d7ea5fbe662a33d9b44caf393297-le64.cache-3
7f18cd269000-7f18cd26b000 r--s 00000000 08:01 9175170 /var/cache/fontconfig/2cd17615ca594fa2959ae173292e504c-le64.cache-3
7f18cd26b000-7f18cd26c000 r--s 00000000 08:01 9175194 /var/cache/fontconfig/e7071f4a29fa870f4323321c154eba04-le64.cache-3
7f18cd26c000-7f18cd270000 r--s 00000000 08:01 9175179 /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-le64.cache-3
7f18cd270000-7f18cd271000 r--s 00000000 08:01 9175174 /var/cache/fontconfig/4c73fe0c47614734b17d736dbde7580a-le64.cache-3
7f18cd271000-7f18cd272000 r--s 00000000 08:01 9175167 /var/cache/fontconfig/0d8c3b2ac0904cb8a57a757ad11a4a08-le64.cache-3
7f18cd272000-7f18cd273000 r--s 00000000 08:01 9175177 /var/cache/fontconfig/6a53c69dea097a2d716e069445527da8-le64.cache-3
7f18cd273000-7f18cd279000 r--s 00000000 08:01 9175184 /var/cache/fontconfig/a755afe4a08bf5b97852ceb7400b47bc-le64.cache-3
7f18cd279000-7f18cd282000 r--s 00000000 08:01 9182708 /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-le64.cache-3
7f18cd282000-7f18cd292000 r--s 00000000 08:01 9175168 /var/cache/fontconfig/0f34bcd4b6ee430af32735b75db7f02b-le64.cache-3
7f18cd292000-7f18cd295000 r--s 00000000 08:01 9175190 /var/cache/fontconfig/d60319d88cac85ba9e1a07bd06cfbb8c-le64.cache-3
7f18cd295000-7f18cd296000 r--s 00000000 08:01 9175172 /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-le64.cache-3
7f18cd296000-7f18cd2a0000 r--s 00000000 08:01 9175189 /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-le64.cache-3
7f18cd2a0000-7f18cd2a3000 r--s 00000000 08:01 9176046 /var/cache/fontconfig/e13b20fdb08344e0e664864cc2ede53d-le64.cache-3
It looks like an issue with libcurl. I'm not too familiar with the code of either libcurl or Conky itself, but as far as I'm aware Conky spins off a separate thread to do anything with curl. When Googling for some more information, I found this [http://sourceforge.net/tracker/index.php?func=detail&aid=3148757&group_id=28236&atid=392777] which suggests that the longjmps are playing havoc with multithreaded apps trying to use libcurl. A Python solution is presented to disable thread-unfriendly behaviour. I don't know how relevant this is to patching Conky, if indeed it is a Conky problem.
I get the same error, also using a forecast script:
*** longjmp causes uninitialized stack frame ***: conky terminated linux-gnu/ libc.so. 6(__fortify_ fail+0x50) [0x862df0] linux-gnu/ libc.so. 6(+0xe5d5a) [0x862d5a] libcurl- gnutls. so.4(+0x8b08) [0x1c9b08] linux-gnu/ libc.so. 6(__libc_ start_main+ 0xe7)[0x793e37] liblua5. 1.so.0. 0.0 liblua5. 1.so.0. 0.0 liblua5. 1.so.0. 0.0 i386-linux- gnu/libXext. so.6.4. 0 i386-linux- gnu/libXext. so.6.4. 0 i386-linux- gnu/libXext. so.6.4. 0 i386-linux- gnu/libXfixes. so.3.1. 0 i386-linux- gnu/libXfixes. so.3.1. 0 i386-linux- gnu/libXfixes. so.3.1. 0 linux-gnu/ libz.so. 1.2.3.4 linux-gnu/ libz.so. 1.2.3.4 linux-gnu/ libz.so. 1.2.3.4 libImlib2. so.1.4. 2 libImlib2. so.1.4. 2 libImlib2. so.1.4. 2 libcurl- gnutls. so.4.2. 0 libcurl- gnutls. so.4.2. 0 libcurl- gnutls. so.4.2. 0 libasound. so.2.0. 0 libasound. so.2.0. 0 libasound. so.2.0. 0 i386-linux- gnu/libXrender. so.1.3. 0 i386-linux- gnu/libXrender. so.1.3. 0 i386-linux- gnu/libXrender. so.1.3. 0 linux-gnu/ libpcre. so.3.12. 1 linux-gnu/ libpcre. so.3.12. 1 linux-gnu/ libpcre. so.3.12. 1 i386-linux- gnu/libXau. so.6.0. 0 i386-linux- gnu/libXau. so.6.0. 0 i386-linux- gnu/libXau. so.6.0. 0 i386-linux- gnu/libXdmcp. so.6.0. 0
======= Backtrace: =========
/lib/i386-
/lib/i386-
/usr/lib/
[0xfb0400]
conky[0x80880d2]
conky[0x806ee37]
conky[0x8077a9f]
conky[0x807b785]
conky[0x807bf94]
/lib/i386-
conky[0x804e6b1]
======= Memory map: ========
00110000-00135000 r-xp 00000000 08:01 1445217 /usr/lib/
00135000-00136000 r--p 00024000 08:01 1445217 /usr/lib/
00136000-00137000 rw-p 00025000 08:01 1445217 /usr/lib/
00137000-00144000 r-xp 00000000 08:01 1451146 /usr/lib/
00144000-00145000 r--p 0000c000 08:01 1451146 /usr/lib/
00145000-00146000 rw-p 0000d000 08:01 1451146 /usr/lib/
00146000-0014a000 r-xp 00000000 08:01 1442863 /usr/lib/
0014a000-0014b000 r--p 00003000 08:01 1442863 /usr/lib/
0014b000-0014c000 rw-p 00004000 08:01 1442863 /usr/lib/
0014c000-0015f000 r-xp 00000000 08:01 3145969 /lib/i386-
0015f000-00160000 r--p 00012000 08:01 3145969 /lib/i386-
00160000-00161000 rw-p 00013000 08:01 3145969 /lib/i386-
00162000-001ab000 r-xp 00000000 08:01 1448247 /usr/lib/
001ab000-001ac000 r--p 00048000 08:01 1448247 /usr/lib/
001ac000-001ad000 rw-p 00049000 08:01 1448247 /usr/lib/
001ad000-001c1000 rw-p 00000000 00:00 0
001c1000-0020d000 r-xp 00000000 08:01 1443997 /usr/lib/
0020d000-0020e000 r--p 0004c000 08:01 1443997 /usr/lib/
0020e000-0020f000 rw-p 0004d000 08:01 1443997 /usr/lib/
0020f000-002d6000 r-xp 00000000 08:01 1449806 /usr/lib/
002d6000-002da000 r--p 000c6000 08:01 1449806 /usr/lib/
002da000-002db000 rw-p 000ca000 08:01 1449806 /usr/lib/
002db000-002e3000 r-xp 00000000 08:01 1442363 /usr/lib/
002e3000-002e4000 r--p 00007000 08:01 1442363 /usr/lib/
002e4000-002e5000 rw-p 00008000 08:01 1442363 /usr/lib/
002e5000-00322000 r-xp 00000000 08:01 3145750 /lib/i386-
00322000-00323000 r--p 0003c000 08:01 3145750 /lib/i386-
00323000-00324000 rw-p 0003d000 08:01 3145750 /lib/i386-
00324000-00326000 r-xp 00000000 08:01 1447739 /usr/lib/
00326000-00327000 r--p 00001000 08:01 1447739 /usr/lib/
00327000-00328000 rw-p 00002000 08:01 1447739 /usr/lib/
00328000-0032c000 r-xp 00000000 08:01 1447706 /usr/lib/
0032c0...