remove wants on synch targets in stop-instructions

openbmc/phosphor-state-manager#21 highlights an architecture issue with
OpenBMC's use of synchronization targets. When a service, such as
op-stop-instructions@.service, 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 <geissonator@yahoo.com>
Change-Id: Ida68d83e2c2c18484eb4f28bc55c91fa5ff94930
1 file changed
tree: c09776db521af5e509d3ffa1c8c8a4bc4fc06495
  1. extensions/
  2. procedures/
  3. service_files/
  4. test/
  5. .clang-format
  6. .gitignore
  7. .shellcheck
  8. cfam_access.cpp
  9. cfam_access.hpp
  10. ext_interface.cpp
  11. ext_interface.hpp
  12. filedescriptor.cpp
  13. filedescriptor.hpp
  14. LICENSE
  15. MAINTAINERS
  16. meson.build
  17. meson_options.txt
  18. nmi_interface.cpp
  19. nmi_interface.hpp
  20. nmi_main.cpp
  21. OWNERS
  22. p10_cfam.hpp
  23. p9_cfam.hpp
  24. proc_control.cpp
  25. README.md
  26. registration.hpp
  27. targeting.cpp
  28. targeting.hpp
  29. temporary_file.cpp
  30. temporary_file.hpp
  31. util.cpp
  32. util.hpp
README.md

Contains procedures that interact with the OpenPower nest chipset.

To Build

To build this package, do the following steps:

    1. meson builddir
    2. ninja -C builddir

To build with phal feature:
    1. meson builddir -Dphal=enabled -Dopenfsi=enabled
    2. ninja -C builddir

To clean the repository run `ninja -C builddir/ clean`.