[Skiboot] [PATCH 0/4] next round of OPAL debugging improvements
npiggin at gmail.com
Sun Apr 8 16:49:35 AEST 2018
The r13 clobber bug has been fixed in Linux upstream now, the next
bit is the skiboot stack corruption caused by re-entry from the OS.
Patches 1-3 have been posted here before in various RFCs. They give
nicer back traces, make quiescing a bit more robust, and stop the
stack from being destroyed, and make quiescing a bit more robust.
Patch 4 is one I've found useful when testing with sreset injection
into various parts of skiboot code.
We can in general interrupt and resume OPAL after this series.
Many specific cases are unlikely to work for other reasons, but
we have a cut down sub-set of OPAL API that we allow through, so
the task of making those reasonably robust should be manageable.
Nicholas Piggin (4):
core/stack: backtrace unwind basic OPAL call details
asm/head: implement quiescing without stack or clobbering regs
core/opal: Emergency stack for re-entry
core/opal: Allow poller re-entry if OPAL was re-entered
asm/asm-offsets.c | 2 ++
asm/head.S | 100 ++++++++++++++++++++++++++++++++++++++++++++++++------
core/cpu.c | 13 ++++---
core/opal.c | 53 ++++++++++++-----------------
core/stack.c | 46 ++++++++++++++++++++-----
include/cpu.h | 3 +-
include/mem-map.h | 10 +++---
include/stack.h | 34 ++++++++++++++++---
8 files changed, 196 insertions(+), 65 deletions(-)
More information about the Skiboot