dbus-sensors: apply non-blocking discovery patch

Resolve an infinite discovery loop issue where missing resources
(returning 404 Not Found) would block the daemon from completing
discovery and creating D-Bus sensors.

Implement a "Non-Blocking Discovery with Background Retry" strategy:
1. Skip failed metric report paths during the main discovery pass to
   allow other working resources to be processed.
2. Store failed paths in a set and allow discovery to complete.
3. In the main polling loop, periodically (every 60 ticks) retry one
   failed path in the background.
4. If a retry succeeds after discovery is done, dynamically add the
   new sensors to D-Bus.

Tested: https://paste.googleplex.com/5905898336813056?raw
Platforms-Affected: Global
Fusion-Link: fusion2, n/a
Google-Bug-Id: 527716739
Change-Id: I61250870374afe83fd85d6112d72a89f24c97678
Signed-off-by: Chunk Huang <chunkh@google.com>
2 files changed
tree: a96a82e67deb7250168064ec987ad0daa19290b2
  1. classes/
  2. conf/
  3. dynamic-layers/
  4. recipes-bsp/
  5. recipes-connectivity/
  6. recipes-core/
  7. recipes-devtools/
  8. recipes-extended/
  9. recipes-google/
  10. recipes-kernel/
  11. recipes-phosphor/
  12. recipes-support/
  13. recipes-tpm1/
  14. recipes-tpm2/
  15. LICENSE
  16. README.md
README.md

meta-gbmc-staging

This repository contains additions to the openbmc/meta-google layer that are not yet ready for OpenBMC inclusion.

How to use this layer

  1. Clone openbmc/openbmc from GitHub.
  2. Clone this layer from GitHub into a subdirectory of openbmc.