[RFC] Special handlers for post-codes

Amithash Prasad amithash at meta.com
Fri May 30 12:02:20 AEST 2025


Hello,

There are many occasions when a post code from a server actually means something is wrong — especially crucial if a boot failure occurs before the part of the system firmware capable of sending a SEL to the BMC is loaded. To support this, I am proposing enhancing phosphor-post-code-mfg to support configurable special handling of post codes.

Example configuration:
[
  {
    "primary": [123],
    "secondary": [234, 123],
    "targets": ["my_special.service"]
  },
  {
    "primary": [999],
    "targets": ["power_failure.service"],
    "event": {
      "name": "xyz.openbmc_project.State.Power.PowerRailFault",
      "arguments": {
          "POWER_RAIL": "MyDevice",
          "FAILURE_DATA": ""
      }
    }
  }
]

The first config will start my_special.service if we receive a postcode: {{123}, {234, 123}}. The second will start power_failure.service and also create a phosphor-logging event xyz.openbmc_project.State.Power.PowerRailFault with arguments {"POWER_FAIL": "MyDevice", "FAILURE_DATA": ""} when we receive a post code {{999}, {anything}}.

Any feedback is appreciated. Especially pertaining to the secondary post-code (since I don't have experience with machines which have a secondary post-code and my proposal is just a guess).

I have a untested proof of concept I am working on: https://gerrit.openbmc.org/c/openbmc/phosphor-post-code-manager/+/80646
I would love to get feedback before I continue down this path.


Thanks,

Amithash
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20250530/86a8a7a4/attachment.htm>


More information about the openbmc mailing list