thresholds: Add PerformanceLoss threshold

Create an xyz.openbmc_project.Sensor.Threshold.PerformanceLoss D-Bus
interface.  This could be placed on a sensor to:

a) Signal some other software to do something to the server that results
in performance loss, such as memory or CPU throttling, to bring down the
sensor value.

b) Trigger an event to the user so they know to expect a performance
loss, and which sensor caused it.

An immediate use of this will be on OpenPower systems to throttle the
CPU/memory and trigger event logs due to a high (virtual) ambient
temperature.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: Id93843abdb45f00ee359f902d539b9df6bf5359a
3 files changed
tree: c38a7fa353db641bf07a513947950ac28cc5760c
  1. com/
  2. gen/
  3. org/
  4. subprojects/
  5. xyz/
  6. .gitignore
  7. LICENSE
  8. MAINTAINERS
  9. meson.build
  10. meson_options.txt
  11. README.md
README.md

phosphor-dbus-interfaces

YAML descriptors of standard D-Bus interfaces. The format is described by the sdbusplus binding generation tool sdbus++.

Building

This project can be built with meson. The typical meson workflow is: meson builddir && ninja -C builddir.

The meson files used to handle the YAML files are automatically generated and found under the gen subdirectory. When adding or removing YAML files, this must be regenerated. This can be done with the helper script found in the gen subdirectory: cd gen && ./regenerate-meson.

Configuration

Only the xyz/openbmc_project interfaces are built by default. Other interfaces can be enabled by meson options:

  • com/ibm - -Ddata_com_ibm=true
  • org/open_power - -Ddata_org_open_power=true

Example: meson builddir -Ddata_com_ibm=true && ninja -C builddir

References