udda / multiload-ng

Modern graphical system monitor for any panel
http://udda.github.io/multiload-ng
GNU General Public License v2.0
147 stars 22 forks source link

ERROR:graph-mem.c:61:multiload_graph_mem_get_data: assertion failed #41

Closed spvkgn closed 8 years ago

spvkgn commented 8 years ago

There is some problem with 1.5.0 release, starting multiload-ng fails, so I tried to run in gdb (Ubuntu 12.04 32-bit):

$ gdb standalone/multiload-ng 
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /tmp/multiload-ng/standalone/multiload-ng...done.
(gdb) run
Starting program: /tmp/multiload-ng/standalone/multiload-ng 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
(multiload-ng:4299): multiload-ng-DEBUG: [multiload] Initialization complete
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'cpu' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'mem' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'net' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'swap' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'load' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'disk' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'temp' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'bat' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'parm' to [10, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [ui] Reading settings from object 0x80d2e78
(multiload-ng:4299): multiload-ng-DEBUG: [ui] Found color scheme: - -> (nil)
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'cpu'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'mem'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'net'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'swap'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'load'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'disk'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'temp'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Incomplete color list for graph 'bat'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'bat'
(multiload-ng:4299): multiload-ng-DEBUG: [multiload_colors_from_string] Loaded colors for graph 'parm'
(multiload-ng:4299): multiload-ng-DEBUG: [ui] Done reading settings. Closing object 0x80d2e78
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'cpu' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'mem' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'net' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'swap' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'load' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'disk' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'temp' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'bat' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'parm' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [multiload] New allocation for Multiload-ng container: 1,1
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Time stopped for graph 'cpu'
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Timer started for graph 'cpu' (interval: 1000 ms)
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Time stopped for graph 'mem'
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Timer started for graph 'mem' (interval: 1000 ms)
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Time stopped for graph 'swap'
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Timer started for graph 'swap' (interval: 1000 ms)
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Time stopped for graph 'disk'
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Timer started for graph 'disk' (interval: 1000 ms)
(multiload-ng:4299): multiload-ng-DEBUG: [multiload] Started 4 of 9 graphs
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] widget allocation for graph 'cpu': [40,30] resulting draw size: [40,30]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Graph 'cpu' allocated
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] widget allocation for graph 'mem': [40,30] resulting draw size: [40,30]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Graph 'mem' allocated
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] widget allocation for graph 'swap': [40,30] resulting draw size: [40,30]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Graph 'swap' allocated
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] widget allocation for graph 'disk': [40,30] resulting draw size: [40,30]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Graph 'disk' allocated
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'cpu' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'mem' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'net' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'swap' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'load' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'disk' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'temp' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'bat' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'parm' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [multiload] New allocation for Multiload-ng container: 167,34
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'cpu' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'mem' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'net' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'swap' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'load' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'disk' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'temp' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'bat' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [load-graph] Set size request of graph 'parm' to [40, -1]
(multiload-ng:4299): multiload-ng-DEBUG: [multiload] New allocation for Multiload-ng container: 167,34
**
multiload-ng:ERROR:graph-mem.c:61:multiload_graph_mem_get_data: assertion failed (r == 6): (5 == 6)

Program received signal SIGABRT, Aborted.
0xb7fdd428 in __kernel_vsyscall ()
udda commented 8 years ago

Thanks for the detailed report!

Multiload-ng expects a value that is not present in your system. This may be related to Ubuntu version, like other previous issues.

Can you please post the contents of your /proc/meminfo?

spvkgn commented 8 years ago
~ $ cat /proc/meminfo
MemTotal:        4134212 kB
MemFree:         1635544 kB
Buffers:          103932 kB
Cached:           983412 kB
SwapCached:       126108 kB
Active:          1239016 kB
Inactive:        1111332 kB
Active(anon):    1089848 kB
Inactive(anon):   373196 kB
Active(file):     149168 kB
Inactive(file):   738136 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:       3279752 kB
HighFree:        1145876 kB
LowTotal:         854460 kB
LowFree:          489668 kB
SwapTotal:       4096536 kB
SwapFree:        3157848 kB
Dirty:              1696 kB
Writeback:             0 kB
AnonPages:       1202816 kB
Mapped:           214016 kB
Shmem:            200028 kB
Slab:              51620 kB
SReclaimable:      27660 kB
SUnreclaim:        23960 kB
KernelStack:        3760 kB
PageTables:        13456 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     6163640 kB
Committed_AS:    4534224 kB
VmallocTotal:     122880 kB
VmallocUsed:       56856 kB
VmallocChunk:      31220 kB
HardwareCorrupted:     0 kB
AnonHugePages:    145408 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      854008 kB
DirectMap2M:       59392 kB
udda commented 8 years ago

OK, this has a trivial solution. Unfortunately it's hard for me to track problems like this, because it's a old system that I don't have access to, so I must wait for a bug report to fix them.

With the next commit you can use Multiload-ng again (unless other bugs arise :smile:). You will have to build from source until next release. thank you again for reporting!