Subject: Re: [PATCH] powerpc/powernv: Avoid to set EEH_PE_ISOLATED for passed PE

From: Mike Qiu <[email-masked]>
Date: Fri, 15 Aug 2014 11:17:45 +0800

Hi, all

After discussing with Gavin offline, it's inappropriate to drop ISOLATED 
state. Please ignore this patch.

Otherwise, somebody will merge that to mainline, which would be a problem.

Thanks,
Mike
On 08/13/2014 07:14 PM, Mike Qiu wrote:
> When PE passed to guest, and guest EEH occured with this PE,
> EEH_PE_ISOLATED maybe set in host.
>
> It is a big issue when the PE  is reused by host, host EEH
> will not work on this PE because it was set to EEH_PE_ISOLATED
> unexpectly.
>
> Signed-off-by: Mike Qiu <[email-masked]>
> ---
>   arch/powerpc/platforms/powernv/eeh-ioda.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/platforms/powernv/eeh-ioda.c b/arch/powerpc/platforms/powernv/eeh-ioda.c
> index c945bed..e88eaf6 100644
> --- a/arch/powerpc/platforms/powernv/eeh-ioda.c
> +++ b/arch/powerpc/platforms/powernv/eeh-ioda.c
> @@ -371,7 +371,8 @@ static int ioda_eeh_get_pe_state(struct eeh_pe *pe)
>   	    !(result & EEH_STATE_UNAVAILABLE) &&
>   	    !(result & EEH_STATE_MMIO_ACTIVE) &&
>   	    !(result & EEH_STATE_DMA_ACTIVE)  &&
> -	    !(pe->state & EEH_PE_ISOLATED)) {
> +	    !(pe->state & EEH_PE_ISOLATED)    &&
> +	    !eeh_pe_passed(pe)) {
>   		if (phb->freeze_pe)
>   			phb->freeze_pe(phb, pe->addr);
>