linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] fsi: scom: Don't abort operations for minor errors
@ 2019-08-15 19:08 Eddie James
  2019-08-21  4:35 ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 3+ messages in thread
From: Eddie James @ 2019-08-15 19:08 UTC (permalink / raw)
  To: linux-kernel; +Cc: gregkh, benh, Eddie James

The scom driver currently fails out of operations if certain system
errors are flagged in the status register; system checkstop, special
attention, or recoverable error. These errors won't impact the ability
of the scom engine to perform operations, so the driver should continue
under these conditions.
Also, don't do a PIB reset for these conditions, since it won't help.

Signed-off-by: Eddie James <eajames@linux.ibm.com>
---
 drivers/fsi/fsi-scom.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/drivers/fsi/fsi-scom.c b/drivers/fsi/fsi-scom.c
index 343153d..004dc03 100644
--- a/drivers/fsi/fsi-scom.c
+++ b/drivers/fsi/fsi-scom.c
@@ -38,8 +38,7 @@
 #define SCOM_STATUS_PIB_RESP_MASK	0x00007000
 #define SCOM_STATUS_PIB_RESP_SHIFT	12
 
-#define SCOM_STATUS_ANY_ERR		(SCOM_STATUS_ERR_SUMMARY | \
-					 SCOM_STATUS_PROTECTION | \
+#define SCOM_STATUS_ANY_ERR		(SCOM_STATUS_PROTECTION | \
 					 SCOM_STATUS_PARITY |	  \
 					 SCOM_STATUS_PIB_ABORT | \
 					 SCOM_STATUS_PIB_RESP_MASK)
@@ -251,11 +250,6 @@ static int handle_fsi2pib_status(struct scom_device *scom, uint32_t status)
 	/* Return -EBUSY on PIB abort to force a retry */
 	if (status & SCOM_STATUS_PIB_ABORT)
 		return -EBUSY;
-	if (status & SCOM_STATUS_ERR_SUMMARY) {
-		fsi_device_write(scom->fsi_dev, SCOM_FSI2PIB_RESET_REG, &dummy,
-				 sizeof(uint32_t));
-		return -EIO;
-	}
 	return 0;
 }
 
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] fsi: scom: Don't abort operations for minor errors
  2019-08-15 19:08 [PATCH] fsi: scom: Don't abort operations for minor errors Eddie James
@ 2019-08-21  4:35 ` Benjamin Herrenschmidt
  2019-08-21  6:05   ` Joel Stanley
  0 siblings, 1 reply; 3+ messages in thread
From: Benjamin Herrenschmidt @ 2019-08-21  4:35 UTC (permalink / raw)
  To: Eddie James, linux-kernel; +Cc: gregkh

On Thu, 2019-08-15 at 14:08 -0500, Eddie James wrote:
> The scom driver currently fails out of operations if certain system
> errors are flagged in the status register; system checkstop, special
> attention, or recoverable error. These errors won't impact the ability
> of the scom engine to perform operations, so the driver should continue
> under these conditions.
> Also, don't do a PIB reset for these conditions, since it won't help.
> 
> Signed-off-by: Eddie James <eajames@linux.ibm.com>

Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

> ---
>  drivers/fsi/fsi-scom.c | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
> 
> diff --git a/drivers/fsi/fsi-scom.c b/drivers/fsi/fsi-scom.c
> index 343153d..004dc03 100644
> --- a/drivers/fsi/fsi-scom.c
> +++ b/drivers/fsi/fsi-scom.c
> @@ -38,8 +38,7 @@
>  #define SCOM_STATUS_PIB_RESP_MASK	0x00007000
>  #define SCOM_STATUS_PIB_RESP_SHIFT	12
>  
> -#define SCOM_STATUS_ANY_ERR		(SCOM_STATUS_ERR_SUMMARY | \
> -					 SCOM_STATUS_PROTECTION | \
> +#define SCOM_STATUS_ANY_ERR		(SCOM_STATUS_PROTECTION | \
>  					 SCOM_STATUS_PARITY |	  \
>  					 SCOM_STATUS_PIB_ABORT | \
>  					 SCOM_STATUS_PIB_RESP_MASK)
> @@ -251,11 +250,6 @@ static int handle_fsi2pib_status(struct scom_device *scom, uint32_t status)
>  	/* Return -EBUSY on PIB abort to force a retry */
>  	if (status & SCOM_STATUS_PIB_ABORT)
>  		return -EBUSY;
> -	if (status & SCOM_STATUS_ERR_SUMMARY) {
> -		fsi_device_write(scom->fsi_dev, SCOM_FSI2PIB_RESET_REG, &dummy,
> -				 sizeof(uint32_t));
> -		return -EIO;
> -	}
>  	return 0;
>  }
>  


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] fsi: scom: Don't abort operations for minor errors
  2019-08-21  4:35 ` Benjamin Herrenschmidt
@ 2019-08-21  6:05   ` Joel Stanley
  0 siblings, 0 replies; 3+ messages in thread
From: Joel Stanley @ 2019-08-21  6:05 UTC (permalink / raw)
  To: Benjamin Herrenschmidt
  Cc: Eddie James, Linux Kernel Mailing List, Greg KH, Jeremy Kerr

On Wed, 21 Aug 2019 at 05:26, Benjamin Herrenschmidt
<benh@kernel.crashing.org> wrote:
>
> On Thu, 2019-08-15 at 14:08 -0500, Eddie James wrote:
> > The scom driver currently fails out of operations if certain system
> > errors are flagged in the status register; system checkstop, special
> > attention, or recoverable error. These errors won't impact the ability
> > of the scom engine to perform operations, so the driver should continue
> > under these conditions.
> > Also, don't do a PIB reset for these conditions, since it won't help.
> >
> > Signed-off-by: Eddie James <eajames@linux.ibm.com>
>
> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

Thanks Ben.  We also have one from jk which was sent to the openbmc list:

Acked-by: Jeremy Kerr <jk@ozlabs.org>

And we can add:

Fixes: 6b293258cded ("fsi: scom: Major overhaul")

I'll stick this in the FSI tree.

Cheers,

Joel

>
> > ---
> >  drivers/fsi/fsi-scom.c | 8 +-------
> >  1 file changed, 1 insertion(+), 7 deletions(-)
> >
> > diff --git a/drivers/fsi/fsi-scom.c b/drivers/fsi/fsi-scom.c
> > index 343153d..004dc03 100644
> > --- a/drivers/fsi/fsi-scom.c
> > +++ b/drivers/fsi/fsi-scom.c
> > @@ -38,8 +38,7 @@
> >  #define SCOM_STATUS_PIB_RESP_MASK    0x00007000
> >  #define SCOM_STATUS_PIB_RESP_SHIFT   12
> >
> > -#define SCOM_STATUS_ANY_ERR          (SCOM_STATUS_ERR_SUMMARY | \
> > -                                      SCOM_STATUS_PROTECTION | \
> > +#define SCOM_STATUS_ANY_ERR          (SCOM_STATUS_PROTECTION | \
> >                                        SCOM_STATUS_PARITY |     \
> >                                        SCOM_STATUS_PIB_ABORT | \
> >                                        SCOM_STATUS_PIB_RESP_MASK)
> > @@ -251,11 +250,6 @@ static int handle_fsi2pib_status(struct scom_device *scom, uint32_t status)
> >       /* Return -EBUSY on PIB abort to force a retry */
> >       if (status & SCOM_STATUS_PIB_ABORT)
> >               return -EBUSY;
> > -     if (status & SCOM_STATUS_ERR_SUMMARY) {
> > -             fsi_device_write(scom->fsi_dev, SCOM_FSI2PIB_RESET_REG, &dummy,
> > -                              sizeof(uint32_t));
> > -             return -EIO;
> > -     }
> >       return 0;
> >  }
> >
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-08-21  6:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-15 19:08 [PATCH] fsi: scom: Don't abort operations for minor errors Eddie James
2019-08-21  4:35 ` Benjamin Herrenschmidt
2019-08-21  6:05   ` Joel Stanley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).