Messages in this thread | | | Date | Thu, 17 Jul 2008 17:02:54 +0100 | From | Alan Jenkins <> | Subject | Re: [PATCH] acpi: Avoid dropping rapid hotkey events (or other GPEs) on Asus EeePC |
| |
Alexey Starikovskiy wrote: > Hi Alan, > > Could you please test if your patch works with the last patch in #10919? > > Thanks, > Alex. Vacuously so.
My patch still applies, but #10919 makes it obsolete. My patch fixed a bug that shows up in polling mode. #10919 kills polling mode.
I've tested v2.6.26 + #10919 and it works fine (except for spamming the kernel log - please read my Bugzilla comment).
It appears that interrupt mode suffered from a race which is very similar to my original problem. If two GPE interrupts arrive before the workqueue runs, then the second interrupt will be ignored because EC_FLAGS_QUERY_PENDING is still set. This will happen with any EC if interrupts are very close together, right?
I think my patch also fixes this theoretical problem. But I'd rather you took over on this. I was already confused by ec.c in v2.6.26, and with #10919 I understand it even less. E.g. why is ec_switch_to_poll_mode() still present; what does it do now do_ec_poll() is removed?
I'm happy to work on this with you, but I'd need to be able understand the code first :-(.
Alan
| |