2015-02-27 12:14:38

by Valentin Rothberg

[permalink] [raw]
Subject: [PATCH] loongson-3/hpet.c: remove IRQF_DISABLED flag

The IRQF_DISABLED is a NOOP and scheduled to be removed. According to Ingo
Molnar (e58aa3d2d0cc01ad8d6f7f640a0670433f794922) running IRQ handlers with
interrupts enabled can cause stack overflows when the interrupt line of the
issuing device is still active.

Signed-off-by: Valentin Rothberg <[email protected]>
---
arch/mips/loongson/loongson-3/hpet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/mips/loongson/loongson-3/hpet.c b/arch/mips/loongson/loongson-3/hpet.c
index e898d68..5c21cd3 100644
--- a/arch/mips/loongson/loongson-3/hpet.c
+++ b/arch/mips/loongson/loongson-3/hpet.c
@@ -162,7 +162,7 @@ static irqreturn_t hpet_irq_handler(int irq, void *data)

static struct irqaction hpet_irq = {
.handler = hpet_irq_handler,
- .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_TIMER,
+ .flags = IRQF_NOBALANCING | IRQF_TIMER,
.name = "hpet",
};

--
1.9.1


2015-02-27 12:47:15

by Sergei Shtylyov

[permalink] [raw]
Subject: Re: [PATCH] loongson-3/hpet.c: remove IRQF_DISABLED flag

Hello.

On 2/27/2015 3:14 PM, Valentin Rothberg wrote:

> The IRQF_DISABLED is a NOOP and scheduled to be removed. According to Ingo
> Molnar (e58aa3d2d0cc01ad8d6f7f640a0670433f794922) running IRQ handlers with

Please also specify that commit's summary line in parens, like this:

According to commit e58aa3d2d0cc01ad8d6f7f640a0670433f794922 (genirq: Run irq
handlers with interrupts disabled)...

> interrupts enabled can cause stack overflows when the interrupt line of the
> issuing device is still active.

> Signed-off-by: Valentin Rothberg <[email protected]>

[...]

WBR, Sergei

2015-02-27 13:38:34

by Valentin Rothberg

[permalink] [raw]
Subject: [PATCH v2] loongson-3/hpet.c: remove IRQF_DISABLED flag

The IRQF_DISABLED is a NOOP and scheduled to be removed. According to
commit e58aa3d2d0cc (genirq: Run irq handlers with interrupts disabled)
running IRQ handlers with interrupts enabled can cause stack overflows
when the interrupt line of the issuing device is still active.

Signed-off-by: Valentin Rothberg <[email protected]>
---
v2: Add commit summary of referenced commit.
---
arch/mips/loongson/loongson-3/hpet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/mips/loongson/loongson-3/hpet.c b/arch/mips/loongson/loongson-3/hpet.c
index e898d68..5c21cd3 100644
--- a/arch/mips/loongson/loongson-3/hpet.c
+++ b/arch/mips/loongson/loongson-3/hpet.c
@@ -162,7 +162,7 @@ static irqreturn_t hpet_irq_handler(int irq, void *data)

static struct irqaction hpet_irq = {
.handler = hpet_irq_handler,
- .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_TIMER,
+ .flags = IRQF_NOBALANCING | IRQF_TIMER,
.name = "hpet",
};

--
1.9.1