Permalink
Commits on Nov 7, 2017
  1. Fix powertop build with libc++.

    Manoj Gupta committed with Nivedita Swaminathan Nov 4, 2017
    <ctime> header is not automatically included with libc++.
    Add it explicitly to make powertop build with libc++.
    
    This fixes the following errors:
    devices/gpu_rapl_device.cpp:35:14: error: use of undeclared identifier
    'time'; did you mean 'tie'?
    last_time = time(NULL);
                    ^~~~
    devices/gpu_rapl_device.cpp:45:14: error:use of undeclared identifier
    'time'; did you mean 'tie'?
    last_time = time(NULL);
                    ^~~~
    
    parameters/learn.cpp:161:10: error: use of undeclared identifier
    'time'; did you mean 'tie'?
    start =	time(NULL);
                ^~~~
Commits on Jul 21, 2017
  1. Some c-states exposed by the intel_idle driver are assigned

    Gautam Paranjape committed with Nivedita Swaminathan Jul 21, 2017
    the same line_level, which means that the most recent one
    assigned can overwrite another c-state. For example, the
    C1-SKL c-state is overwritten by the C1E-SKL c-state because
    both have a "1" in the name and are assigned the same line
    level. To fix this, check if a "sub c-state" (ex. C1E-SKL)
    is being inserted. If so, check the vector of c-states if
    a c-state with similar name (ex. C1-SKL) exists, and
    increment the line level.
    
    Signed-off-by: Gautam Paranjape <gautam.paranjape@intel.com>
Commits on Jul 20, 2017
  1. Because of how the code blocks are formatted, gcc 6 emits a "misleading

    thac0 committed with Nivedita Swaminathan Jul 20, 2017
    indentation" warning around the cursor_up() and cursor_down() virtual
    methods.
    
    Fix the warning by tweaking the code's indentation.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
Commits on Jan 25, 2017
  1. Additional comments added for clarity

    Nivedita Swaminathan committed Jan 25, 2017
    Additional comments about the platform code-names
    for better clarity.
    
    Signed-off-by: Nivedita Swaminathan <nivedita.swaminathan@intel.com>
  2. Enable Intel KBL support

    thac0 committed with Nivedita Swaminathan Mar 1, 2016
    This patch enables support for KBL
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
Commits on Jan 24, 2017
  1. Enabling Intel BXT support

    Nivedita Swaminathan committed Nov 16, 2015
    This patch enables support for BXT-P
    
    Signed-off-by:Nivedita Swaminathan <nivedita.swaminathan@intel.com>
  2. cpu: Add space after comma

    paulepanter committed with Nivedita Swaminathan Jan 24, 2017
    Fix up commit ab7108a (Fixed some potentially unterminated strings) by
    adding a space after the comma.
    
    Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
Commits on Aug 26, 2016
  1. Fixed a dangling pointer

    olysonek committed with thac0 Aug 24, 2016
    Acked-by: Joe Konno <joe.konno@intel.com>
  2. Fixed some potentially unterminated strings

    olysonek committed with thac0 Aug 24, 2016
    Acked-by: Joe Konno <joe.konno@intel.com>
Commits on Aug 12, 2016
  1. Doxyfile.in: add doxygen support

    thac0 committed with Nivedita Swaminathan Aug 12, 2016
    To assist PowerTOP developers, adding a Doxyfile for generating
    developer documentation with Doxygen and Graphviz.
    
    The Doxyfile will only generate HTML documentation by default, and it
    will land in doc/html. Git will ignore both the autoconf-generated
    Doxyfile and doc/html.
    
    It makes no sense to bundle the Doxygen-generated documentation with
    'make dist', so I didn't add support for it. It is intended solely for
    PowerTOP developers, so I discourage distributions from including it in
    their packages.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  2. search/replace POWERTOP_VERSION and SHORT_VERSION

    thac0 committed with Nivedita Swaminathan Aug 9, 2016
    Across the codebase, do the following replacements:
      POWERTOP_VERSION becomes PACKAGE_VERSION
      SHORT_VERSION    becomes PACKAGE_SHORT_VERSION
    
    PACKAGE_VERSION now contains a git describe string, and
    PACKAGE_SHORT_VERSION will contain an abbreviated describe string for
    use in the ncurses UI.
    
    v2: no change from v1
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  3. configure.ac: version strings from git describe

    thac0 committed with Nivedita Swaminathan Aug 9, 2016
    There are two version strings we need during runtime: a long version
    (for reports and --version), and a short version for the ncurses UI. Use
    a utility script to generate those strings (version-long and
    version-short) which will be cat'ed by configure and bundled when 'make
    dist' is run.
    
    Note: the version script will only run correctly within a clone of the
    PowerTOP git repository. Consumers of a tarball, generated by 'make
    dist', should not run autogen.sh or the version script. All necessary
    configuration or build artifacts will be included in the tarball.
    
    v2 (Magnus): Changed commit message to include note about intended
    execution of the version script (and, by extension, autogen.sh).
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  4. main.cpp: remove __DATE__ from --version

    thac0 committed with Nivedita Swaminathan Aug 9, 2016
    v2: no change from v1
    
    Suggested-by: eSyr <evgsyr@gmail.com>
    Signed-off-by: Joe Konno <joe.konno@intel.com>
Commits on Aug 4, 2016
  1. po: regenerate with new POT and strings

    thac0 committed Aug 4, 2016
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  2. powertop.pot: xgettext refresh, attribution fix

    thac0 committed Aug 3, 2016
    Refresh contents of powertop.pot with latest changes to AC_REVISION
    (configure.ac) and POTFILES.in.
    
    Also, use correct copyright attribution in the generated template.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  3. POTFILES.in: refresh files with strings

    thac0 committed Aug 3, 2016
    Renamed output from scripts/regenerate-potfiles-in to po/POTFILES.in.
    This will enable more string translation possibilities.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  4. scripts: add regenerate-potfiles-in script

    thac0 committed Aug 3, 2016
    This is a convenience script for maintainers or translators. POTFILES.in
    is input into gettext for string translation.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  5. Makevars: align more closely to generated .template

    thac0 committed Aug 3, 2016
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  6. .gitignore: ignnore m4/pkg.m4

    thac0 committed Aug 3, 2016
    With ACLOCAL_AMFLAGS += --install, an additional m4 script is copied in
    at configure time from the host's gettext installation. Let's not track
    it.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  7. gettext: run gettextize-0.18.2

    thac0 committed Aug 3, 2016
    Ran gettextize from gettext-0.18.2 to clean up some annoying
    configuration warnings.
    
    Also, allow m4 and po changelogs to be created, especially to help folks
    concerned with the particulars of string translation.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  8. Makefile.am: add --install to ACLOCAL_AMFLAGS

    thac0 committed Aug 3, 2016
    This is supported by >=automake-1.10, so let's use it to ensure all
    requisite m4 scripts are assembled at configure and build time.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
Commits on Aug 3, 2016
  1. configure.ac: bump version to 2.9-pre

    thac0 committed Aug 3, 2016
    Once we get things ready for pre-release testing, AC_REVISION will
    change to "-rcX" and a version tag will be pushed. For now, executing a
    local build with "--version" will give some indication it's something
    you built and not something provided by your package manager.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  2. Adding PID to process description.

    esyr committed with thac0 Aug 2, 2016
    Currently, multiple processes shown in overview and consumers list are
    indistinguishable in case they have the same command line. This commit
    prepends PID enclosed in square brackets to the beginning of description
    line, similarly to the interrupt ID in interrupt description.
    
    * src/process/process.cpp (process::process): printing PID to desc,
      adding process description after it.
    
    Acked-by: Joe Konno <joe.konno@intel.com>
  3. Checking whether librt is needed for clock_gettime().

    esyr committed with thac0 Aug 2, 2016
    Commit ef79e28 introduced usage of clock_gettime() function, which,
    unfortunately, breaks build on some systems, namely Debian Wheezy, due
    to the fact it should be linked with librt. This commit adds configure
    check whether additional library is needed in order to use
    aforementioned function.
    
    * configure.ac: using AC_SEARCH_LIBS() for checking whether librt is
      needed for clock_gettime().
    
    Acked-by: Joe Konno <joe.konno@intel.com>
