1. 14 May, 2020 2 commits
  2. 13 May, 2020 2 commits
    • Arjen Hiemstra's avatar
      Exclude all loop devices from partition and disk sensors · f4e2c202
      Arjen Hiemstra authored
      Summary:
      Since there is little reason to monitor loop devices, exclude them
      altogether from the partition and disk sensors.
      
      This fixes cases where there are a significant amount of snaps,
      which are all mounted as loop devices and thus cause partition and
      disk sensors to appear, which potentially causes major slowdowns.
      
      Test Plan: Snaps are excluded from the list of sensors in KSysGuard.
      
      Reviewers: #plasma, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: IlyaBizyaev, anthonyfieroni, jriddell, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D29688
      f4e2c202
    • Arjen Hiemstra's avatar
      Add context to translated strings and clarify some strings · 857eff12
      Arjen Hiemstra authored
      Summary:
      Many of the shorter strings are not really informative, so add context
      so translators can figure out what they mean. Some of the strings were
      also wrong, those have been corrected as well.
      
      Test Plan: Still compiles.
      
      Reviewers: #plasma, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: davidedmundson, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D29721
      857eff12
  3. 07 May, 2020 1 commit
    • Arjen Hiemstra's avatar
      Use KSysGuard namespace for KSysGuard targets · dbb0b515
      Arjen Hiemstra authored
      Summary:
      With D29302 all KSysGuard targets have been placed in the KSysGuard namespace
      and the KF5 versions deprecated. This changes KSysGuard to use the new
      namespace. In addition, it renames the libkstats target from "PW5::KSysGuardBackend"
      to "KSysGuard::StatsBackend".
      
      Test Plan: Things still compile.
      
      Reviewers: #plasma, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D29507
      dbb0b515
  4. 06 May, 2020 1 commit
    • David Edmundson's avatar
      Add a new daemon for stats monitoring · 75333fc1
      David Edmundson authored
      Summary:
      ksysguardd, whilst good, has a few problems
      
      The code is a bit archaic, it relies on a polling API, which is overhead
      for infrequently changed values or where setting up a monitor has a big
      overhead.
      
      It also moves the problem of translations into the daemon, allowing for
      better extensibility without requiring client side changes.
      
      The daemon is based around a typical OO model. Plugins have lists of
      objects, those objects have properties using common Qt patterns. A
      property also has various metadata.
      
      For full compatibility ksgrd is wrapped and the plan is to land with the
      bridge, then slowly land patches that use the new API natively.
      
      An nvidia plugin is also added to show the API being used in another
      format.
      
      This is all consumed by the new API posted in D28141
      
      Test Plan:
      Unit test
      Used with the new library to create a new suite of applet (upcoming patch)
      Used in a ported ksysguard
      
      Reviewers: #plasma, mart, ngraham, ahiemstra
      
      Reviewed By: #plasma, mart, ngraham, ahiemstra
      
      Subscribers: ahiemstra, ivan, mart, zzag, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28333
      75333fc1
  5. 05 May, 2020 1 commit
  6. 14 Apr, 2020 1 commit
    • José Jorge's avatar
      Add some new battery sensors : energy_now, energy_full and power_now. · 4c6c5638
      José Jorge authored
      Summary:
      Depending on hardware, Linux kernel exports battery state in
      different files. Previously only charge_now, charge_full and current_now
      were available in ksysguard. With this commit all are selectable.
      
      While we have now screens with more than 1000 pixels height,
      a percentage with 100 steps will show a ladder. This commit also
      make the created graphs nicer by giving 1000 steps.
      
      Reviewers: #plasma, davidedmundson, ahiemstra
      
      Reviewed By: ahiemstra
      
      Subscribers: anthonyfieroni, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28127
      4c6c5638
  7. 02 Apr, 2020 2 commits
  8. 31 Mar, 2020 1 commit
  9. 24 Mar, 2020 1 commit
    • Sandeep Raghuraman's avatar
      Add support for power sensors from lm-sensors · 00f522a7
      Sandeep Raghuraman authored
      Summary:
      Some AMD GPUs do report power which can be read by lm-sensors. This diff adds support for showing those power readings in ksysguard.
      
      Note: SENSORS_SUBFEATURE_POWER_AVERAGE is checked as a backup, because AMDGPU reports power as an average and not as input.
      
      Reviewers: mlaurent, davidedmundson
      
      Reviewed By: davidedmundson
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28166
      00f522a7
  10. 18 Mar, 2020 1 commit
  11. 10 Mar, 2020 1 commit
  12. 05 Mar, 2020 2 commits
    • Arjen Hiemstra's avatar
      Merge branch 'Plasma/5.18' · df4e9071
      Arjen Hiemstra authored
      df4e9071
    • Jakob Kummerow's avatar
      Linux/cpuinfo.c: grow buffer size as needed for 12+ core CPUs · 031bd760
      Jakob Kummerow authored
      Summary:
      Getting CPU information starts with reading /proc/cpuinfo into a buffer; if that buffer is too small, then no information will be returned at all (updateCpuInfo() will return -1, so initCpuInfo() will return early); the consequence is that ksysguardd/ksysguard/plasmaengineexplorer won't know about "system/cores" or "cpu/system/AverageClock"; that in turn will make the "System Load Viewer" plasmoid completely dysfunctional (it won't show *any* data) because it relies on "system/cores" being available.
      
      The buffer is currently 32KiB large, which is not enough on modern hardware (e.g. 12-core/24-thread systems exceed it). This patch lowers the initial size to 8KiB to be as memory-efficient as possible on low-end systems (dual/quadcore systems shouldn't ever need to grow it), and grows the buffer size as needed to accommodate arbitrarily many CPUs (tested on a 72-thread system, where the buffer grows four times, reaching 128KiB final size).
      
      When the buffer needs to grow, its size is doubled, so the overall cost of the growth scales linearly with the file size (on average, each byte is copied to a larger buffer at most once). Also, the buffer size is remembered as long as the process runs, so the cost of the growth is only incurred once on startup (or if additional CPUs come online, which is probably rare).
      
      I've verified locally that this patch fixes the issue: the System Log Viewer plasmoid shows data as expected afterwards.
      
      BUG: 384515
      
      Reviewers: davidedmundson, ahiemstra
      
      Reviewed By: ahiemstra
      
      Subscribers: ngraham, ahiemstra, cfeck, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D27362
      031bd760
  13. 04 Mar, 2020 1 commit
  14. 02 Mar, 2020 3 commits
  15. 27 Feb, 2020 2 commits
  16. 25 Feb, 2020 2 commits
  17. 24 Feb, 2020 2 commits
  18. 19 Feb, 2020 1 commit
    • Jakob Kummerow's avatar
      Linux/cpuinfo.c: grow buffer size as needed for 12+ core CPUs · 7a103a45
      Jakob Kummerow authored
      Summary:
      Getting CPU information starts with reading /proc/cpuinfo into a buffer; if that buffer is too small, then no information will be returned at all (updateCpuInfo() will return -1, so initCpuInfo() will return early); the consequence is that ksysguardd/ksysguard/plasmaengineexplorer won't know about "system/cores" or "cpu/system/AverageClock"; that in turn will make the "System Load Viewer" plasmoid completely dysfunctional (it won't show *any* data) because it relies on "system/cores" being available.
      
      The buffer is currently 32KiB large, which is not enough on modern hardware (e.g. 12-core/24-thread systems exceed it). This patch lowers the initial size to 8KiB to be as memory-efficient as possible on low-end systems (dual/quadcore systems shouldn't ever need to grow it), and grows the buffer size as needed to accommodate arbitrarily many CPUs (tested on a 72-thread system, where the buffer grows four times, reaching 128KiB final size).
      
      When the buffer needs to grow, its size is doubled, so the overall cost of the growth scales linearly with the file size (on average, each byte is copied to a larger buffer at most once). Also, the buffer size is remembered as long as the process runs, so the cost of the growth is only incurred once on startup (or if additional CPUs come online, which is probably rare).
      
      I've verified locally that this patch fixes the issue: the System Log Viewer plasmoid shows data as expected afterwards.
      
      BUG: 384515
      
      Reviewers: davidedmundson, ahiemstra
      
      Reviewed By: ahiemstra
      
      Subscribers: ngraham, ahiemstra, cfeck, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D27362
      7a103a45
  19. 18 Feb, 2020 2 commits
  20. 17 Feb, 2020 2 commits
    • Arjen Hiemstra's avatar
      Revert "Linux/cpuinfo.c: grow buffer size as needed for 12+ core CPUs" · 79eca78a
      Arjen Hiemstra authored
      This reverts commit 62df3770.
      
      Author information is incorrect.
      79eca78a
    • Arjen Hiemstra's avatar
      Linux/cpuinfo.c: grow buffer size as needed for 12+ core CPUs · 62df3770
      Arjen Hiemstra authored
      Summary:
      Getting CPU information starts with reading /proc/cpuinfo into a buffer; if that buffer is too small, then no information will be returned at all (updateCpuInfo() will return -1, so initCpuInfo() will return early); the consequence is that ksysguardd/ksysguard/plasmaengineexplorer won't know about "system/cores" or "cpu/system/AverageClock"; that in turn will make the "System Load Viewer" plasmoid completely dysfunctional (it won't show *any* data) because it relies on "system/cores" being available.
      
      The buffer is currently 32KiB large, which is not enough on modern hardware (e.g. 12-core/24-thread systems exceed it). This patch lowers the initial size to 8KiB to be as memory-efficient as possible on low-end systems (dual/quadcore systems shouldn't ever need to grow it), and grows the buffer size as needed to accommodate arbitrarily many CPUs (tested on a 72-thread system, where the buffer grows four times, reaching 128KiB final size).
      
      When the buffer needs to grow, its size is doubled, so the overall cost of the growth scales linearly with the file size (on average, each byte is copied to a larger buffer at most once). Also, the buffer size is remembered as long as the process runs, so the cost of the growth is only incurred once on startup (or if additional CPUs come online, which is probably rare).
      
      I've verified locally that this patch fixes the issue: the System Log Viewer plasmoid shows data as expected afterwards.
      
      BUG: 384515
      
      Reviewers: davidedmundson, ahiemstra
      
      Reviewed By: ahiemstra
      
      Subscribers: ahiemstra, cfeck, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D27362
      62df3770
  21. 06 Feb, 2020 2 commits
  22. 31 Jan, 2020 1 commit
  23. 28 Jan, 2020 3 commits
  24. 22 Jan, 2020 1 commit
    • David Edmundson's avatar
      Unify ksysguard cpu clock speed names · 65a5b46a
      David Edmundson authored
      Summary:
      For every other sensor the human readable name of cpu0 is "CPU 1" and so
      on, except clock speed
      
      Before (in ksysguardd -i)
      ksysguardd> cpu/cpu0/sys?
      CPU 1 System Load       0       100     %
      
      ksysguardd> cpu/cpu0/clock?
      CPU0 Clock Frequency    0       0       MHz
      
      With this patch they're uniform
      
      Doesn't make a big difference as SensorManager goes through a big
      translation and disregards this anyway.
      
      Test Plan: #plasma
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D26857
      65a5b46a
  25. 20 Jan, 2020 2 commits