Re: [PATCH] powerpc/powernv/elog: Reduce elog message severity

2020-10-17 Thread Vasant Hegde

On 10/9/20 10:34 AM, Michael Ellerman wrote:

Vasant Hegde  writes:

OPAL interrupts kernel whenever it has new error log. Kernel calls
interrupt handler (elog_event()) to retrieve event. elog_event makes
OPAL API call (opal_get_elog_size()) to retrieve elog info.

In some case before kernel makes opal_get_elog_size() call, it gets interrupt
again. So second time when elog_event() calls opal_get_elog_size API OPAL
returns error.


Can you give more detail there? Do you have a stack trace?


I observe below log in dmesg
  [  615.708709] ELOG: OPAL log info read failed

That means elog_event called twice for same error log event.
I don't have stack trace.



We use IRQF_ONESHOT for elog_event(), which (I thought) meant it
shouldn't be called again until it has completed.


Yes. I thought so.. But once in a while we get above message (mostly when we 
have multiple event bits are set).


-Vasant




So I'm unclear how you're seeing the behaviour you describe.

cheers


Its safe to ignore this error. Hence reduce the severity
of log message.

CC: Mahesh Salgaonkar 
Signed-off-by: Vasant Hegde 
---
  arch/powerpc/platforms/powernv/opal-elog.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/platforms/powernv/opal-elog.c 
b/arch/powerpc/platforms/powernv/opal-elog.c
index 62ef7ad995da..67f435bb1ec4 100644
--- a/arch/powerpc/platforms/powernv/opal-elog.c
+++ b/arch/powerpc/platforms/powernv/opal-elog.c
@@ -247,7 +247,7 @@ static irqreturn_t elog_event(int irq, void *data)
  
  	rc = opal_get_elog_size(&id, &size, &type);

if (rc != OPAL_SUCCESS) {
-   pr_err("ELOG: OPAL log info read failed\n");
+   pr_debug("ELOG: OPAL log info read failed\n");
return IRQ_HANDLED;
}
  
--

2.26.2




Re: [PATCH] powerpc/powernv/elog: Reduce elog message severity

2020-10-08 Thread Michael Ellerman
Vasant Hegde  writes:
> OPAL interrupts kernel whenever it has new error log. Kernel calls
> interrupt handler (elog_event()) to retrieve event. elog_event makes
> OPAL API call (opal_get_elog_size()) to retrieve elog info.
>
> In some case before kernel makes opal_get_elog_size() call, it gets interrupt
> again. So second time when elog_event() calls opal_get_elog_size API OPAL
> returns error.

Can you give more detail there? Do you have a stack trace?

We use IRQF_ONESHOT for elog_event(), which (I thought) meant it
shouldn't be called again until it has completed.

So I'm unclear how you're seeing the behaviour you describe.

cheers

> Its safe to ignore this error. Hence reduce the severity
> of log message.
>
> CC: Mahesh Salgaonkar 
> Signed-off-by: Vasant Hegde 
> ---
>  arch/powerpc/platforms/powernv/opal-elog.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/platforms/powernv/opal-elog.c 
> b/arch/powerpc/platforms/powernv/opal-elog.c
> index 62ef7ad995da..67f435bb1ec4 100644
> --- a/arch/powerpc/platforms/powernv/opal-elog.c
> +++ b/arch/powerpc/platforms/powernv/opal-elog.c
> @@ -247,7 +247,7 @@ static irqreturn_t elog_event(int irq, void *data)
>  
>   rc = opal_get_elog_size(&id, &size, &type);
>   if (rc != OPAL_SUCCESS) {
> - pr_err("ELOG: OPAL log info read failed\n");
> + pr_debug("ELOG: OPAL log info read failed\n");
>   return IRQ_HANDLED;
>   }
>  
> -- 
> 2.26.2