[Skiboot] [PATCH 00/18] move direct controls out of fast-reboot,
Nicholas Piggin
npiggin at gmail.com
Sun Nov 19 20:14:50 AEDT 2017
Here's a set of patches that move the p8 direct controls out of
fast-reboot and into direct-controls. The fast reboot APIs are
implemented on top of direct controls API. This should allow fast
reboot to use sreset on p9, and cleans things up.
Also added opal quiescing patches at the end while I was working
on fast reboot stuff, but they don't logically depend on one another.
This seems to work okay on a power8 test system. Anybody looking at
doing the rest of fast reboot on power9 should start with this I
think.
Comments?
Thanks,
Nick
Nicholas Piggin (18):
fast-reboot: restore SMT priority on spin loop exit
fast-reboot: factor out direct control loops for sreset
fast-reboot: remove last man standing logic
fast-reboot: move de-asserting of special wakeups to the initiator
fast-reboot: clean up some common cpu iteration processes with macros
fast-reboot: factor out the mambo sreset code
fast-reboot: add sreset initiation error handling
fast-reboot: make spin loops consistent and SMT friendly
fast-reboot: add sreset timeout detection and handling
fast-reboot: add more barriers around cpu state changes
fast-reboot: remove delay after sreset
fast-reboot: allow mambo fast reboot independent of CPU type
fast-reboot: move sreset direct controls to direct-controls.c
direct-controls: change p8_sreset_all_others sequence
direct-controls: p8 implementation of generic direct controls
core/lock: Introduce atomic cmpxchg and implement try_lock with it
core/lock: improve bust_locks
core: Add support for quiescing OPAL
asm/Makefile.inc | 2 +-
asm/head.S | 32 +--
core/cpu.c | 8 +
core/direct-controls.c | 323 ++++++++++++++++++++-
core/fast-reboot.c | 399 +++++---------------------
core/lock.c | 29 +-
core/opal.c | 194 ++++++++++++-
core/platform.c | 6 +
doc/opal-api/opal-quiesce-158.rst | 59 ++++
doc/opal-api/opal-signal-system-reset-145.rst | 7 +
include/cpu.h | 11 +
asm/lock.S => include/direct-controls.h | 36 +--
include/lock.h | 58 +++-
include/opal-api.h | 9 +-
include/opal-internal.h | 2 +
15 files changed, 769 insertions(+), 406 deletions(-)
create mode 100644 doc/opal-api/opal-quiesce-158.rst
rename asm/lock.S => include/direct-controls.h (56%)
--
2.15.0
More information about the Skiboot
mailing list