Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

remove wants on synch targets in stop-instructions #5

Merged
merged 1 commit into from
Jul 21, 2022

Conversation

geissonator
Copy link
Contributor

openbmc/phosphor-state-manager#21 highlights an architecture issue with
OpenBMC's use of synchronization targets. When a service, such as
[email protected], runs both in a standard power off
target, as well as in other paths (like the host quiesce path), there
is an issue.

The service starts the synchronization targets in the quiesce path and
this causes them to already be running on the power off, resulting in
the synchronization targets not actually coordinating the power off.

The direction this commit takes OpenBMC is that if a service needs to
run outside of the standard power on or off path, then they can not
have a Wants or Requires clause in the service file.

The following commit was done a while back to address this issue:
https://gerrit.openbmc.org/c/openbmc/phosphor-state-manager/+/40026

That is that we ensure the primary power on and off targets start the
synchronization targets so services requiring them can just use a
Before or After clause.

The piece that was never done was to go and fix the services which fell
into this bucket.

Tested:

  • Did multiple boots, reboots, and host crash tests and saw no issues

Signed-off-by: Andrew Geissler [email protected]
Change-Id: Ida68d83e2c2c18484eb4f28bc55c91fa5ff94930

openbmc/phosphor-state-manager#21 highlights an architecture issue with
OpenBMC's use of synchronization targets. When a service, such as
[email protected], runs both in a standard power off
target, as well as in other paths (like the host quiesce path), there
is an issue.

The service starts the synchronization targets in the quiesce path and
this causes them to already be running on the power off, resulting in
the synchronization targets not actually coordinating the power off.

The direction this commit takes OpenBMC is that if a service needs to
run outside of the standard power on or off path, then they can not
have a Wants or Requires clause in the service file.

The following commit was done a while back to address this issue:
  https://gerrit.openbmc.org/c/openbmc/phosphor-state-manager/+/40026

That is that we ensure the primary power on and off targets start the
synchronization targets so services requiring them can just use a
Before or After clause.

The piece that was never done was to go and fix the services which fell
into this bucket.

Tested:
- Did multiple boots, reboots, and host crash tests and saw no issues

Signed-off-by: Andrew Geissler <[email protected]>
Change-Id: Ida68d83e2c2c18484eb4f28bc55c91fa5ff94930
@geissonator
Copy link
Contributor Author

geissonator commented Jul 20, 2022

This is a part of the fix for SW55219 (fw1020.10)
Upstream commit is merged via https://gerrit.openbmc.org/c/openbmc/openpower-proc-control/+/54224

@geissonator geissonator requested a review from ojayanth July 20, 2022 21:10
@ojayanth
Copy link
Contributor

Changes LGTM.

@rfrandse 1020 branch is used for fw1020.10 ? Incase need any emergency fix in fw1020 , how are going to handle?

@geissonator

@rfrandse rfrandse merged commit 91c1982 into ibm-openbmc:1020 Jul 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants