Re: [PATCH 01/11] ACPI: EC: count interrupts only if called from interrupt handler.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alan Jenkins wrote:
On 11/27/08, Len Brown <lenb@xxxxxxxxxx> wrote:
From: Alexey Starikovskiy <astarikovskiy@xxxxxxx>

fix 2.6.28 EC interrupt storm regression

Signed-off-by: Alexey Starikovskiy <astarikovskiy@xxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
---

Yay, this means my EeePC no longer reports interrupt storms.

Great!
The patch looks obviously correct.  What about -stable?  -stable has
all the previous EC fixes, so I assume it's affected by this
regression.
IMHO, Rafael already marked it for stable.

The patch solves a bug I was about to report.  In storm avoidance
mode, the polling is still not 100% robust against the flaky EC.

My current understanding is that firmware for this controller is not written as a state machine,
and breaks if more than one timed action occurs.
I've found a contact with eeePC project manager and asked him about the whole "interrupt storm" issue,
but did not get any reply yet...
1) If I hold down brightness up/down and then remove the power cable,
the EC stops working immediately.
Probably, may be, you don't supposed to do it? :)
2) I had an odd one-off occasion with the familiar "out of sync
hotkeys" & eventual EC death.

Thanks
Alan

 drivers/acpi/ec.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index cf41f9f..30f3ef2 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -219,7 +219,8 @@ static void gpe_transaction(struct acpi_ec *ec, u8
status)
 	goto unlock;
 err:
 	/* false interrupt, state didn't change */
-	++ec->curr->irq_count;
+	if (in_interrupt())
+		++ec->curr->irq_count;
 unlock:
 	spin_unlock_irqrestore(&ec->curr_lock, flags);
 }
--
1.5.6.5

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux