b015dcbe | 19-Mar-2025 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Remove callout data file after testcases
Delete the temporary /tmp/phalPELCalloutsJson.* files used by some testcases after they are done with it.
Tested: No longer see files like '/tmp/phalPE
PEL: Remove callout data file after testcases
Delete the temporary /tmp/phalPELCalloutsJson.* files used by some testcases after they are done with it.
Tested: No longer see files like '/tmp/phalPELCalloutsJson.MbM31h' when unit tests are complete.
Change-Id: Iff2efac1391da7e5c22727a39b8a8b4d98816da5 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
7b92372d | 19-Mar-2025 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Still create callout without full loc code
When PELs are created early during a power on reset, the service that expands location codes may not be online yet. Previously, callouts just wouldn'
PEL: Still create callout without full loc code
When PELs are created early during a power on reset, the service that expands location codes may not be online yet. Previously, callouts just wouldn't be created if a location code couldn't be expanded.
Fix that so that a callout is still created with the unexpanded location code, as that is still better than nothing. In those cases, the CC/PN/FN fields would also be empty since those are obtained by finding the FRU inventory path from the location code.
Also create a similar callout in the case where the call to get the inventory path from a location code fails.
This applies for callouts created via: - The PEL message registry - The device path lookup tables - JSON FFDC files
Tested: New unit tests that cover these paths pass.
On a system, after stopping vpd-manager.service, will get callouts like: ``` "Callout Section": { "Callout Count": "4", "Callouts": [{ "FRU Type": "Normal Hardware FRU", "Priority": "Mandatory, replace all with this type as a unit", "Location Code": "P0-C5", "Part Number": "", "CCIN": "", "Serial Number": "" }, { "FRU Type": "Normal Hardware FRU", "Priority": "Mandatory, replace all with this type as a unit", "Location Code": "E0", "Part Number": "", "CCIN": "", "Serial Number": "" }, { "FRU Type": "Normal Hardware FRU", "Priority": "Lowest priority replacement", "Location Code": "P0", "Part Number": "", "CCIN": "", "Serial Number": "" }, { "FRU Type": "Normal Hardware FRU", "Priority": "Lowest priority replacement", "Location Code": "P0-T4", "Part Number": "", "CCIN": "", "Serial Number": "" }] } ```
Change-Id: Ia7e94f9d4848f78ba0b00023438c4db4135fed75 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
109b4a5c | 20-Mar-2025 |
Patrick Williams <patrick@stwcx.xyz> |
entry: remove AdditionalData2
The 'AdditionalData2' property was a temporary addition to ease the transition from an array to a dictionary for the additional data. All users have been migrated to us
entry: remove AdditionalData2
The 'AdditionalData2' property was a temporary addition to ease the transition from an array to a dictionary for the additional data. All users have been migrated to use the dictionary style and from the 'AdditionalData' property, so the '2' property can be removed.
Tested: Loaded an existing log database and observed dbus objects are created successfully and with the 'AdditionalData2' field missing. Created a new event with `log-create` CLI and observed new entry is created successfully in dbus.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ica3a9e5730eca8a7cf7755b769189347220e1639
show more ...
|
991e2b0d | 19-Mar-2025 |
Matt Spinler <spinler@us.ibm.com> |
Catch all exceptions when de-serializing
If an exception were to escape during an event log restore, phosphor-log-manager would just keep continuously crashing and restarting.
To prevent this, just
Catch all exceptions when de-serializing
If an exception were to escape during an event log restore, phosphor-log-manager would just keep continuously crashing and restarting.
To prevent this, just catch all exceptions and move the file that caused it to /var/lib/phosphor-logging/corrupt_error so that it is kept around for debug if desired. Only the most recent bad file is kept.
Tested:
Instead of crashing, the daemon can now stay up:
``` Mar 19 14:10:06 p10bmc phosphor-log-manager[2953]: Failed restoring /var/lib/phosphor-logging/errors/381: std::bad_alloc
/var/lib/phosphor-logging# ls -l /var/lib/phosphor-logging/corrupt_error -rw-r--r-- 1 root root 374 Mar 19 13:39 /var/lib/phosphor-logging/corrupt_error ```
Change-Id: Iaa30dff261bbbe048cbca5678f2940cb2a8ed1df Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
760b9817 | 18-Mar-2025 |
harsh-agarwal1 <harsh.agarwal@ibm.com> |
PEL: Enable deletion if PEL file is deleted
- This ensures that PEL objects are deleted if PEL files are deleted, irrespective of links to HWIsolation records.
Tested: Sample output: ```bash $ bu
PEL: Enable deletion if PEL file is deleted
- This ensures that PEL objects are deleted if PEL files are deleted, irrespective of links to HWIsolation records.
Tested: Sample output: ```bash $ busctl call xyz.openbmc_project.Logging /xyz/openbmc_project/ logging/entry/3 xyz.openbmc_project.Object.Delete Delete Call failed: The service is temporarily unavailable.
$ peltool -D ``` PEL entry 3 was deleted in above example. Change-Id: I416fad1d9dc832393b1ba689d582c602e27c79c6 Signed-off-by: Harsh Agarwal <Harsh.Agarwal@ibm.com>
show more ...
|
f045e837 | 13-Mar-2025 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Ensure PLDM response valid before using it
Make sure that pldm_transport_recv_msg() was successful before passing the response value it returns into pldm_msg_hdr_correlate_response(). Otherwise
PEL: Ensure PLDM response valid before using it
Make sure that pldm_transport_recv_msg() was successful before passing the response value it returns into pldm_msg_hdr_correlate_response(). Otherwise, a null pointer may be passed into it which will cause a crash.
Also, instead of manually freeing the response on the function exit points, just wrap it in a small Response struct that will free it in its destructor.
Change-Id: I213c44758c248d14d83144a7bad397e84fe5602b Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
d9030573 | 12-Mar-2025 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Update libpldm dep meson option
The libpldm repo changed how to configure the OEM via a meson option, so update accordingly.
Change-Id: I7c14e524171cf326ff8cf4a7dc056cc9471cecec Signed-off-by:
PEL: Update libpldm dep meson option
The libpldm repo changed how to configure the OEM via a meson option, so update accordingly.
Change-Id: I7c14e524171cf326ff8cf4a7dc056cc9471cecec Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
eaa501f3 | 23-Jan-2025 |
Amithash Prasad <amithash@meta.com> |
Add helper log-resolve CLI
Add ability to resolve log entries from command line.
Tested: Create a log using log-create and then resolve it using both the --id and --path mechanisms ``` root@bmc:~#
Add helper log-resolve CLI
Add ability to resolve log entries from command line.
Tested: Create a log using log-create and then resolve it using both the --id and --path mechanisms ``` root@bmc:~# log-create xyz.openbmc_project.Sensor.Threshold.SensorFailure -j '{"SENSOR_NAME": "Hello1"}' <3> OPENBMC_MESSAGE_ID={"xyz.openbmc_project.Sensor.Threshold.SensorFailure":{"SENSOR_NAME":"Hello1", <snip> /xyz/openbmc_project/logging/entry/11 root@bmc:~# log-resolve --id 11 <3> LOGPATH: /xyz/openbmc_project/logging/entry/11 Resolved root@bmc:~# busctl introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/11 | grep Resolved .Resolved property b true emits-change writable
root@bmc:~# log-create xyz.openbmc_project.Sensor.Threshold.SensorFailure -j '{"SENSOR_NAME": "Hello2"}' <3> OPENBMC_MESSAGE_ID={"xyz.openbmc_project.Sensor.Threshold.SensorFailure":{"SENSOR_NAME":"Hello2" <snip> /xyz/openbmc_project/logging/entry/12
root@bmc:~# log-resolve --path /xyz/openbmc_project/logging/entry/12 <3> LOGPATH: /xyz/openbmc_project/logging/entry/12 Resolved
root@bmc:~# busctl introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/12 | grep Resolved .Resolved property b true emits-change writable ```
Change-Id: Ieac6c43f2497ea97b43b2a885e929e248f669e4c Signed-off-by: Amithash Prasad <amithash@meta.com>
show more ...
|
3857579e | 03-Dec-2024 |
Patrick Williams <patrick@stwcx.xyz> |
lg2: use DEBUG_INVOCATION to reduce debug journal
The systemd-v257 release introduced a new convention that can be used by daemons to reduce the amount of calls to journald for debug-level messages:
lg2: use DEBUG_INVOCATION to reduce debug journal
The systemd-v257 release introduced a new convention that can be used by daemons to reduce the amount of calls to journald for debug-level messages: DEBUG_INVOCATION[1]. Daemons will typically start with DEBUG_INVOCATION not set, but in the event of a crash, the daemon will be restarted with it set. Daemons are expected to emit higher debug messages when ran in that mode.
Adjusting the logger code to avoid sending debug messages to journald unless DEBUG_INVOCATION is set. This reduces the overhead of logging by skipping the journald calls entirely.
[1]: https://github.com/systemd/systemd/commit/7d8bbfbe0852ec89590d1dc5e28afc95d6d44fa1
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I5896c4714b92786c8f859f2e5ab389753e4b5c26
show more ...
|
31fc9552 | 24-Feb-2025 |
Faisal Awada <faisal@us.ibm.com> |
PEL: Add PSU firmware update PELs
Add PEL entries for PSU firmware update and firmware file issues
- Added PEL for successful PSU firmware update (PEL 0x15F8) - Added PEL for PSU firmware update fa
PEL: Add PSU firmware update PELs
Add PEL entries for PSU firmware update and firmware file issues
- Added PEL for successful PSU firmware update (PEL 0x15F8) - Added PEL for PSU firmware update failure, callout of PSU and BMC (PEL 0x15F9) - Added PEL for PSU firmware file issues, referencing procedure BMC001 (PEL 0x15FA)
Test: Tested all new PEL message in simulation and verified the output.
Change-Id: I4e26a9c4a3764429931f3a509e63c5c9d0638851 Signed-off-by: Faisal Awada <faisal@us.ibm.com>
show more ...
|
5383d760 | 01-Feb-2025 |
Patrick Williams <patrick@stwcx.xyz> |
meson: reformat with meson formatter
Apply the `meson format` results.
Change-Id: I874e2c57075988db53dad8e365c0bf1ac204f81b Signed-off-by: Patrick Williams <patrick@stwcx.xyz> |
9fdcad5a | 07-Feb-2025 |
Matt Spinler <spinler@us.ibm.com> |
PELs: Use pldm_msg_hdr_correlate_response()
This call to ensure the PLDM response matches the PLDM request for the 'New PEL Available' command was previously missing (since it didn't exist at the ti
PELs: Use pldm_msg_hdr_correlate_response()
This call to ensure the PLDM response matches the PLDM request for the 'New PEL Available' command was previously missing (since it didn't exist at the time this code was written), causing the code to think it got the correct response when really it was someone else's.
It would then move on to the next PEL before it actually heard back about the current one, causing issues on the host side.
Change-Id: I471d7727a2b8c77a0ffc85c15cef7531898d22d7 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
25291157 | 01-Feb-2025 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: Iac96affe709a51dd865117d006cb033cf5c624b1 Signed-off-by: Patrick Williams <p
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: Iac96affe709a51dd865117d006cb033cf5c624b1 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
963683ac | 31-Jan-2025 |
Patrick Williams <patrick@stwcx.xyz> |
regenerate-meson: enable meson formatting
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Iaee0721778dfce7cfcbd90a8dea0eb0d5de774a0 |
1f2bb81d | 30-Jan-2025 |
Patrick Williams <patrick@stwcx.xyz> |
build: use allowed over enabled or not-disabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`)
build: use allowed over enabled or not-disabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer return true for auto features. Instead, the expectation is to use `allowed()` which is true for both enabled and auto.
Switch all uses of `enabled` to `allowed`. Switch all uses of `not disabled` to `allowed`.
Change-Id: Icc698b95d762197d496ec9f228a12d7fe48beef0 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
6cfa5923 | 27-Jan-2025 |
Matt Spinler <spinler@us.ibm.com> |
Remove readme section on app specific yaml
Requiring application specific phosphor-dbus-interfaces YAML definitions is very rare and also it is autoconf specific and all repositories have moved to m
Remove readme section on app specific yaml
Requiring application specific phosphor-dbus-interfaces YAML definitions is very rare and also it is autoconf specific and all repositories have moved to meson.
Change-Id: I21d69da5aaf07b1c5e232ed77f3ebd1ea3031520 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
4e8c0343 | 22-Jan-2025 |
Amithash Prasasd <amithash@meta.com> |
Add helper method to resolve a log object path
Add a helper method to resolve a previously generated log entry which can be used by other services in conjunction with the `lg2::commit` API.
Change-
Add helper method to resolve a log object path
Add a helper method to resolve a previously generated log entry which can be used by other services in conjunction with the `lg2::commit` API.
Change-Id: Ia1582177b51ca2f0bfecae98f999b5b8f2f61c93 Signed-off-by: Amithash Prasasd <amithash@meta.com>
show more ...
|
1d0aba2a | 13-Jan-2025 |
Chris Cain <cjcain@us.ibm.com> |
PEL: Removed severity from OCC OpenFailure PEL
The OpenFailure PEL was being set to predictive severity. These errors can happen when a system hits a processor checkpoint. There should already be an
PEL: Removed severity from OCC OpenFailure PEL
The OpenFailure PEL was being set to predictive severity. These errors can happen when a system hits a processor checkpoint. There should already be another error logged for the checkstop, so if the code hits this condition it will be logged as Notice/Informational. Also made some changes to add journal traces to other occ-control PELs.
Tested on Rainier.
Change-Id: I320a0758344718e8d1fff478c9c561063ec070e6 Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
ad0d7522 | 10-Jan-2025 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: update meson to v10 format
There was significant refactoring in sdbusplus generated meson files in order to support generating Redfish Message Registries. Those aren't interesting to thi
sdbusplus: update meson to v10 format
There was significant refactoring in sdbusplus generated meson files in order to support generating Redfish Message Registries. Those aren't interesting to this repository (and are disabled) but there are minor top-level meson changes necessary in order to the latest version of those.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I79dde5151bb5971813506252b7e0cebaacb105c2
show more ...
|
78679a03 | 17-Dec-2024 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: Replace NULL with nullptr
Replaced all instances of NULL with nullptr to improve type safety and clarity, as nullptr is the modern C++ standard for null pointers.
Tested: Build verified
clang-tidy: Replace NULL with nullptr
Replaced all instances of NULL with nullptr to improve type safety and clarity, as nullptr is the modern C++ standard for null pointers.
Tested: Build verified
Change-Id: I35a696a754bf88e8b017984bad7e9f143ecfbb9e Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
b6d3e2fc | 18-Dec-2024 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: re-format for clang-19
clang-format-19 isn't compatible with the clang-format-18 output, so we need to reformat the code with the latest version. A few parameters in clang-tidy have b
clang-format: re-format for clang-19
clang-format-19 isn't compatible with the clang-format-18 output, so we need to reformat the code with the latest version. A few parameters in clang-tidy have been deprecated, so adjust the style file accordingly.
See Ie2f6eb3b043f2d655c9df806815afd7971fd0947 for updated style. See I88192b41ab7a95599a90915013579608af7bc56f for clang-19 enablement.
Change-Id: I754b2a89844754c9d87ca20a829cce32dd7feb51 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
ea6d9c45 | 11-Dec-2024 |
Patrick Williams <patrick@stwcx.xyz> |
entry: switch AdditionalData to dict
Clients have been switched to use AddtionalData2, which is a dictionary. Move AdditionalData also to a dictionary so we can stage a removal of AdditionalData2.
entry: switch AdditionalData to dict
Clients have been switched to use AddtionalData2, which is a dictionary. Move AdditionalData also to a dictionary so we can stage a removal of AdditionalData2.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I7cc9591895f219471ac098387f72a35c18e6c750
show more ...
|
e5940634 | 22-Nov-2024 |
Patrick Williams <patrick@stwcx.xyz> |
extension: use map in create extension
Adjust the Create extension to use a map for metadata instead of vector.
Tested: Unit tests updated and passing.
Signed-off-by: Patrick Williams <patrick@stw
extension: use map in create extension
Adjust the Create extension to use a map for metadata instead of vector.
Tested: Unit tests updated and passing.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9bd62b8dcc8b18a61958ed64de98b52a48333637
show more ...
|
64a9eaa3 | 22-Nov-2024 |
Patrick Williams <patrick@stwcx.xyz> |
log_manager: directly create metadata from journal
Eliminate one call to `additional_data::parse` by having the journal metadata search use a `map` for the metadata instead of a `vector`.
Tested: T
log_manager: directly create metadata from journal
Eliminate one call to `additional_data::parse` by having the journal metadata search use a `map` for the metadata instead of a `vector`.
Tested: Test cases pass.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ib1af2e2c96cb9b385fd0f22a63043973b7e2ae14
show more ...
|
ea21d995 | 22-Nov-2024 |
Patrick Williams <patrick@stwcx.xyz> |
entry: use map for metadata in ctor
Transition the entry constructor to use the `map<string,string>` rather than the `vector<string>`.
Tested: UTs pass and daemon still creates logs.
Signed-off-by
entry: use map for metadata in ctor
Transition the entry constructor to use the `map<string,string>` rather than the `vector<string>`.
Tested: UTs pass and daemon still creates logs.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Icf3ead163cc99a1498734d33335fb6da52e6c98c
show more ...
|