linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] cxl: Prevent IRQ storm
@ 2017-04-27  1:37 Alastair D'Silva
  2017-04-27  4:41 ` Andrew Donnellan
  0 siblings, 1 reply; 4+ messages in thread
From: Alastair D'Silva @ 2017-04-27  1:37 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: frederic.barrat, andrew.donnellan, Alastair D'Silva

From: Alastair D'Silva <alastair@d-silva.org>

In some situations, a faulty AFU slice may create an interrupt storm,
rendering the machine unusable. Since these interrupts are informational
only, present the interrupt once, then mask it off to prevent it from
being retriggered until the card is reset.

Changelog:
v2
	Rebase against linux-next

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
---
 drivers/misc/cxl/native.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/misc/cxl/native.c b/drivers/misc/cxl/native.c
index 194c58e..95a776a 100644
--- a/drivers/misc/cxl/native.c
+++ b/drivers/misc/cxl/native.c
@@ -1205,7 +1205,7 @@ static irqreturn_t native_slice_irq_err(int irq, void *data)
 {
 	struct cxl_afu *afu = data;
 	u64 errstat, serr, afu_error, dsisr;
-	u64 fir_slice, afu_debug;
+	u64 fir_slice, afu_debug, irq_mask;
 
 	/*
 	 * slice err interrupt is only used with full PSL (no XSL)
@@ -1226,6 +1226,10 @@ static irqreturn_t native_slice_irq_err(int irq, void *data)
 	dev_crit(&afu->dev, "AFU_ERR_An: 0x%.16llx\n", afu_error);
 	dev_crit(&afu->dev, "PSL_DSISR_An: 0x%.16llx\n", dsisr);
 
+	/* mask off the IRQ so it won't retrigger until the card is reset */
+	irq_mask = (serr & 0xff80000000000000ULL) >> 32;
+	serr |= irq_mask;
+
 	cxl_p1n_write(afu, CXL_PSL_SERR_An, serr);
 
 	return IRQ_HANDLED;
-- 
2.9.3

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

* Re: [PATCH v2] cxl: Prevent IRQ storm
  2017-04-27  1:37 [PATCH v2] cxl: Prevent IRQ storm Alastair D'Silva
@ 2017-04-27  4:41 ` Andrew Donnellan
  2017-04-27  4:47   ` Alastair D'Silva
  2017-04-27 11:29   ` Michael Ellerman
  0 siblings, 2 replies; 4+ messages in thread
From: Andrew Donnellan @ 2017-04-27  4:41 UTC (permalink / raw)
  To: Alastair D'Silva, linuxppc-dev; +Cc: frederic.barrat, Alastair D'Silva

On 27/04/17 11:37, Alastair D'Silva wrote:
> From: Alastair D'Silva <alastair@d-silva.org>
>
> In some situations, a faulty AFU slice may create an interrupt storm,
> rendering the machine unusable. Since these interrupts are informational
> only, present the interrupt once, then mask it off to prevent it from
> being retriggered until the card is reset.
>
> Changelog:
> v2
> 	Rebase against linux-next

The patch changelog shouldn't be part of the commit message - it should 
go under a "---" line after the sign-off so it doesn't get included in 
the final commit.

Also now that I've taken a second look, I think the summary line of the 
commit message could be more descriptive, something like:

"cxl: mask slice error interrupt after first occurrence"

or something to that effect?


Andrew

-- 
Andrew Donnellan              OzLabs, ADL Canberra
andrew.donnellan@au1.ibm.com  IBM Australia Limited

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

* Re: [PATCH v2] cxl: Prevent IRQ storm
  2017-04-27  4:41 ` Andrew Donnellan
@ 2017-04-27  4:47   ` Alastair D'Silva
  2017-04-27 11:29   ` Michael Ellerman
  1 sibling, 0 replies; 4+ messages in thread
From: Alastair D'Silva @ 2017-04-27  4:47 UTC (permalink / raw)
  To: Andrew Donnellan, linuxppc-dev; +Cc: frederic.barrat

On Thu, 2017-04-27 at 14:41 +1000, Andrew Donnellan wrote:
On 27/04/17 11:37, Alastair D'Silva wrote:
> > From: Alastair D'Silva <alastair@d-silva.org>
> > 
> > In some situations, a faulty AFU slice may create an interrupt
> > storm,
> > rendering the machine unusable. Since these interrupts are
> > informational
> > only, present the interrupt once, then mask it off to prevent it
> > from
> > being retriggered until the card is reset.
> > 
> > Changelog:
> > v2
> > 	Rebase against linux-next
> 
> The patch changelog shouldn't be part of the commit message - it
> should 
> go under a "---" line after the sign-off so it doesn't get included
> in 
> the final commit.
> 
> Also now that I've taken a second look, I think the summary line of
> the 
> commit message could be more descriptive, something like:
> 
> "cxl: mask slice error interrupt after first occurrence"
> 
> or something to that effect?
> 

Ok

-- 
Alastair D'Silva
Open Source Developer
Linux Technology Centre, IBM Australia
mob: 0423 762 819

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

* Re: [PATCH v2] cxl: Prevent IRQ storm
  2017-04-27  4:41 ` Andrew Donnellan
  2017-04-27  4:47   ` Alastair D'Silva
@ 2017-04-27 11:29   ` Michael Ellerman
  1 sibling, 0 replies; 4+ messages in thread
From: Michael Ellerman @ 2017-04-27 11:29 UTC (permalink / raw)
  To: Andrew Donnellan, Alastair D'Silva, linuxppc-dev
  Cc: Alastair D'Silva, frederic.barrat

Andrew Donnellan <andrew.donnellan@au1.ibm.com> writes:

> On 27/04/17 11:37, Alastair D'Silva wrote:
>> From: Alastair D'Silva <alastair@d-silva.org>
>>
>> In some situations, a faulty AFU slice may create an interrupt storm,
>> rendering the machine unusable. Since these interrupts are informational
>> only, present the interrupt once, then mask it off to prevent it from
>> being retriggered until the card is reset.
>>
>> Changelog:
>> v2
>> 	Rebase against linux-next
>
> The patch changelog shouldn't be part of the commit message - it should 
> go under a "---" line after the sign-off so it doesn't get included in 
> the final commit.
>
> Also now that I've taken a second look, I think the summary line of the 
> commit message could be more descriptive, something like:
>
> "cxl: mask slice error interrupt after first occurrence"
        ^
        M

:D

cheers

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

end of thread, other threads:[~2017-04-27 11:29 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-27  1:37 [PATCH v2] cxl: Prevent IRQ storm Alastair D'Silva
2017-04-27  4:41 ` Andrew Donnellan
2017-04-27  4:47   ` Alastair D'Silva
2017-04-27 11:29   ` Michael Ellerman

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).