Conky crashes when multiple weather objects are created

Bug #780741 reported by James Brierley
26
This bug affects 6 people
Affects Status Importance Assigned to Milestone
Conky
Unknown
Unknown
conky (Debian)
Fix Released
Unknown
conky (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

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.

Revision history for this message
rupert (r-plumridge) wrote :
Download full text (6.1 KiB)

I get the same error, also using a forecast script:

*** longjmp causes uninitialized stack frame ***: conky terminated
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(__fortify_fail+0x50)[0x862df0]
/lib/i386-linux-gnu/libc.so.6(+0xe5d5a)[0x862d5a]
/usr/lib/libcurl-gnutls.so.4(+0x8b08)[0x1c9b08]
[0xfb0400]
conky[0x80880d2]
conky[0x806ee37]
conky[0x8077a9f]
conky[0x807b785]
conky[0x807bf94]
/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x793e37]
conky[0x804e6b1]
======= Memory map: ========
00110000-00135000 r-xp 00000000 08:01 1445217 /usr/lib/liblua5.1.so.0.0.0
00135000-00136000 r--p 00024000 08:01 1445217 /usr/lib/liblua5.1.so.0.0.0
00136000-00137000 rw-p 00025000 08:01 1445217 /usr/lib/liblua5.1.so.0.0.0
00137000-00144000 r-xp 00000000 08:01 1451146 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
00144000-00145000 r--p 0000c000 08:01 1451146 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
00145000-00146000 rw-p 0000d000 08:01 1451146 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
00146000-0014a000 r-xp 00000000 08:01 1442863 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
0014a000-0014b000 r--p 00003000 08:01 1442863 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
0014b000-0014c000 rw-p 00004000 08:01 1442863 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
0014c000-0015f000 r-xp 00000000 08:01 3145969 /lib/i386-linux-gnu/libz.so.1.2.3.4
0015f000-00160000 r--p 00012000 08:01 3145969 /lib/i386-linux-gnu/libz.so.1.2.3.4
00160000-00161000 rw-p 00013000 08:01 3145969 /lib/i386-linux-gnu/libz.so.1.2.3.4
00162000-001ab000 r-xp 00000000 08:01 1448247 /usr/lib/libImlib2.so.1.4.2
001ab000-001ac000 r--p 00048000 08:01 1448247 /usr/lib/libImlib2.so.1.4.2
001ac000-001ad000 rw-p 00049000 08:01 1448247 /usr/lib/libImlib2.so.1.4.2
001ad000-001c1000 rw-p 00000000 00:00 0
001c1000-0020d000 r-xp 00000000 08:01 1443997 /usr/lib/libcurl-gnutls.so.4.2.0
0020d000-0020e000 r--p 0004c000 08:01 1443997 /usr/lib/libcurl-gnutls.so.4.2.0
0020e000-0020f000 rw-p 0004d000 08:01 1443997 /usr/lib/libcurl-gnutls.so.4.2.0
0020f000-002d6000 r-xp 00000000 08:01 1449806 /usr/lib/libasound.so.2.0.0
002d6000-002da000 r--p 000c6000 08:01 1449806 /usr/lib/libasound.so.2.0.0
002da000-002db000 rw-p 000ca000 08:01 1449806 /usr/lib/libasound.so.2.0.0
002db000-002e3000 r-xp 00000000 08:01 1442363 /usr/lib/i386-linux-gnu/libXrender.so.1.3.0
002e3000-002e4000 r--p 00007000 08:01 1442363 /usr/lib/i386-linux-gnu/libXrender.so.1.3.0
002e4000-002e5000 rw-p 00008000 08:01 1442363 /usr/lib/i386-linux-gnu/libXrender.so.1.3.0
002e5000-00322000 r-xp 00000000 08:01 3145750 /lib/i386-linux-gnu/libpcre.so.3.12.1
00322000-00323000 r--p 0003c000 08:01 3145750 /lib/i386-linux-gnu/libpcre.so.3.12.1
00323000-00324000 rw-p 0003d000 08:01 3145750 /lib/i386-linux-gnu/libpcre.so.3.12.1
00324000-00326000 r-xp 00000000 08:01 1447739 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
00326000-00327000 r--p 00001000 08:01 1447739 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
00327000-00328000 rw-p 00002000 08:01 1447739 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
00328000-0032c000 r-xp 00000000 08:01 1447706 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
0032c0...

Read more...

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in conky (Ubuntu):
status: New → Confirmed
Revision history for this message
Vincent Cheng (vincent-c) wrote :

IIRC this bug was fixed in conky 1.8.1; please mark this bug as confirmed if you can still reproduce this bug in conky >= 1.8.1.

Changed in conky (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Vincent Cheng (vincent-c) wrote :

It turns out that this isn't actually fixed, and is still reproducible in 1.9.0. I've forwarded this upstream and will re-open this bug report.

Revision history for this message
Vincent Cheng (vincent-c) wrote :

Errr...looks like I can't actually re-open this bug report. Launchpad can be so confusing sometimes...

Changed in conky (Debian):
status: Unknown → Confirmed
Changed in conky (Debian):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.