commit | 7dd6443b88a52cb17d925bbe0f316d6a0374a703 | [log] [tgz] |
---|---|---|
author | Jae Hyun Yoo <quic_jaehyoo@quicinc.com> | Wed Mar 30 14:28:33 2022 -0700 |
committer | Ed Tanous <ed@tanous.net> | Mon Apr 25 02:22:12 2022 +0000 |
tree | 4fbaf6bdd4f043de3f5903a0a43d6557c2b6ad0a | |
parent | 8454571297812c51ae120812d245bbe88d697191 [diff] |
HwmonTempSensor: Fix a crash when an I3C device is scanned When an I3C device is registered in hwmon sub-system, the device would have a long address tag such as '0-4cc31020000', so if the scanning loop uses 'stoi' for the address parsing, this service crashs by this error. terminate called after throwing an instance of 'std::out_of_range' what(): stoi Aborted (core dumped) To prevent this issue, this commit replaces 'stoi' with std::from_chars to uint64_t type since BasicVariantType can be up to uint64_t and it actually parses unsigned numbers from Bus and Address settings. Tested: HwmonTempSensor service didn't crash even when an I3C device is enumerated in sysfs. Signed-off-by: Jae Hyun Yoo <quic_jaehyoo@quicinc.com> Change-Id: I5a06849b4149d535b2d4002f0f6e1e7bd5f94b97
dbus-sensors is a collection of sensor applications that provide the xyz.openbmc_project.Sensor collection of interfaces. They read sensor values from hwmon, d-bus, or direct driver access to provide readings. Some advance non-sensor features such as fan presence, pwm control, and automatic cpu detection (x86) are also supported.
runtime re-configurable from d-bus (entity-manager or the like)
isolated: each sensor type is isolated into its own daemon, so a bug in one sensor is unlikely to affect another, and single sensor modifications are possible
async single-threaded: uses sdbusplus/asio bindings
multiple data inputs: hwmon, d-bus, direct driver access