rpms/kernel/F-9 linux-2.6-acpi-ignore-ae_not_found-error-of-ec-reg-method.patch, NONE, 1.1 kernel.spec, 1.837, 1.838

Chuck Ebbert cebbert at fedoraproject.org
Wed Nov 5 20:11:15 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv23943

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-acpi-ignore-ae_not_found-error-of-ec-reg-method.patch 
Log Message:
Fix CPU detection on some Acer systems (f10#435653)

linux-2.6-acpi-ignore-ae_not_found-error-of-ec-reg-method.patch:

--- NEW FILE linux-2.6-acpi-ignore-ae_not_found-error-of-ec-reg-method.patch ---
From: Zhao Yakui <yakui.zhao at intel.com>
Date: Fri, 17 Oct 2008 06:02:44 +0000 (-0400)
Subject: ACPI: Ignore AE_NOT_FOUND error of EC _REG method and continue to initialize EC
X-Git-Tag: v2.6.28-rc1~26^2~24^2
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=20edd74fcf9ad02c19efba0c13670a7b6b045099

ACPI: Ignore AE_NOT_FOUND error of EC _REG method and continue to initialize EC

On some broken BIOS the ACPI object in EC _REG method can't be found in
ACPI namespace, which causes that the status code of AE_NOT_FOUND is returned by
the EC _REG object. In such case the EC device can't be initialized correctly,
which causes that battery/AC adapter can't work normally. As the EC address
space handler is not removed and the memory pointed by its input argument is
already free, sometimes the kernel will also be panic when EC internal register
is still accessed. But the windows can work well on such broken BIOS.

Maybe it will be reasonable that OS ignores the AE_NOT_FOUND error
returned by the EC _REG object and continues to initialize EC device
on some broken BIOS.
For example: the ACPI object in EC _REG method can't be found and status error
code is AE_NOT_FOUND.

http://bugzilla.kernel.org/show_bug.cgi?id=8953
http://bugzilla.kernel.org/show_bug.cgi?id=10237

lenb: we may find a more general solution to this in the future.

Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
Signed-off-by: Lin Ming <ming.m.lin at intel.com>
Signed-off-by: Len Brown <len.brown at intel.com>
---

diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 13593f9..4c00428 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -862,8 +862,19 @@ static int ec_install_handlers(struct acpi_ec *ec)
 						    &acpi_ec_space_handler,
 						    NULL, ec);
 	if (ACPI_FAILURE(status)) {
-		acpi_remove_gpe_handler(NULL, ec->gpe, &acpi_ec_gpe_handler);
-		return -ENODEV;
+		if (status == AE_NOT_FOUND) {
+			/*
+			 * Maybe OS fails in evaluating the _REG object.
+			 * The AE_NOT_FOUND error will be ignored and OS
+			 * continue to initialize EC.
+			 */
+			printk(KERN_ERR "Fail in evaluating the _REG object"
+				" of EC device. Broken bios is suspected.\n");
+		} else {
+			acpi_remove_gpe_handler(NULL, ec->gpe,
+				&acpi_ec_gpe_handler);
+			return -ENODEV;
+		}
 	}
 
 	ec->handlers_installed = 1;


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-9/kernel.spec,v
retrieving revision 1.837
retrieving revision 1.838
diff -u -r1.837 -r1.838
--- kernel.spec	4 Nov 2008 23:44:39 -0000	1.837
+++ kernel.spec	5 Nov 2008 20:10:45 -0000	1.838
@@ -634,6 +634,7 @@
 
 Patch392: linux-2.6-acpi-clear-wake-status.patch
 Patch393: linux-2.6-acpi-ignore-reset_reg_sup.patch
+Patch394: linux-2.6-acpi-ignore-ae_not_found-error-of-ec-reg-method.patch
 
 Patch400: linux-2.6-scsi-cpqarray-set-master.patch
 Patch402: linux-2.6-scsi-mpt-vmware-fix.patch
@@ -1155,6 +1156,8 @@
 # reboot / resume fixes from F10
 #ApplyPatch linux-2.6-acpi-clear-wake-status.patch
 #ApplyPatch linux-2.6-acpi-ignore-reset_reg_sup.patch
+# fix cpu detection (f10#435653)
+ApplyPatch linux-2.6-acpi-ignore-ae_not_found-error-of-ec-reg-method.patch
 
 # mm
 
@@ -1917,6 +1920,9 @@
 %kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
 
 %changelog
+* Tue Nov 04 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.27.4-25
+- Fix CPU detection on some Acer systems (f10#435653)
+
 * Tue Nov 04 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.27.4-24
 - 2.6.27.5-stable queue (57 patches)
 




More information about the fedora-extras-commits mailing list