Skip to contentSkip to conversation

Fixed buffered ACPI events for a lot ASUS machines

PATCH In review Thomas Renninger 2 participants 5 messages Sep 12, 2005 – Sep 13, 2005 4 messages not in the archive ACPI

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Fixed buffered ACPI events for a lot ASUS machines

Hi,

I finally could resolve the buffering of ACPI events on some ASUS (M6N, M6000, A3500N, A6000G, maybe more...) when battery module is loaded.

After hours of hopeless debugging I could track it down by comparing with Yu Luming's previously patch posted on bugzilla.kernel.org.

Yu, could you confirm that this is really fixing a bug and totally safe?

Or was this intended and could possibly lead to problems on other machines?

Thanks,

Thomas

acpi/ec.c renamed from acpi/ec.c.orig +1 -1
@@ -840,8 +840,8 @@
 	ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Evaluating %s\n", object_name));
 
 	acpi_evaluate_object(ec->common.handle, object_name, NULL, NULL);
-end:	
 	atomic_dec(&ec->burst.pending_gpe);
+end:	
 	return;
 }
 
#2 lore raw
In reply to a message not in the archive
Quoted 8 lines · Thomas Renninger

Hi,

I finally could resolve the buffering of ACPI events on some ASUS (M6N, M6000, A3500N, A6000G, maybe more...) when battery module is loaded.

After hours of hopeless debugging I could track it down by comparing with Yu Luming's previously patch posted on bugzilla.kernel.org.

Do you mean the patch at http://bugzilla.kernel.org/show_bug.cgi?id=3851#c75?
or http://bugzilla.kernel.org/show_bug.cgi?id=3851#c74

Quoted 3 lines

Yu, could you confirm that this is really fixing a bug and totally safe?

Now ec->burst.pending_gpe is useless. it will be cleaned up.

Quoted 2 lines

Or was this intended and could possibly lead to problems on other
machines?

If the attached patch fixs the bug, I guess you are using old code.

Thanks,
Luming

-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf

#4 lore raw
In reply to a message not in the archive
Quoted 11 lines · Yu Luming
Quoted 8 lines · Thomas Renninger

Hi,

I finally could resolve the buffering of ACPI events on some ASUS (M6N, M6000, A3500N, A6000G, maybe more...) when battery module is loaded.

After hours of hopeless debugging I could track it down by comparing with Yu Luming's previously patch posted on bugzilla.kernel.org.

Do you mean the patch at http://bugzilla.kernel.org/show_bug.cgi?id=3851#c75?
or http://bugzilla.kernel.org/show_bug.cgi?id=3851#c74

Quoted 9 lines
Quoted 2 lines

Yu, could you confirm that this is really fixing a bug and totally safe?

Now ec->burst.pending_gpe is useless. it will be cleaned up.

Quoted 2 lines

Or was this intended and could possibly lead to problems on other
machines?

If the attached patch fixs the bug, I guess you are using old code.

I used vanilla-2.6.13 with acpica-20050902 patches on it. So it still seems to be used, at least on ASUS machines. One of your old EC-burst patches in
http://bugzilla.kernel.org/show_bug.cgi?id=3851
had this little change. After reports of working ASUS machines with this one, I found that newer EC-burst version do not have this change anymore, but behave as the non EC-burst code on these machines.

Therefore I asked whether this change was intended or whether it is a bug that slipped in by accident. So I expect the latter?

Thanks,

Thomas

-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf

#6 lore raw
In reply to a message not in the archive
Quoted 2 lines

I used vanilla-2.6.13 with acpica-20050902 patches on it.

Yes, this version has latest ec patch.

Quoted 6 lines

So it still seems to be used, at least on ASUS machines. One of your old EC-burst patches in
http://bugzilla.kernel.org/show_bug.cgi?id=3851
had this little change. After reports of working ASUS machines with this one, I found that newer EC-burst version do not have this change anymore, but behave as the non EC-burst code on these machines.

It should be old behavior. Because, ec gpe will be wrongly disabled in some cases. I think the issue should be fixed in the latest ec patch. Because, ec gpe is always be enabled at run-time.

Quoted 3 lines

Therefore I asked whether this change was intended or whether it is a bug that slipped in by accident. So I expect the latter?

You are right. The change pointed out by your previous mail was somehow dropped in the previous EC driver release.

Anyway, please make sure the latest ec driver works as expected. ec_burst=1 is still needed to enable ec murst mode.

Thanks,
Luming

-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf

#8 lore raw
In reply to a message not in the archive
Quoted 10 lines · Yu Luming
Quoted 1 line

I used vanilla-2.6.13 with acpica-20050902 patches on it.

Yes, this version has latest ec patch.

Quoted 6 lines

So it still seems to be used, at least on ASUS machines. One of your old EC-burst patches in
http://bugzilla.kernel.org/show_bug.cgi?id=3851
had this little change. After reports of working ASUS machines with this one, I found that newer EC-burst version do not have this change anymore, but behave as the non EC-burst code on these machines.

It should be old behavior. Because, ec gpe will be wrongly disabled in some cases. I think the issue should be fixed in the latest ec patch. Because, ec gpe is always be enabled at run-time.

Yes, seems as if you are right.
I mixed up kernels during testing.
This seems to be sovled with latest 20050902 patch. Sorry for this one, I am a bit in a pressure of time...

Could you please line out the change to the older ec_burst patch by some
code.
It's very hard to pitch on the big ACPICA commits for little fixes.
ec_burst patch will be enabled in SUSE Linux 10.0 by default.
Beside lost mouse/key-strokes on some specific machines (also happen with ec_burst=0), I don't know of any greater harm ec_burst causes. If you know any other issues I'd appreciate if you let me know.

Hmm, searching for something that could have fixed it in the to-akpm/broken-out directory of Len, I don't find anything than the huge ACPICA-20050408 commit...

Thanks,

Thomas

-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf