[Skiboot] [PATCH v2] FSP: Disable PSI link whenever FSP tells OPAL about impending R/R

Ananth N Mavinakayanahalli ananth at linux.vnet.ibm.com
Tue Oct 10 15:15:55 AEDT 2017


On Tue, Oct 10, 2017 at 04:12:13AM +0000, Vasant Hegde wrote:
> Commit 42d5d047 fixed scenario where DPO has been initiated, but FSP went
> into reset before the CEC power down came in. But this is generic issue
> that can happen in normal shutdown path as well.
> 
> Hence disable PSI link as soon as we detect FSP impending R/R.
> 
> CC: Ananth N Mavinakayanahalli <ananth at linux.vnet.ibm.com>
> CC: Stewart Smith <stewart at linux.vnet.ibm.com>
> Signed-off-by: Vasant Hegde <hegdevasant at linux.vnet.ibm.com>
> ---
>  hw/fsp/fsp.c  | 24 +++++++-----------------
>  include/fsp.h |  1 -
>  2 files changed, 7 insertions(+), 18 deletions(-)
> 
> diff --git a/hw/fsp/fsp.c b/hw/fsp/fsp.c
> index 4d17397..d837bba 100644
> --- a/hw/fsp/fsp.c
> +++ b/hw/fsp/fsp.c
> @@ -720,23 +720,13 @@ static void fsp_handle_errors(struct fsp *fsp)
>  		if (fsp->state == fsp_mbx_rr)
>  			return;
> 
> -		if (fsp_dpo_pending) {
> -			/*
> -			 * If we are about to process a reset when DPO
> -			 * is pending, its possible that the host has
> -			 * gone down, and OPAL is on its way down and
> -			 * hence will not see the subsequent PSI interrupt.
> -			 * So, just give up the link here.
> -			 */
> -			prlog(PR_NOTICE, "FSP #%d: FSP reset with DPO pending."
> -					" Giving up PSI link\n",
> -					fsp->index);
> -			psi_disable_link(psi);
> -		} else {
> -			prlog(PR_NOTICE, "FSP #%d: FSP in Reset."
> -				" Waiting for PSI interrupt\n",
> -				fsp->index);
> -		}
> +		/*
> +		 * Its possible that the host has gone down, and OPAL is on
> +		 * its way down and hence will not see the subsequent PSI
> +		 * interrupt. So, just give up the link here.
> +		 */
> +		psi_disable_link(psi);
> +		prlog(PR_NOTICE, "FSP #%d: FSP in Reset.\n", fsp->index);

prlog(PR_NOTICE, "FSP #%D: FSP in reset. Giving up PSI link\n", fsp->index);



More information about the Skiboot mailing list