gallium/hud: Add support for block I/O, network I/O and lmsensor stats
authorSteven Toth <stoth@kernellabs.com>
Wed, 28 Sep 2016 18:58:00 +0000 (12:58 -0600)
committerBrian Paul <brianp@vmware.com>
Wed, 28 Sep 2016 22:18:05 +0000 (16:18 -0600)
commit8c60bcb4c317026e017a8ecffe303fd4e7f0db33
treea69adc68dd1f442409ff70b07b5f592157c154d7
parent29783c0887b3afd345e15e4e6910c04185219812
gallium/hud: Add support for block I/O, network I/O and lmsensor stats

V8: Feedback based on peer review
    convert if block into a switch
    Constify some func args

V7: Increase precision when measuring lmsensors volts
    Flatten patch series.

V6: Feedback based on peer review
    Simplify sensor initialization (arg passing).
    Constify some func args

V5: Feedback based on peer review
    Convert sprintf to snprintf
    Convert char * to const char *
    int arg converted to bool
    Func changes to take a filename vs a larger struct.
    Omit the space between '*' and the param name.

V4: Merged with master as of 2016/9/27 6pm

V3: Flatten the entire patchset ready for the ML

V2: Additional seperate patches based on feedback
a) configure.ac: Add a comment related to libsensors

b) HUD: Disable Block/NIC I/O stats by default.
Implement configuration option --enable-gallium-extra-hud=yes
and enable both statistics when this option is enabled.

c) Configure.ac: Minor cleanup to user visible configuration settings

d) Configure.ac: HUD stats - build system improvements
Move the -lsensors out of a deeper Makefile, bring it into the configure.ac.
Also, rename a compiler directive to more closely follow the standard.

V1: Initial release to the ML
Three new features:
1. Disk/block I/O device read/write stats MB/ps.
2. Network Interface RX/TX transfer statistics as a percentage
   of the overall NIC speed.
3. lmsensor power, voltage and temperature sensors.

The lmsensor changes makes a dependency on libsensors so support
for the change is opt out by default.

Signed-off-by: Steven Toth <stoth@kernellabs.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
configure.ac
src/gallium/auxiliary/Makefile.am
src/gallium/auxiliary/Makefile.sources
src/gallium/auxiliary/hud/hud_context.c
src/gallium/auxiliary/hud/hud_diskstat.c [new file with mode: 0644]
src/gallium/auxiliary/hud/hud_nic.c [new file with mode: 0644]
src/gallium/auxiliary/hud/hud_private.h
src/gallium/auxiliary/hud/hud_sensors_temp.c [new file with mode: 0644]
src/gallium/include/pipe/p_defines.h