Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cfaf3747ff3d431fba33f75083b7f50f58ae22ff
Commit:     cfaf3747ff3d431fba33f75083b7f50f58ae22ff
Parent:     3ce54450461bad18bbe1f9f5aa3ecd2f8e8d1235
Author:     Zhang Rui <[EMAIL PROTECTED]>
AuthorDate: Wed Jan 9 02:17:47 2008 -0500
Committer:  Len Brown <[EMAIL PROTECTED]>
CommitDate: Wed Jan 9 02:17:47 2008 -0500

    ACPI: ACPI Exception (): AE_NOT_FOUND, Processor Device is not present
    
    ACPI Exception (acpi_processor-0677): AE_NOT_FOUND, Processor Device is not
    present [20060707]
    
    According to the ACPI spec 6.3.7,
    "If a device object (including the processor object) does not have an
    _STA object, then OSPM assumes that all of the above bits are set,
    (in other words, the device is present, enabled, shown in the UI
    and funtioning)".
    
    is_processor_present shoud return 1 if the processor device object exists
    while it doesn't have an _STA object.
    
    http://bugzilla.kernel.org/show_bug.cgi?id=8570
    
    Signed-off-by: Zhang Rui <[EMAIL PROTECTED]>
    Signed-off-by: Len Brown <[EMAIL PROTECTED]>
---
 drivers/acpi/processor_core.c |   17 ++++++++++++-----
 1 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c
index e48ee4f..c53113e 100644
--- a/drivers/acpi/processor_core.c
+++ b/drivers/acpi/processor_core.c
@@ -812,11 +812,18 @@ static int is_processor_present(acpi_handle handle)
 
 
        status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
-       if (ACPI_FAILURE(status) || !(sta & ACPI_STA_DEVICE_PRESENT)) {
-               ACPI_EXCEPTION((AE_INFO, status, "Processor Device is not 
present"));
-               return 0;
-       }
-       return 1;
+       /*
+        * if a processor object does not have an _STA object,
+        * OSPM assumes that the processor is present.
+        */
+       if (status == AE_NOT_FOUND)
+               return 1;
+
+       if (ACPI_SUCCESS(status) && (sta & ACPI_STA_DEVICE_PRESENT))
+               return 1;
+
+       ACPI_EXCEPTION((AE_INFO, status, "Processor Device is not present"));
+       return 0;
 }
 
 static
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to