Skip to content

Latest commit

 

History

History
74 lines (69 loc) · 2.64 KB

power_off_config.md

File metadata and controls

74 lines (69 loc) · 2.64 KB

power_off_config

Description

A list of power off rules based on the monitoring state of the fans configured. These power off rules can perform different system power off types to protect a system that is not able to provide enough cooling due to a number of missing or nonfunctional fans.

Attribute Value(s)

  • type - ["hard", "soft", "epow"]
    • "hard" - Perform a hard shutdown that immediately powers off the system.
    • "soft" - Perform an orderly shutdown requesting that the host OS power off the system.
    • "epow" - Sets the thermal alert D-Bus property that a power off is imminent after a service_mode_delay amount of time passes.
  • cause - ["missing_fan_frus", "nonfunc_fan_rotors"]
    • "missing_fan_frus" - Power off due to missing fan enclosures
    • "nonfunc_fan_rotors" - Power off due to nonfunctional fan rotors(sensors)
  • count - integer
    • Number of the configured cause instances to begin the power off type

"hard" & "soft" type power offs

  • delay - integer
    • Time(in seconds) to delay performing the power off after count instances of the cause criteria is met.
  • state - ["at_pgood", "runtime"] (Optional)
    • "at_pgood" - At system pgood, the power off rule becomes valid. A power off rule of "at_pgood" can halt a system power on if the conditions are met.
    • "runtime" - At system runtime, the power off rule becomes valid. A power off rule of "runtime" only goes into affect after the system reaches runtime. (Default)

"epow" type power offs

  • service_mode_delay - integer
    • Time(in seconds) given before the thermal alert D-Bus property is set to indicate that a power off is imminent if the count instances of the cause criteria still exists. This timer is canceled when the count instances of the cause is not longer met.
  • meltdown_delay - integer
    • Time(in seconds) before a hard power off occurs after the service_mode_delay timer expires. This timer can not be canceled once started.

Example


{
  "fault_handling": [
    {
      "num_nonfunc_rotors_before_error": 1,
      "power_off_config": [
        {
          "type": "hard",
          "cause": "missing_fan_frus",
          "count": 1,
          "delay": 25,
          "state": "at_pgood"
        },
        {
          "type": "soft",
          "cause": "nonfunc_fan_rotors",
          "count": 2,
          "delay": 30,
          "state": "runtime"
        },
        {
          "type": "epow",
          "cause": "nonfunc_fan_rotors",
          "count": 3,
          "service_mode_delay": 300,
          "meltdown_delay": 300
        }
      ]
    }
  ]
}