Commits on Jul 21, 2016
  1. Calculate the number of joules consumed over time

    Daniel Black committed with Nivedita Swaminathan Jul 21, 2016
    The *joules_consumed functions where returning power so renamed to
    reflect this.
    
    Calculate the joules used at intervals by multipling the instantaneous
    power by the time interval since the last measurement.
    
    Signed-off-by: Daniel Black <daniel.black@au1.ibm.com>
    
    v2: (Joe) Resolved a trivial hunk rejection in main.cpp +514 with
        6696d4e5f2e ("enable --auto-tune without debugfs"); Acked-by added
    
    Acked-by: Joe Konno <joe.konno@intel.com>
  2. powertop changes the frequency set by the userspace governor to the m…

    tilsche committed with Nivedita Swaminathan Jul 21, 2016
    …inimum available frequency.
    
    This is caused by abstract_cpu::wiggle that touches the {min,max}_freq. By doing so, it also narrows
    down the scaling_setspeed setting within the min-max-range, but it is not reset upon restoring max_freq.
    To illustrate what is happening behind the scenes:
    
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_{min,max,cur}_freq
    1200000
    2901000
    2000000
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_{governor,setspeed}
    userspace
    2000000
    $ echo 1200000 | sudo tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
    1200000
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
    1200000
    
    (Tested with Linux 4.4.0-21 Ubuntu)
    
    Attached is a patch that resets the setspeed value if it was set to a numeric value before the wiggle.
  3. MSR is valid for x86_32/x86_64 only

    Daniel Black committed with Nivedita Swaminathan Jul 21, 2016
    As such we compile guard the portions of code related to msr
    modprobing, reads and writes.
    
    Signed-off-by: Daniel Black <daniel.black@au1.ibm.com>
  4. enable --auto-tune without debugfs

    Boris ARZUR committed with Nivedita Swaminathan Jul 21, 2016
  5. Fix misaligned curly brace

    verygreen committed with Nivedita Swaminathan Jun 19, 2016
    This brace makes it look like the wrong block is beign closed
    causing some confusion for the reader.
    
    Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
  6. Show idle processes holding devices at full power

    verygreen committed with Nivedita Swaminathan Jun 19, 2016
    Even if process did not spend any time running but holds
    a device open, it deserves its line on the "Wall of Shame".
    Otherwise we get erratic "now we show it, now we don't"
    behavior which is confusing.
    
    Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
  7. Add support for usbdevfs

    verygreen committed with Nivedita Swaminathan Jun 19, 2016
    Similar to ALSA, usb devices could be held at full power by
    opening them via usbdevfs, so it's good to track such processes
    and attribute the power to them.
    
    Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
  8. intel_cpus: no pstate Idle pct with intel_pstate

    thac0 committed with Nivedita Swaminathan Jun 13, 2016
    Do not display "percent Idle" in the Frequency Stats tab when the
    intel_pstate kernel driver is loaded. This is because Idle time is
    inferred through kernel PM trace events, which may be insufficient for
    proper computation in certain scenarios. Therefore, best to display no
    data than potentially inaccurate data.
    
    End-users are encouraged to use the Idle Stats tab in the UI or report
    to analyze their system's idle time. When the intel_pstate kernel driver
    is loaded, the Frequency Stats tab will only present the end-user with
    the average frequency of each logical core.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  9. intel_cpus: frequency: clarify average clock speed

    thac0 committed with Nivedita Swaminathan Jun 13, 2016
    Depending on the sample time (-t sample_time_in_secs), on Intel CPUs the
    average frequency is computed for the sample time. Therefore, let's
    change the label to "Average" so as not to confuse the end-user.
    
    Previously, the UI and report printed the "actual" frequency-- at least,
    that's how it was labeled. This is not strictly true, as the actual cpu
    frequency of the platform may change at any point during the sample time
    for a variety of reasons.
    
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  10. .gitignore: ignore vim swap, cscope, ctags

    thac0 committed with Nivedita Swaminathan Jun 10, 2016
    Signed-off-by: Joe Konno <joe.konno@intel.com>
  11. Widen ppc64 paths for sysfs file

    Daniel Black committed with Nivedita Swaminathan May 23, 2016
    hwmon0 was assumed to be the only hwmon directory used by POWER
    however hwmon4 was observered on different hardware.
    
    Here we use the process_glob function to retrieve all measurement
    locations.
    
    The opal_sensors_power_meter class now stores the full path.
    
    Signed-off-by: Daniel Black <daniel.black@au1.ibm.com>