[Skiboot] [PATCH v3] IPMI: Trigger OPAL TI in abort path.
hegdevasant at linux.vnet.ibm.com
Tue Nov 5 21:01:05 AEDT 2019
On 10/31/19 11:11 PM, Mahesh Salgaonkar wrote:
> The current assert/abort implementation for BMC based system invokes cec
> reboot after printing backtrace. This means that BMC never gets notified
> about OPAL crash/termination. This sometimes leads into never ending
> IPL-ing loop if OPAL keeps aborting very early in boot path.
> Trigger a software xstop (OPAL TI) to inform BMC about the OPAL
> termination. BMC is capable of catching checkstop signal and facilitate in
> rebooting (IPL-ing) host.
> With AutoReboot policy, OpenBMC handles checkstop signals and counts them
> against the reboot counter. In cases where OPAL is crashing before host
> reaches to runtime, OpenBMC will move the system in Quiesced state after 3
> or so attempts of IPL/reboot so that system can be debugged. When OPAL
> triggers software checkstop it causes all the CPU threads to be stooped and
> moved to quiesced state. Hence OPAL don't need to explicitly stop all CPUs
> before calling software xstop.
> Signed-off-by: Mahesh Salgaonkar <mahesh at linux.vnet.ibm.com>
> - Trigger software xstop (OPAL TI) instead of attn.
> - Always Quiesce the secondaries in abort path.
> - Change the attn_supported type to bool.
> hw/ipmi/ipmi-attn.c | 31 ++++++++++++++++++++++++-------
> 1 file changed, 24 insertions(+), 7 deletions(-)
> diff --git a/hw/ipmi/ipmi-attn.c b/hw/ipmi/ipmi-attn.c
> index 3a615189d..98ce51a90 100644
> --- a/hw/ipmi/ipmi-attn.c
> +++ b/hw/ipmi/ipmi-attn.c
> @@ -14,6 +14,8 @@
> #include <skiboot.h>
> #include <stack.h>
> #include <timebase.h>
> +#include <direct-controls.h>
You don't need to include above header file. Otherwise patch looks good to me.
More information about the Skiboot