77930f20 | 25-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Up the state PEL journal lines to 100
Change the number of journal lines captured to the max of 100 for state related PELs, since it seems like there's always interesting things going on when t
PEL: Up the state PEL journal lines to 100
Change the number of journal lines captured to the max of 100 for state related PELs, since it seems like there's always interesting things going on when those are created. The resulting PEL was about 11KB, which is still well under the max of 16KB.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I8344431386d8eb555814b64ea1b929aa4ec6b925
show more ...
|
06634e8b | 25-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Add reg entry for master FSI detection fail
This error is created when something goes wrong during the scan the FSI device driver does.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-
PEL: Add reg entry for master FSI detection fail
This error is created when something goes wrong during the scan the FSI device driver does.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ifd166ad3395602cc6d1f36356fc121379b3d2765
show more ...
|
a6c4ba7d | 24-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Use uppercase hex in message registry
The code in the Registry class requires the ReasonCode field in the message registry to use upper case hex digits (A-F) to be able to find a match to print
PEL: Use uppercase hex in message registry
The code in the Registry class requires the ReasonCode field in the message registry to use upper case hex digits (A-F) to be able to find a match to print the description in peltool, so change the message registry schema to require that. Also fix an entry that had lower case.
Alternatively, the code could be fixed, but with the schema checking that runs in CI to catch errors this method seems less impactful.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I4f26c876575be58232f1408f9357465a3340002a
show more ...
|
757c0ef3 | 04-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Update README.md with latest functionality
Describe how the code will clear the deconfig flag for replaced fans and power supplies.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id:
PEL: Update README.md with latest functionality
Describe how the code will clear the deconfig flag for replaced fans and power supplies.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I8a78748a8093fb764c890433e9e3d4d3248843bb
show more ...
|
0dd22c83 | 04-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Clear deconfig flag after callout replaced
Making use of the previous commit's framework to call a function when a fan or power supply becomes present, add code to the Manager class to register
PEL: Clear deconfig flag after callout replaced
Making use of the previous commit's framework to call a function when a fan or power supply becomes present, add code to the Manager class to register a callback that will clear the deconfig flag for all PELs created with the power-thermal or fan component ID that have the location code of the replaced fan/PS as a callout.
This way, the degraded mode reporting code will no longer pick up those PELs in its report as since the hardware was replaced those PELs are no longer relevant.
This is necessary only for fans or power supplies because they're the only N+1 hardware that can be hot plugged at runtime. And also because this is what the IBM service team wants.
Tested: Simulated missing hardware (changed present D-Bus property for fans, toggled PSU presence GPIO in the simulator for PSs). Saw errors get created for it, then simulated replacing it and saw those errors have their deconfig flag cleared, verifying before and after with peltool:
``` // Remove and replace fan phosphor-fan-monitor: Fan /system/chassis/motherboard/fan0 presence state change to false phosphor-log-manager: Created PEL 0x50000002 (BMC ID 2) with SRC 110076F1 phosphor-fan-monitor: Fan /system/chassis/motherboard/fan0 presence state change to true phosphor-log-manager: Detected FRU /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0 (U78DB.ND0.1234567-A0) present phosphor-log-manager: Clearing deconfig flag in PEL 0x50000002 with SRC 110076F1 because U78DB.ND0.1234567-A0 was replaced
// Remove and replace PS phosphor-log-manager: Created PEL 0x50000003 (BMC ID 3) with SRC 110015F6 ... phosphor-psu-monitor: Updating inventory present property. present:true invpath:/system/chassis/motherboard/powersupply0 name:powersupply0 phosphor-log-manager: Detected FRU /xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0 (U78DB.ND0.1234567-E0) present phosphor-log-manager: Clearing deconfig flag in PEL 0x50000003 with SRC 110015F6 because U78DB.ND0.1234567-E0 was replaced ```
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Iee05b4a612ca8f438f8c89f37b4e7b529a131a9f
show more ...
|
5b423651 | 04-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Watch for fan/PS hotplugs
Code is going to need to know when a fan or power supply (the only hotpluggable redundant FRUs) are added or replaced so that it can clear a flag in PELs that have tha
PEL: Watch for fan/PS hotplugs
Code is going to need to know when a fan or power supply (the only hotpluggable redundant FRUs) are added or replaced so that it can clear a flag in PELs that have that HW as a callout. This is so other code that is doing degraded mode notifications will not do any notifications for PELs calling out HW that has been replaced.
To enable this functionality, add support to the DataInterface class to tell subscribers via a function callback when a fan or power supply becomes present, as indicated by the Present property.
Code will watch the Present property of fan and power supplies to change via the PropertiesChanged signal, as well as watch for InterfacesAdded to catch when they show up on D-Bus in the first place.
It won't start any of these watches until the BMC gets to ready state so that the inventory has a chance to be populated first.
On the first boot when the inventory was previously empty there will be a round of inventory InterfacesAdded signals that will wake up the daemon when PLDM receives the processor core presence information from hostboot, but it just checks and sees it's the wrong interface and returns, and I'm not sure how it can be avoided.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I93d0727c3082677826db4a4a02c1a30986f6099b
show more ...
|
d0ccda3c | 04-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Modify Repo::updatePEL behavior
The Repository class's updatePEL function takes a PEL and then calls a passed in function to update it.
Change the behavior slightly so the callback returns a b
PEL: Modify Repo::updatePEL behavior
The Repository class's updatePEL function takes a PEL and then calls a passed in function to update it.
Change the behavior slightly so the callback returns a bool - true if the PEL was actually updated, and false else. That way the code knows if the PEL needs to be written back out or not.
There is also a minor change to refresh the PEL attributes map for the PEL inside the updatePEL function so it doesn't need to be done outside of it.
This is all to support upcoming functionality where an updatePEL call won't know if the PEL needs to be updated until the PEL fields can be checked.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ic1eabd2fcd8dfc7f559be24142b3e147d4b65062
show more ...
|
784b02e7 | 25-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL:test: Refactor mocked checkDumpStatus usage
When creating an instance of the SRC class in a testcase, it needs a filled in mock of the checkDumpStatus() function. Instead of manually doing that
PEL:test: Refactor mocked checkDumpStatus usage
When creating an instance of the SRC class in a testcase, it needs a filled in mock of the checkDumpStatus() function. Instead of manually doing that everywhere a PEL or SRC class is created, just do it in the constructor of the mock DataInterface class.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I74790c67251465aae87d318ea37891d9eabab5e5
show more ...
|
32e36b8c | 25-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL:pel_manager_test: Refactor temp dir cleanup
Several testcases were creating a temporary directory and then removing it at the end, except for one which missed the cleanup so the dir would stick
PEL:pel_manager_test: Refactor temp dir cleanup
Several testcases were creating a temporary directory and then removing it at the end, except for one which missed the cleanup so the dir would stick around in /tmp after the run was done.
To fix that and to make sure it doesn't happen again, just add the creating and deleting of the temp directory to the test fixture class so the deleting happens automatically.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I2abb720b4c0aeb9dec6117d6399c3e4692709c68
show more ...
|
4deed972 | 28-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: peltool: show hostboot deconfig/guard flags
The deconfig and guard flags in the SRC section are also valid for hostboot SRCs, so display them in peltool for hostboot PELs.
Signed-off-by: Matt
PEL: peltool: show hostboot deconfig/guard flags
The deconfig and guard flags in the SRC section are also valid for hostboot SRCs, so display them in peltool for hostboot PELs.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I3a36d61ced592e0718e016665587444b7e14f964
show more ...
|
8e65f4ea | 02-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: New D-Bus properties on PEL entry iface
Fill in the 4 newly added properties on the PEL entry D-Bus interface: - Platform log ID (PLID) - Deconfig flag from the SRC section - Guard flag from th
PEL: New D-Bus properties on PEL entry iface
Fill in the 4 newly added properties on the PEL entry D-Bus interface: - Platform log ID (PLID) - Deconfig flag from the SRC section - Guard flag from the SRC section - Creation timestamp
These were also added to the PELAttributes map in the Repository class so that each PEL wouldn't have to be reconstructed from a file again when creating the D-Bus objects.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I7878645f56c634e6111fcecc22ab27673d0c0f5d
show more ...
|
0bf04b5d | 28-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Convert a BCDTime to epoch milliseconds
Add a new function to convert a BCDTime value from a PEL to the number of milliseconds since the epoch.
This will be used to put the PEL creation timest
PEL: Convert a BCDTime to epoch milliseconds
Add a new function to convert a BCDTime value from a PEL to the number of milliseconds since the epoch.
This will be used to put the PEL creation timestamp on D-Bus.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ic470c9324e959b3e6a7eea29db4162a45dd54fc3
show more ...
|
7410260a | 25-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL:log_id_test: Remove file when testcase done
A testcase was missing a delete of a temporary file it created. Delete it so it isn't left around.
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
PEL:log_id_test: Remove file when testcase done
A testcase was missing a delete of a temporary file it created. Delete it so it isn't left around.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I4666241374ee7b6e260210539e7e29b34d018600
show more ...
|
87f39248 | 01-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Catch exception as const
That's the preferred way when catching exceptions.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ib4f27c1de673a99e61468adf261050d9c95172df |
1369ad0d | 03-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Remove old TODO comment
As usual a TODO didn't need to be done, so remove it.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ifdcf2d8a5ae4c36652eeb60bb9e536265ea13298 |
1a6b3119 | 05-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Point to libpldm repo in subproject
PLDM split into two repositories, so point at the one that is actually needed as a subproject. Also remove a PLDM meson option that isn't used anymore.
Cha
PEL: Point to libpldm repo in subproject
PLDM split into two repositories, so point at the one that is actually needed as a subproject. Also remove a PLDM meson option that isn't used anymore.
Change-Id: I79d4084d9dc6260dc1a0915f679d429f3c81792e Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
ac1ba3f2 | 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I077deb6e98025e4e8c6abd4d039f9af4db19342b Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
cfca98d6 | 05-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
PEL: remove OSStart as indication host is running
This logic is checking whether PHYP is at standby or runtime. The OSStart was never implemented by PHYP so it should not be looked at to determine t
PEL: remove OSStart as indication host is running
This logic is checking whether PHYP is at standby or runtime. The OSStart was never implemented by PHYP so it should not be looked at to determine this state. The hostboot team is going to utilize this BootProgress to indicate when they are starting PHYP.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I580703f739be9fe04f49ae00eb51f485e554287f
show more ...
|
730935fe | 26-Apr-2023 |
Andrew Geissler <geissonator@yahoo.com> |
PEL: new info log for when chassis power on is started
This new informational error is being defined for a couple of reasons: - An easy eye catcher when reviewing logs to easily distinguish between
PEL: new info log for when chassis power on is started
This new informational error is being defined for a couple of reasons: - An easy eye catcher when reviewing logs to easily distinguish between major boots of the system (ones including a chassis power cycle) - A mechanism for other OpenBMC software which utilizes the log to report back to the user when errors from the current boot need attention
This log will be created by an optional opt-in service within phosphor-state-manager as a part of the obmc-chassis-poweron@.target.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Idd39680091c6e915997d69370e988e4d0bd29912
show more ...
|
04ac4e33 | 14-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Add DeconfigFlag to certain PELs in msg reg
Set the DeconfigFlag field to true for PELs that have fan, power supply, or regulator callouts.
This is used by the 'nag' software that creates PELs
PEL: Add DeconfigFlag to certain PELs in msg reg
Set the DeconfigFlag field to true for PELs that have fan, power supply, or regulator callouts.
This is used by the 'nag' software that creates PELs to remind customers that their system is running with deconfigured/unhealthy hardware.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I2de219982bbfabe87ceda87e999e1edeb04c3522
show more ...
|
3fe93e96 | 14-Apr-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Support new DeconfigFlag msg reg field
Add a new field to the PEL message registry to indicate that some hardware associated with a callout was deconfigured.
"DeconfigFlag": true
This results
PEL: Support new DeconfigFlag msg reg field
Add a new field to the PEL message registry to indicate that some hardware associated with a callout was deconfigured.
"DeconfigFlag": true
This results in bit 6 in the SRC's hex word 5 being set. It is looked at by the code that creates the periodic PELs when there is a system running with deconfigured hardware.
Note: For something to be considered deconfigured, it doesn't necessarily mean that firmware chose to not configure it. It could also mean that it is broken or missing, at least in the case of power supplies or fans.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I3e657cb52416fc50000e299bf2d583db7b67caf8
show more ...
|
e340325b | 25-Apr-2023 |
deepa <deepakala.karthikeyan@ibm.com> |
PEL: Update host watchdog timeout event name
watchdog: Update host watchdog event name triggered
When the host watchdog timer hits, if the hostboot-dump-collection flag is disabled in openpower-deb
PEL: Update host watchdog timeout event name
watchdog: Update host watchdog event name triggered
When the host watchdog timer hits, if the hostboot-dump-collection flag is disabled in openpower-debug-collector, the org.open_power.Host.Boot.Error.WatchdogTimedOut event is triggered.
Whereas if the hostboot-dump-collection flag is enabled, the org.open_power.Host.Boot.Error.WatchdogTimeout event is triggered
Due to this, when host dump collection is disabled, the event did not match any entry in registry entry. Changing the event name and the message registry in both enabled and disabled cases to org.open_power.Host.Boot.Error.WatchdogTimedOut to see the expected PEL
Fix: Update the event name to org.open_power.Host.Boot.Error.WatchdogTimedOut
Test: Tested and verified that in both scenarios it creates SRC BD5EC101 PEL
Change-Id: I869588e4c0bf7f67aff1cef019f300a47bf29f63 Signed-off-by: Deepa Karthikeyan <deepakala.karthikeyan@ibm.com>
show more ...
|
385446ba | 14-Apr-2023 |
Marri Devender Rao <devenrao@in.ibm.com> |
PEL: Add new error message for system health state
A new error message added that will be created when there are guard records And/Or Deconfigured records And/Or unresolved pels with deconfig bit se
PEL: Add new error message for system health state
A new error message added that will be created when there are guard records And/Or Deconfigured records And/Or unresolved pels with deconfig bit set.
HMC will subscribe to this error SRC and when it gets notified it requests for NAG dump which will capture serviceable records in a JSON file and attach it to the dump.
This error message acts as a reminder for servicing faulty hardware pending service present in the system.
Tested: "0x500F05A1": { "SRC": "BD50F138", "PLID": "0x500F05A1", "CreatorID": "BMC", "Subsystem": "CEC Hardware", "Commit Time": "04/24/2023 07:47:45", "Sev": "Predictive Error", "CompID": "bmc faultlog" }
"User Header": { "Section Version": "1", "Sub-section type": "0", "Log Committed by": "bmc error logging", "Subsystem": "CEC Hardware", "Event Scope": "Entire Platform", "Event Severity": "Predictive Error", "Event Type": "Not Applicable", "Action Flags": [ "Service Action Required", "Report Externally", "HMC Call Home" ], "Host Transmission": "Not Sent", "HMC Transmission": "Not Sent" },
"User Data 1": { "Section Version": "1", "Sub-section type": "1", "Created by": "bmc error logging", "DECONFIG_RECORD_COUNT": "0", "GUARD_WITH_ASSOC_ERROR_COUNT": "1", "GUARD_WITH_NO_ASSOC_ERROR_COUNT": "0", "UNRESOLVED_PEL_WITH_DECONFIG_BIT_COUNT": "0" }
"Primary SRC": { "Section Version": "1", "Sub-section type": "1", "Created by": "bmc faultlog", "Callout Section": { "Callout Count": "1", "Callouts": [{ "FRU Type": "Maintenance Procedure Required", "Priority": "Mandatory, replace all with this type as a unit", "Procedure": "BMC0008" }] } } Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com> Change-Id: I1a046d4416719e479378d7032f32663fc07fd03a
show more ...
|
140d496e | 17-Apr-2023 |
Jagpal Singh Gill <paligill@gmail.com> |
Address markdownlint warnings
Addressed markdownlint warnings reported by "../openbmc-build-scripts/scripts/format-code.sh --enable markdownlint"
Tested: Verified and fixed warnings using "../openb
Address markdownlint warnings
Addressed markdownlint warnings reported by "../openbmc-build-scripts/scripts/format-code.sh --enable markdownlint"
Tested: Verified and fixed warnings using "../openbmc-build-scripts/scripts/format-code.sh --enable markdownlint"
Change-Id: I6f8fe65373c748b907b9ca55c527800583983538 Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
show more ...
|
f9e3e26f | 21-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
regenerate-meson: re-run with latest from sdbusplus
The sdbus++-gen-meson has a new version, which requires regenerating all the meson in this repository. Re-run the `regenerate-meson` script.
Cha
regenerate-meson: re-run with latest from sdbusplus
The sdbus++-gen-meson has a new version, which requires regenerating all the meson in this repository. Re-run the `regenerate-meson` script.
Change-Id: Ied377667a7f6fa712e1c83a0f95ceb7f18978e7f Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|