2038e492 | 16-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
reboot-cause: look for pinhole reset first
A pinhole reset is usually a users last try and recovering a hung system. On some systems, a pinhole reset will result in both a BMC reset and a power off
reboot-cause: look for pinhole reset first
A pinhole reset is usually a users last try and recovering a hung system. On some systems, a pinhole reset will result in both a BMC reset and a power off to the chassis. Need to ensure the real reason is recorded so look for the pinhole reset first before looking to see if an AC loss has occurred.
Testing: - None, logic seems fairly obvious
Change-Id: I51f41620df2a2f99469ec8fdcba2e464a7711d82 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
d0b709e8 | 16-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
gitignore: add vscode
Been using vscode for a while now for development and have accidentally added the vscode dir a few times due to global adds.
Change-Id: Ib73231bc962a7917a4ee4300a28b9ebe2b0458
gitignore: add vscode
Been using vscode for a while now for development and have accidentally added the vscode dir a few times due to global adds.
Change-Id: Ib73231bc962a7917a4ee4300a28b9ebe2b0458b3 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
e56feb49 | 01-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: update documentation about new optional feature
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ia0682fd935bb15942fb7c2b51f049521ded59d4b |
b0986c07 | 31-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: auto power restart function update
This service is responsible for executing the auto power restart logic for the system. Prior to this change, it would run as a oneshot service during th
bmc-ready: auto power restart function update
This service is responsible for executing the auto power restart logic for the system. Prior to this change, it would run as a oneshot service during the multi-user.target. This meant the BMC would not achieve "Ready" state until after this service has completed.
With the recent changes to support not allowing a power on of the system until the BMC is "Ready", we need to change this service so it is not holding up that state change.
Systems that enable this new feature to only allow a power on when the BMC is in a "Ready" state will need to ensure they have a non-zero PowerRestoreDelay set for their system. This allows the service in this commit to start, the BMC to get to "Ready" and then the power on request to be made (if needed).
If in the future there's a need to enable this new feature and also have a 0s delay, then this service will need to be enhanced to wait for BMC "Ready".
Tested: - Set policy to AlwaysOn, confirmed service started, BMC hit "Ready", service waited 30s, and then issued power on without issue.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I1ecb8ed9e1cd6babfa2c0fdb51e8a9bd6c83e214
show more ...
|
765446ae | 25-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: don't allow power operations if not ready
Tested: - Put BMC in NotReady state and verified error was returned when requesting a chassis or host power on - Verified that a power off was
bmc-ready: don't allow power operations if not ready
Tested: - Put BMC in NotReady state and verified error was returned when requesting a chassis or host power on - Verified that a power off was still possible in this state
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I8f17c681469c01c701e80cdb57ed623e04c8b921
show more ...
|
fc1020f2 | 24-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: utility function to check bmc state
Add a utility function that chassis and host code can call to determine if the BMC is in a Ready state.
Signed-off-by: Andrew Geissler <geissonator@ya
bmc-ready: utility function to check bmc state
Add a utility function that chassis and host code can call to determine if the BMC is in a Ready state.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ibf11a3f160c57a9a1570ee639e0b9c4ab020bf45
show more ...
|
629e3c40 | 25-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: new optional feature definition
This is the start of a series of commits which will enable a new feature within phosphor-state-manager to not allow host or chassis operations if the BMC i
bmc-ready: new optional feature definition
This is the start of a series of commits which will enable a new feature within phosphor-state-manager to not allow host or chassis operations if the BMC is not in the "Ready" state.
Some systems require (and assume) all BMC services are up and running before a chassis or host operation is started. For example IBM systems collect VPD from i2c devices shared with the host firmware, the BMC must complete collecting all of that VPD before the host is started. The completion of the VPD collection is required for the BMC to reach Ready state.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I0aed9323348f92dffb330089143c5f569b57a1fb
show more ...
|
14560f5b | 01-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
fix existing markdownlint issues in file
Note that markdownlint tries to put <> around anything with a "@." in it assuming it's an email. Need to add a \ before the @ to let it know it's not a email
fix existing markdownlint issues in file
Note that markdownlint tries to put <> around anything with a "@." in it assuming it's an email. Need to add a \ before the @ to let it know it's not a email address.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I97965e16512da80d60ae031f984c30faeb60014f
show more ...
|
57c0a893 | 03-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
hypervisor: remove OSStart from state association
Turns out the hypervisor never utilized the OSStart BootProgress. Remove it from our mapping to hypervisor state.
Our hostboot BIOS team is actuall
hypervisor: remove OSStart from state association
Turns out the hypervisor never utilized the OSStart BootProgress. Remove it from our mapping to hypervisor state.
Our hostboot BIOS team is actually looking to utilize this BootProgress to indicate when they start the hypervisor. This would just be a standard BootProgress that PSM needs no special handling of.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I99a7110de47943a98a35f0e8bf2516a27bb7e6fa
show more ...
|
9e5cd389 | 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: I2612058799afbcd10f98bd32d2e191b0be7e437b Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
afe12d69 | 28-Apr-2023 |
Andrew Geissler <geissonator@yahoo.com> |
optional service to log info log on chassis poweron
This commit introduces a new service that will log an informational log on every chassis power on.
This new informational error is being created
optional service to log info log on chassis poweron
This commit introduces a new service that will log an informational log on every chassis power on.
This new informational error is being created 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 service needs to run before any of the power/vrm services run to ensure any logs from those services can be correlated to running after the current power on has started.
By default this service will not be installed but can be brought in via a bbappend if desired.
Tested: - Built new service into a flash image and confirmed - Info log was logged as expected during power on (prior to any vrm, power, or fan functions) - Info log was not logged when rebooting the BMC from a host running state
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: If78c076d86efabed6b0093e9f4116502a4d9da93
show more ...
|
8aca0507 | 01-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
obmcutil: correct new shellcheck warnings
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Icbbe5680ef3c95aa3fea6aa5048b4e4524c8e7fa |
c079c3f0 | 12-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: remove deprecated get_pkgconfig_variable
Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In meson 0.58 the `get_variable` was enhanced to no longer require the `pkgconfig
meson: remove deprecated get_pkgconfig_variable
Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In meson 0.58 the `get_variable` was enhanced to no longer require the `pkgconfig` keyword argument. Ensure meson 0.58 is required and update the usage of all `get_pkgconfig_variable` and `get_variable` to be the modern variant.
Change-Id: I6a4954110ff24c724376bf8ed3e42d71eeeb4819 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
b454d8be | 27-Mar-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
secure-boot: Log an error if TPM measurement fails
Log an error if the TPM measurement fails due to the absence or invalid value of the file '/sys/class/tpm/tpm0/pcr-sha256/0'.
Tested: Verified tha
secure-boot: Log an error if TPM measurement fails
Log an error if the TPM measurement fails due to the absence or invalid value of the file '/sys/class/tpm/tpm0/pcr-sha256/0'.
Tested: Verified that an error is logged when '/sys/class/tpm/tpm0/pcr-sha256/0' is absent, empty, or has a value of 0, indicating that the TPM measurement has failed. ``` "Severity" : { "type" : "s", "data" : "xyz.openbmc_project.Logging.Entry.Level.Error" }, "Message" : { "type" : "s", "data" : "xyz.openbmc_project.State.Error.TpmMeasurementFail" }, "AdditionalData" : { "type" : "as", "data" : [ "ERROR=TPM measurement value is empty: /sys/class/tpm/tpm0/pcr-sha256/0", "_PID=501" ] }, ```
Change-Id: I9be610a9b473a529b09feec6643ec65b58a62907 Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
e960184d | 03-Mar-2023 |
Potin Lai <potin.lai@quantatw.com> |
discover_system_state: fix ifdef ONLY_RUN_APR_ON_POWER_LOSS always true
ONLY_RUN_APR_ON_POWER_LOSS is defined as 0 or 1 in config.h, it should use `#if ONLY_RUN_APR_ON_POWER_LOSS` instead of `#ifdef
discover_system_state: fix ifdef ONLY_RUN_APR_ON_POWER_LOSS always true
ONLY_RUN_APR_ON_POWER_LOSS is defined as 0 or 1 in config.h, it should use `#if ONLY_RUN_APR_ON_POWER_LOSS` instead of `#ifdef ONLY_RUN_APR_ON_POWER_LOSS`, otherwise it will be true statement all the time.
Signed-off-by: Potin Lai <potin.lai@quantatw.com> Change-Id: I36d1d0071c0c2c6b3d34d2d9f58d4ea0b4334cb7
show more ...
|
a0d7bb84 | 01-Mar-2023 |
Andrew Geissler <geissonator@yahoo.com> |
scheduled_host_transition: change object path
Recently, it was noticed that both the phosphor-scheduled-host-transition and phosphor-host-state-manager services were implementing the same object on
scheduled_host_transition: change object path
Recently, it was noticed that both the phosphor-scheduled-host-transition and phosphor-host-state-manager services were implementing the same object on d-bus, but putting different interfaces under them. This causes confusion because quite a few services utilize the mapper-wait dependency: mapper-wait@-xyz-openbmc_project-state-host%i.service
The dependency is meant to wait for the interfaces under phosphor-host-state-manager but if the scheduled-host one starts first, that will complete the mapper-wait dependency. This results in services with a dependency on host-state starting before they should! It seems the recent removal of mapper.target dependencies from the service files has brought this bug to light.
The only other software within OpenBMC that accesses the scheduled-host interface is in PLDM and some robot tests. If this change is approved then I'll make the appropriate changes in those repos as we are changing an existing d-bus object here (although a minimally used one).
Tested: - Ensured that when xyz.openbmc_project.State.Host0 is stopped, the "mapper wait /xyz/openbmc_project/state/host0" does not return.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I4addb971f7ddd464c2714aa3e87ef7ef07cb737c
show more ...
|
5c4a0822 | 28-Feb-2023 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are for: * bus_t * exception_t * manager_t * match_t * message_t * object_t * slot_t
Change-Id: I14b39033b24fd43d85e3f3cb83ac38ea57a4884a Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
48a4e5e5 | 15-Feb-2023 |
Andrew Geissler <geissonator@yahoo.com> |
increase timeout on systemd Subscribe method call
An issue was recently hit in IBM manufacturing where this call to the Subscribe method provided by systemd returned a dbus timeout. The phosphor-hos
increase timeout on systemd Subscribe method call
An issue was recently hit in IBM manufacturing where this call to the Subscribe method provided by systemd returned a dbus timeout. The phosphor-host-state-manager service was restarted and the call then passed, but by this time the first fail generated a core dump and resulted in a BMC Quiesced state.
The situation is not easily recreatable and was only seen on our largest configured systems, and only after a factory reset.
No searching of systemd bugs has turned up anything in this area so it appears to be specific to OpenBMC. Most likely related to our embedded env and large amount of services started during BMC startup, especially after a factory reset.
Worst case time on our max configured system was around 30s so double that and make it our timeout for this call.
Tested - Basic good path testing to ensure no regressions - 100+ factory resets done on a variety of systems to ensure the timeout was no longer seen
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Id32017c3d0ca7d12091818467b15adf0e1a7aaa9
show more ...
|
928bbf15 | 14-Feb-2023 |
Andrew Geissler <geissonator@yahoo.com> |
move systemd subscribe to util function
This code is replicated in multiple source files in this repo, put it in the util repo so everyone can call it in one place.
Tested: - Verified systemd signa
move systemd subscribe to util function
This code is replicated in multiple source files in this repo, put it in the util repo so everyone can call it in one place.
Tested: - Verified systemd signals seen and system boots
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I8bf0343c79012cc91dea033038894a011fd37ef5
show more ...
|
46068d9b | 14-Feb-2023 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
treewide: remove dependencies on mapper.target
The mapper is dbus activated now, so these explicit dependency declarations are unnecessary and redundant.
Change-Id: I9898fa6c9918a6ab4fe166acf5d335f
treewide: remove dependencies on mapper.target
The mapper is dbus activated now, so these explicit dependency declarations are unnecessary and redundant.
Change-Id: I9898fa6c9918a6ab4fe166acf5d335f89c1540fd Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
9f444d4c | 03-Feb-2023 |
Andrew Geissler <geissonator@yahoo.com> |
hypervisor: reduce journal logging
Currently, anytime the BootProgress property changes the code will log a "Change to Hypervisor..." message. During the boot though, there are a lot of BootProgress
hypervisor: reduce journal logging
Currently, anytime the BootProgress property changes the code will log a "Change to Hypervisor..." message. During the boot though, there are a lot of BootProgress changes that do not actually result in a hypervisor state change. Be a bit smarter about logging to the journal.
Tested: - Confirmed the journal entry is only written when the hypervisor state is actually changing.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I104a5ff7488f4a660386a581521ab75a12c07206
show more ...
|
b640ec47 | 26-Jan-2023 |
Andrew Geissler <geissonator@yahoo.com> |
update service file deps in accordance with recent refactoring
As noted in the following mailing list thread: https://lists.ozlabs.org/pipermail/openbmc/2022-November/032457.html
and implemented vi
update service file deps in accordance with recent refactoring
As noted in the following mailing list thread: https://lists.ozlabs.org/pipermail/openbmc/2022-November/032457.html
and implemented via this series of commits: https://gerrit.openbmc.org/q/topic:op-power-control-ref
Some systemd services had their names changed. Update this service file to reflect this.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I8fdefbeb3d5100bc42eb365c59ad80d6b2119c26
show more ...
|
44a03f9d | 20-Jan-2023 |
Andrew Geissler <geissonator@yahoo.com> |
service-deps: add missing target monitor dep
The target and service monitor software makes d-bus calls to the dump manager service and does not handle it missing in a graceful manner. Ensure the dum
service-deps: add missing target monitor dep
The target and service monitor software makes d-bus calls to the dump manager service and does not handle it missing in a graceful manner. Ensure the dump manager service is running before starting this service.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I46223fae1a202893ec3be7c9d8fd08ba430f3e8b
show more ...
|
d0fa61c5 | 20-Jan-2023 |
Andrew Geissler <geissonator@yahoo.com> |
service-deps: add missing discover system state dep
The discover system state software makes d-bus calls to the settings service and does not handle it missing in a graceful manner. Ensure the setti
service-deps: add missing discover system state dep
The discover system state software makes d-bus calls to the settings service and does not handle it missing in a graceful manner. Ensure the setting service is running before starting this service.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Icb362b2472c3efb135941a7124fc9c3b4b069a00
show more ...
|
cd5a32a6 | 20-Jan-2023 |
Andrew Geissler <geissonator@yahoo.com> |
service-deps: add missing host state dependencies
The host state manager code makes d-bus calls to both the settings and dump manager services. The code does not handle these services not being avai
service-deps: add missing host state dependencies
The host state manager code makes d-bus calls to both the settings and dump manager services. The code does not handle these services not being available in a graceful manner (a project for another day) so for now, ensure these services are defined as needed.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ide188832dc0e3c71f90d338ac0a06bd2e10c3f19
show more ...
|