Conky 1.8 issue

Hi,
after conky update it stop displaying interface address.

My config has line:
Code:
sk1: ${addr sk1}

By fact conky displays:
Code:
sk1: ${addr}
In 1.7 all worked well.
 
Conky 1.8 looks broken to me. Even after commenting the addr lines, it exits on signal 11.
 
conky crash

Hello,

After upgrading to 8.1, conky coredumps.
Every other application works fine. All my ports are up to date, and i
also recompiled all of them.

Running it with gdb shows this:

Code:
...
Conky: desktop window (1200003) is subwindow of root window (15a)
Conky: window type - desktop
Conky: drawing to created window (0x2c00001)
Conky: drawing to double buffer

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 80220a900 (LWP 100290)]
0x0000000801eaa794 in _pthread_mutex_init_calloc_cb ()
from /lib/libc.so.7

Does anyone have any ideas?
 
Conky 1.8? Doesn't work, stick with conky-1.7.2_7 for now.
 
  • Thanks
Reactions: G4
I took a brief look at the code and did some debugging and didn't look like conky's freebsd.c freeing anything of the kvm's memory space. Usually dies on the 2nd or 3rd run through proc_find_top(). I'm going to take a closer look at stack vs. kernel addresses for all the vars.

Code:
Program received signal SIGSEGV, Segmentation fault.
0x283cb438 in malloc_usable_size () from /lib/libc.so.7
(gdb) bt
#0  0x283cb438 in malloc_usable_size () from /lib/libc.so.7
#1  0x283cdaf3 in malloc_usable_size () from /lib/libc.so.7
#2  0x283cea5a in free () from /lib/libc.so.7
#3  0x28335e5f in kvm_getprocs () from /lib/libkvm.so.5
#4  0x0804c5b6 in proc_find_top (cpu=0x8088424, mem=0x808844c, time=0x8088474) at freebsd.c:751
#5  0x0804c994 in update_top () at freebsd.c:593
#6  0x08052f7b in run_update_callback (data=0x2888f250) at common.c:380
#7  0x2834740c in pthread_getprio () from /lib/libthr.so.3
#8  0x00000000 in ?? ()

This suspicious message is normally printed when not trace through the debugger. Not sure which of the 3 calls in freebsd.c is causing this.

kvm_open: kinfo_proc size mismatch (expected 768, got -1515870811)
 
My buest guess right now is that apears to be threading issue. Although libkvm is fully re-entrant, there is probably a subtle problem in the way or order things are being called.

I did notice that some serious cleanup has gone into the git repository in regards to this file and that way the klunky way data is collected and calculated has been corrected.
 
Works for me (8.1/amd64). Finally running with Xft again, much better looking ;)

Download the patch.txt file from the PR, put it in /usr/ports/sysutils/conky, run [cmd=]cd /usr/ports/sysutils/conky && patch < patch.txt[/cmd] and either install or upgrade your Conky.
 
Thanks mate. Unfortunately that's not all... It appears there are rogue pipe descriptors in exec, so if you're using exec/execi/texeci and friends, you'll run into kern.ipc.maxpipekva. I'll follow-up to the above PR with a revised patch. <sigh>
 
I 'execi' two sysctl values for temperature reading every 10 seconds, but haven't seen a problem with either.
 
It takes some time to fill up maxpipekva. If you monitor kern.ipc.pipekva you should see a steady rise...

For the impatient, here's a link to the second patch (apply along with the one in the PR): link.
 
That appears to have helped, yes (though it would have taken a loooong time to reach my kern.ipc.maxpipekva ;) )
 
Back
Top