mirror of
https://github.com/Llewellynvdm/conky.git
synced 2024-11-05 21:07:52 +00:00
more fixes to new smp stuff, mainly in config parsing
git-svn-id: https://conky.svn.sourceforge.net/svnroot/conky/trunk/conky@213 7f574dfc-610e-0410-a909-a81674777703
This commit is contained in:
parent
e93155d26b
commit
52b2d75fad
208
README
208
README
@ -10,14 +10,14 @@ SYNOPSIS
|
||||
conky [options]
|
||||
|
||||
DESCRIPTION
|
||||
Conky is a system monitor for X originally based on the torsmo code.
|
||||
Since its original conception, Conky has changed a fair bit from its
|
||||
Conky is a system monitor for X originally based on the torsmo code.
|
||||
Since it's original conception, Conky has changed a fair bit from it's
|
||||
predecessor. Conky can display just about anything, either on your
|
||||
root desktop or in its own window. Conky has many built-in objects,
|
||||
as well as the ability to execute programs and scripts, then display
|
||||
root desktop or in it's own window. Conky has many built-in objects,
|
||||
as well as the ability to execute programs and scripts, then display
|
||||
the output from stdout.
|
||||
|
||||
We are always looking for help, and anyone interested in becoming a
|
||||
We are always looking for help, and anyone interested in becoming a
|
||||
developer is welcome. Please use the facilities at SourceForge to make
|
||||
bug reports, feature requests, and submit patches.
|
||||
|
||||
@ -26,9 +26,9 @@ DESCRIPTION
|
||||
COMPILING
|
||||
First, make sure you have the X development libraries installed, this
|
||||
should be a package along the lines of "libx11-dev or xorg-x11-dev".
|
||||
Gentoo users, Conky is in Gentoos Portage. Simply use "emerge conky"
|
||||
Gentoo users, Conky is in Gentoo's Portage. Simply use "emerge conky"
|
||||
for installation. There is also usually an up-to-date ebuild within
|
||||
Conkys package or in CVS.
|
||||
Conky's package or in CVS.
|
||||
|
||||
To compile and run Conky with all optional components:
|
||||
|
||||
@ -36,7 +36,7 @@ COMPILING
|
||||
|
||||
./configure --prefix=/usr --mandir=/usr/share/man
|
||||
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
|
||||
--localstatedir=/var/lib --enable-double-buffer --enable-own-window
|
||||
--localstatedir=/var/lib --enable-double-buffer --enable-own-window
|
||||
--enable-proc-uptime --enable-mpd --enable-xft --enable-seti
|
||||
|
||||
make
|
||||
@ -45,14 +45,14 @@ COMPILING
|
||||
|
||||
./conky
|
||||
|
||||
Conky doesnt probably compile with other compilers than gcc and icc.
|
||||
It doesnt compile with C89 compiler and not even with pure C99. It
|
||||
uses few things that might not exist: strdup(), strcasecmp(), strn
|
||||
casecmp(), optarg variable with getopt() and long long (not in C89).
|
||||
Crashes in file system statistics stuff when compiled with icc, I dont
|
||||
Conky doesn't probably compile with other compilers than gcc and icc.
|
||||
It doesn't compile with C89 compiler and not even with pure C99. It
|
||||
uses few things that might not exist: strdup(), strcasecmp(), strn-
|
||||
casecmp(), optarg variable with getopt() and long long (not in C89).
|
||||
Crashes in file system statistics stuff when compiled with icc, I don't
|
||||
know exactly why.
|
||||
|
||||
You can disable drawing to own window feature in case you dont need
|
||||
You can disable 'drawing to own window' feature in case you don't need
|
||||
it by passing --disable-own-window to configure -script.
|
||||
|
||||
|
||||
@ -63,11 +63,11 @@ YOU SHOULD KNOW
|
||||
rest of Conky.
|
||||
|
||||
If you do use them, please do not complain about memory or CPU usage,
|
||||
unless you think something is going seriously wrong (mem leak, et
|
||||
unless you think something is going seriously wrong (mem leak, et
|
||||
cetera).
|
||||
|
||||
OPTIONS
|
||||
Command line options override configurations defined in configuration
|
||||
Command line options override configurations defined in configuration
|
||||
file.
|
||||
|
||||
-V Prints version and exits
|
||||
@ -98,7 +98,7 @@ OPTIONS
|
||||
|
||||
|
||||
-t TEXT
|
||||
Text to render, remember single quotes, like -t $uptime
|
||||
Text to render, remember single quotes, like -t ' $uptime '
|
||||
|
||||
|
||||
-u SECONDS
|
||||
@ -118,12 +118,12 @@ OPTIONS
|
||||
|
||||
|
||||
CONFIGURATION SETTINGS
|
||||
Default configuration file is $HOME/.conkyrc (can be changed from
|
||||
Default configuration file is $HOME/.conkyrc (can be changed from
|
||||
conky.c among other things). See conkyrc.sample. You might want to copy
|
||||
it to $HOME/.conkyrc and then start modifying it.
|
||||
|
||||
alignment
|
||||
Aligned position on screen, may be top_left, top_right, bot
|
||||
Aligned position on screen, may be top_left, top_right, bot-
|
||||
tom_left, bottom_right, or none
|
||||
|
||||
|
||||
@ -153,7 +153,7 @@ CONFIGURATION SETTINGS
|
||||
|
||||
|
||||
default_shade_color
|
||||
Default shading color and borders shading color
|
||||
Default shading color and border's shading color
|
||||
|
||||
|
||||
default_outline_color
|
||||
@ -161,8 +161,8 @@ CONFIGURATION SETTINGS
|
||||
|
||||
|
||||
double_buffer
|
||||
Use the Xdbe extension? (eliminates flicker) It is highly recom
|
||||
mended to use own window with this one so double buffer wont be
|
||||
Use the Xdbe extension? (eliminates flicker) It is highly recom-
|
||||
mended to use own window with this one so double buffer won't be
|
||||
so big.
|
||||
|
||||
|
||||
@ -251,7 +251,7 @@ CONFIGURATION SETTINGS
|
||||
|
||||
own_window_colour colour
|
||||
If own_window_transparent no, set a specified background colour
|
||||
(defaults to black). Takes either a hex value (#ffffff) or a
|
||||
(defaults to black). Takes either a hex value (#ffffff) or a
|
||||
valid RGB name (see /usr/lib/X11/rgb.txt)
|
||||
|
||||
|
||||
@ -290,11 +290,11 @@ CONFIGURATION SETTINGS
|
||||
|
||||
|
||||
VARIABLES
|
||||
Colors are parsed using XParsecolor(), there might be a list of them:
|
||||
Colors are parsed using XParsecolor(), there might be a list of them:
|
||||
/usr/X11R6/lib/X11/rgb.txt. Also, http://sedition.com/perl/rgb.html
|
||||
Color can be also in #rrggbb format (hex). Note that when displaying
|
||||
bytes, power is 1024 and not 1000 so 1M really means 1024*1024 bytes
|
||||
and not 1000*1000.
|
||||
[http://sedition.com/perl/rgb.html] Color can be also in #rrggbb format
|
||||
(hex). Note that when displaying bytes, power is 1024 and not 1000 so
|
||||
1M really means 1024*1024 bytes and not 1000*1000.
|
||||
|
||||
addr (interface)
|
||||
IP address for an interface
|
||||
@ -348,23 +348,28 @@ VARIABLES
|
||||
Change drawing color to color
|
||||
|
||||
|
||||
cpu CPU usage in percents
|
||||
cpu (cpuN)
|
||||
CPU usage in percents. For SMP machines, the CPU number can be
|
||||
provided as an argument. cpu0 is the total usage, and >=cpu1 are
|
||||
individual CPUs. See $cpu for more info on SMP.
|
||||
|
||||
|
||||
cpubar (height),(width)
|
||||
Bar that shows CPU usage, height is bars height in pixels
|
||||
cpubar (cpu number) (height),(width)
|
||||
Bar that shows CPU usage, height is bar's height in pixels
|
||||
|
||||
|
||||
cpugraph (height),(width) (gradient colour 1) (gradient colour 2)
|
||||
CPU usage graph, with optional colours in hex, minus the #.
|
||||
cpugraph (cpu number) (height),(width) (gradient colour 1) (gradient
|
||||
colour 2)
|
||||
CPU usage graph, with optional colours in hex, minus the #. See
|
||||
$cpu for more info on SMP.
|
||||
|
||||
|
||||
diskio Displays current disk IO.
|
||||
|
||||
|
||||
diskiograph (height),(width) (gradient colour 1) (gradient colour 2)
|
||||
diskiograph (height),(width) (gradient colour 1) (gradient colour 2)
|
||||
(scale)
|
||||
Disk IO graph, colours defined in hex, minus the #. If scale is
|
||||
Disk IO graph, colours defined in hex, minus the #. If scale is
|
||||
non-zero, it becomes the scale for the graph.
|
||||
|
||||
|
||||
@ -376,9 +381,9 @@ VARIABLES
|
||||
Download speed in kilobytes with one decimal
|
||||
|
||||
|
||||
downspeedgraph net, (height),(width) (gradient colour 1) (gradient
|
||||
downspeedgraph net, (height),(width) (gradient colour 1) (gradient
|
||||
colour 2) (scale)
|
||||
Download speed graph, colours defined in hex, minus the #. If
|
||||
Download speed graph, colours defined in hex, minus the #. If
|
||||
scale is non-zero, it becomes the scale for the graph.
|
||||
|
||||
|
||||
@ -386,14 +391,14 @@ VARIABLES
|
||||
|
||||
|
||||
exec command
|
||||
Executes a shell command and displays the output in conky. warn
|
||||
ing: this takes a lot more resources than other variables. Id
|
||||
Executes a shell command and displays the output in conky. warn-
|
||||
ing: this takes a lot more resources than other variables. I'd
|
||||
recommend coding wanted behaviour in C and posting a patch.
|
||||
|
||||
|
||||
execbar command
|
||||
Same as exec, except if the first value return is a value
|
||||
between 0-100, it will use that number for a bar. The size for
|
||||
Same as exec, except if the first value return is a value
|
||||
between 0-100, it will use that number for a bar. The size for
|
||||
the bar is currently fixed, but that may change in the future.
|
||||
|
||||
|
||||
@ -402,7 +407,7 @@ VARIABLES
|
||||
|
||||
|
||||
execi interval command
|
||||
Same as exec but with specific interval. Interval cant be less
|
||||
Same as exec but with specific interval. Interval can't be less
|
||||
than update_interval in configuration.
|
||||
|
||||
|
||||
@ -425,19 +430,19 @@ VARIABLES
|
||||
|
||||
|
||||
freq_dyn
|
||||
Returns CPU frequency in MHz, but is calculated by counting to
|
||||
clock cycles to complete an instruction. Only available for
|
||||
Returns CPU frequency in MHz, but is calculated by counting to
|
||||
clock cycles to complete an instruction. Only available for
|
||||
x86/amd64.
|
||||
|
||||
|
||||
freq_dyn_g
|
||||
Returns CPU frequency in GHz, but is calculated by counting to
|
||||
clock cycles to complete an instruction. Only available for
|
||||
Returns CPU frequency in GHz, but is calculated by counting to
|
||||
clock cycles to complete an instruction. Only available for
|
||||
x86/amd64.
|
||||
|
||||
|
||||
fs_bar (height),(width) fs
|
||||
Bar that shows how much space is used on a file system. height
|
||||
Bar that shows how much space is used on a file system. height
|
||||
is the height in pixels. fs is any file on that file system.
|
||||
|
||||
|
||||
@ -458,8 +463,8 @@ VARIABLES
|
||||
|
||||
|
||||
head logfile lines (interval)
|
||||
Displays first N lines of supplied text text file. If interval
|
||||
is not supplied, Conky assumes 2x Conkys interval. Max of 30
|
||||
Displays first N lines of supplied text text file. If interval
|
||||
is not supplied, Conky assumes 2x Conky's interval. Max of 30
|
||||
lines can be displayed, or until the text buffer is filled.
|
||||
|
||||
|
||||
@ -468,90 +473,90 @@ VARIABLES
|
||||
|
||||
|
||||
i2c (dev), type, n
|
||||
I2C sensor from sysfs (Linux 2.6). dev may be omitted if you
|
||||
have only one I2C device. type is either in (or vol) meaning
|
||||
I2C sensor from sysfs (Linux 2.6). dev may be omitted if you
|
||||
have only one I2C device. type is either in (or vol) meaning
|
||||
voltage, fan meaning fan or temp/tempf (first in C, second in F)
|
||||
meaning temperature. n is number of the sensor. See
|
||||
meaning temperature. n is number of the sensor. See
|
||||
/sys/bus/i2c/devices/ on your local computer.
|
||||
|
||||
|
||||
i8k_ac_status
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
whether ac power is on, as listed in /proc/i8k (translated to
|
||||
human-readable). Beware that this is by default not enabled by
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
whether ac power is on, as listed in /proc/i8k (translated to
|
||||
human-readable). Beware that this is by default not enabled by
|
||||
i8k itself.
|
||||
|
||||
|
||||
i8k_bios
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the bios version as listed in /proc/i8k.
|
||||
|
||||
|
||||
i8k_buttons_status
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the volume buttons status as listed in /proc/i8k.
|
||||
|
||||
|
||||
i8k_cpu_temp
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the cpu temperature in celsius, as reported by /proc/i8k.
|
||||
|
||||
|
||||
i8k_cpu_tempf
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the cpu temperature in farenheit, as reported by /proc/i8k.
|
||||
|
||||
|
||||
i8k_left_fan_rpm
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the left fans rate of rotation, in revolutions per minute as
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the left fan's rate of rotation, in revolutions per minute as
|
||||
listed in /proc/i8k. Beware, some laptops i8k reports these fans
|
||||
in reverse order.
|
||||
|
||||
|
||||
i8k_left_fan_status
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the left fan status as listed in /proc/i8k (translated to
|
||||
human-readable). Beware, some laptops i8k reports these fans in
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the left fan status as listed in /proc/i8k (translated to human-
|
||||
readable). Beware, some laptops i8k reports these fans in
|
||||
reverse order.
|
||||
|
||||
|
||||
i8k_right_fan_rpm
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the right fans rate of rotation, in revolutions per minute as
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the right fan's rate of rotation, in revolutions per minute as
|
||||
listed in /proc/i8k. Beware, some laptops i8k reports these fans
|
||||
in reverse order.
|
||||
|
||||
|
||||
i8k_right_fan_status
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the right fan status as listed in /proc/i8k (translated to
|
||||
human-readable). Beware, some laptops i8k reports these fans in
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the right fan status as listed in /proc/i8k (translated to
|
||||
human-readable). Beware, some laptops i8k reports these fans in
|
||||
reverse order.
|
||||
|
||||
|
||||
i8k_serial
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
your laptop serial number as listed in /proc/i8k.
|
||||
|
||||
|
||||
i8k_version
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
If running the i8k kernel driver for Inspiron laptops, displays
|
||||
the version formatting of /proc/i8k.
|
||||
|
||||
|
||||
if_running (process)
|
||||
if PROCESS is running, display everything if_running and the
|
||||
if PROCESS is running, display everything if_running and the
|
||||
matching $endif
|
||||
|
||||
|
||||
if_existing (file)
|
||||
if FILE exists, display everything between if_existing and the
|
||||
if FILE exists, display everything between if_existing and the
|
||||
matching $endif
|
||||
|
||||
|
||||
if_mounted (mountpoint)
|
||||
if MOUNTPOINT is mounted, display everything between if_mounted
|
||||
if MOUNTPOINT is mounted, display everything between if_mounted
|
||||
and the matching $endif
|
||||
|
||||
|
||||
@ -571,8 +576,8 @@ VARIABLES
|
||||
Machine, i686 for example
|
||||
|
||||
|
||||
mails Mail count in mail spool. You can use program like fetchmail to
|
||||
get mails from some server using your favourite protocol. See
|
||||
mails Mail count in mail spool. You can use program like fetchmail to
|
||||
get mails from some server using your favourite protocol. See
|
||||
also new_mails.
|
||||
|
||||
|
||||
@ -639,7 +644,7 @@ VARIABLES
|
||||
|
||||
|
||||
mpd_bar (height),(width)
|
||||
Bar of mpds progress
|
||||
Bar of mpd's progress
|
||||
|
||||
|
||||
mpd_bitrate
|
||||
@ -655,19 +660,19 @@ VARIABLES
|
||||
|
||||
|
||||
mpd_vol
|
||||
MPDs volume
|
||||
MPD's volume
|
||||
|
||||
|
||||
mpd_elapsed
|
||||
Songs elapsed time
|
||||
Song's elapsed time
|
||||
|
||||
|
||||
mpd_length
|
||||
Songs length
|
||||
Song's length
|
||||
|
||||
|
||||
mpd_percent
|
||||
Percent of songs progress
|
||||
Percent of song's progress
|
||||
|
||||
|
||||
new_mails
|
||||
@ -728,26 +733,26 @@ VARIABLES
|
||||
|
||||
tail logfile lines (interval)
|
||||
Displays last N lines of supplied text text file. If interval is
|
||||
not supplied, Conky assumes 2x Conkys interval. Max of 30 lines
|
||||
not supplied, Conky assumes 2x Conky's interval. Max of 30 lines
|
||||
can be displayed, or until the text buffer is filled.
|
||||
|
||||
|
||||
time (format)
|
||||
Local time, see man strftime to get more information about for
|
||||
Local time, see man strftime to get more information about for-
|
||||
mat
|
||||
|
||||
|
||||
totaldown net
|
||||
Total download, overflows at 4 GB on Linux with 32-bit arch and
|
||||
there doesnt seem to be a way to know how many times it has
|
||||
Total download, overflows at 4 GB on Linux with 32-bit arch and
|
||||
there doesn't seem to be a way to know how many times it has
|
||||
already done that before conky has started.
|
||||
|
||||
|
||||
top type, num
|
||||
This takes arguments in the form:top (name) (number) Basically,
|
||||
processes are ranked from highest to lowest in terms of cpu
|
||||
usage, which is what (num) represents. The types are: "name",
|
||||
"pid", "cpu", and mem". There can be a max of 10 processes
|
||||
This takes arguments in the form:top (name) (number) Basically,
|
||||
processes are ranked from highest to lowest in terms of cpu
|
||||
usage, which is what (num) represents. The types are: "name",
|
||||
"pid", "cpu", and mem". There can be a max of 10 processes
|
||||
listed.
|
||||
|
||||
|
||||
@ -773,7 +778,7 @@ VARIABLES
|
||||
|
||||
upspeedgraph net, (height),(width) (gradient colour 1) (gradient colour
|
||||
2) (scale)
|
||||
Upload speed graph, colours defined in hex, minus the #. If
|
||||
Upload speed graph, colours defined in hex, minus the #. If
|
||||
scale is non-zero, it becomes the scale for the graph.
|
||||
|
||||
|
||||
@ -797,12 +802,12 @@ VARIABLES
|
||||
|
||||
|
||||
voffset (pixels)
|
||||
Change verticle offset by N pixels. Negative values will cause
|
||||
Change verticle offset by N pixels. Negative values will cause
|
||||
text to overlap. See also $offset.
|
||||
|
||||
|
||||
EXAMPLES
|
||||
conky -t${time %D %H:%m}-o -u 30
|
||||
conky -t '${time %D %H:%m}' -o -u 30
|
||||
Start Conky in its own window with date and clock as text and 30
|
||||
sec update interval.
|
||||
|
||||
@ -813,24 +818,25 @@ FILES
|
||||
~/.conkyrc default configuration file
|
||||
|
||||
BUGS
|
||||
Drawing to root or some other desktop window directly doesnt work with
|
||||
all window managers. Especially doesnt work well with Gnome and it has
|
||||
been reported that it doesnt work with KDE either. Nautilus can be
|
||||
disabled from drawing to desktop with program gconf-editor. Uncheck
|
||||
show_desktop in /apps/nautilus/preferences/. There is -w switch in
|
||||
Conky to set some specific window id. You might find xwininfo -tree
|
||||
useful to find the window to draw to. You can also use -o argument
|
||||
Drawing to root or some other desktop window directly doesn't work with
|
||||
all window managers. Especially doesn't work well with Gnome and it has
|
||||
been reported that it doesn't work with KDE either. Nautilus can be
|
||||
disabled from drawing to desktop with program gconf-editor. Uncheck
|
||||
show_desktop in /apps/nautilus/preferences/. There is -w switch in
|
||||
Conky to set some specific window id. You might find xwininfo -tree
|
||||
useful to find the window to draw to. You can also use -o argument
|
||||
which makes Conky to create its own window.
|
||||
|
||||
SEE ALSO
|
||||
http://conky.sourceforge.net
|
||||
http://conky.sourceforge.net [http://conky.sourceforge.net]
|
||||
|
||||
http://www.sourceforge.net/projects/conky
|
||||
http://www.sourceforge.net/projects/conky [http://www.source-
|
||||
forge.net/projects/conky]
|
||||
|
||||
#conky on irc.freenode.net
|
||||
|
||||
AUTHORS
|
||||
The Conky dev team. Whats up now??!
|
||||
The Conky dev team. What's up now??!
|
||||
|
||||
|
||||
|
||||
|
@ -124,10 +124,10 @@
|
||||
<varlistentry>
|
||||
<term>
|
||||
<command><option>cpu</option></command>
|
||||
<option>(cpu number)</option>
|
||||
<option>(cpuN)</option>
|
||||
</term>
|
||||
<listitem>
|
||||
CPU usage in percents. For SMP machines, the CPU number can be provided as an argument. 0 is the total usage, and >=1 are individual CPUs. See $cpu for more info on SMP.
|
||||
CPU usage in percents. For SMP machines, the CPU number can be provided as an argument. cpu0 is the total usage, and >=cpu1 are individual CPUs. See $cpu for more info on SMP.
|
||||
<para></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
37
src/conky.c
37
src/conky.c
@ -1039,38 +1039,31 @@ if (s[0] == '#') {
|
||||
END OBJ(cached, INFO_BUFFERS)
|
||||
END OBJ(cpu, INFO_CPU)
|
||||
if (arg) {
|
||||
if (sscanf(arg, "%i", &obj->data.cpu_index) < 1) {
|
||||
ERR("$cpu takes an int as an arg");
|
||||
}
|
||||
} else {
|
||||
if (strncmp(arg, "cpu", 3) == 0 && isdigit(arg[3])) {
|
||||
obj->data.cpu_index = atoi(&arg[3]);
|
||||
arg += 4;
|
||||
} else {obj->data.cpu_index = 0; }
|
||||
} else {
|
||||
obj->data.cpu_index = 0;
|
||||
}
|
||||
END OBJ(cpubar, INFO_CPU)
|
||||
if (arg) {
|
||||
if (sscanf(arg, "%i", &obj->data.cpu_index) < 1) {
|
||||
if (sscanf(arg, "%i %*s", &obj->data.cpu_index) < 1) {
|
||||
ERR("$cpu takes an int as an arg");
|
||||
} else {
|
||||
char buf[128];
|
||||
sscanf(arg, "%*i %127s", buf);
|
||||
(void) scan_bar(buf, &obj->a, &obj->b);
|
||||
}
|
||||
}
|
||||
if (strncmp(arg, "cpu", 3) == 0 && isdigit(arg[3])) {
|
||||
obj->data.cpu_index = atoi(&arg[3]);
|
||||
arg += 4;
|
||||
}
|
||||
(void) scan_bar(arg, &obj->a, &obj->b);
|
||||
} else {
|
||||
obj->data.cpu_index = 0;
|
||||
}
|
||||
END OBJ(cpugraph, INFO_CPU)
|
||||
if (arg) {
|
||||
if (sscanf(arg, "%i", &obj->data.cpu_index) < 1) {
|
||||
if (sscanf(arg, "%i %*s", &obj->data.cpu_index) < 1) {
|
||||
ERR("$cpu takes an int as an arg");
|
||||
} else {
|
||||
char buf[128];
|
||||
sscanf(arg, "%*i %127s", buf);
|
||||
(void) scan_graph(buf, &obj->a, &obj->b, &obj->c, &obj->d, &obj->e);
|
||||
}
|
||||
if (strncmp(arg, "cpu", 3) == 0 && isdigit(arg[3])) {
|
||||
obj->data.cpu_index = atoi(&arg[3]);
|
||||
arg += 4;
|
||||
}
|
||||
} else {
|
||||
(void) scan_graph(arg, &obj->a, &obj->b, &obj->c, &obj->d, &obj->e);
|
||||
} else {
|
||||
obj->data.cpu_index = 0;
|
||||
}
|
||||
END OBJ(diskio, INFO_DISKIO)
|
||||
|
@ -415,7 +415,11 @@ inline static void update_stat()
|
||||
for (i = 0; i < info.cpu_avg_samples; i++) {
|
||||
curtmp += cpu[index].cpu_val[i];
|
||||
}
|
||||
info.cpu_usage[index] = curtmp / info.cpu_avg_samples;
|
||||
if (index == 0) {
|
||||
info.cpu_usage[index] = curtmp / info.cpu_avg_samples / info.cpu_count;
|
||||
} else {
|
||||
info.cpu_usage[index] = curtmp / info.cpu_avg_samples;
|
||||
}
|
||||
cpu[index].last_cpu_sum = cpu[index].cpu_user + cpu[index].cpu_nice + cpu[index].cpu_system;
|
||||
for (i = info.cpu_avg_samples; i > 1; i--)
|
||||
cpu[index].cpu_val[i - 1] = cpu[index].cpu_val[i - 2];
|
||||
|
Loading…
Reference in New Issue
Block a user