diff options
author | Zhang Rui <rui.zhang@intel.com> | 2008-01-09 02:17:47 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-01-09 02:17:47 -0500 |
commit | cfaf3747ff3d431fba33f75083b7f50f58ae22ff (patch) | |
tree | 93e1e06c405b59b6ab6828c73c9656d87cdb05d9 | |
parent | 3ce54450461bad18bbe1f9f5aa3ecd2f8e8d1235 (diff) |
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 <rui.zhang@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r-- | 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 e48ee4f8749f..c53113e18004 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) | |||
812 | 812 | ||
813 | 813 | ||
814 | status = acpi_evaluate_integer(handle, "_STA", NULL, &sta); | 814 | status = acpi_evaluate_integer(handle, "_STA", NULL, &sta); |
815 | if (ACPI_FAILURE(status) || !(sta & ACPI_STA_DEVICE_PRESENT)) { | 815 | /* |
816 | ACPI_EXCEPTION((AE_INFO, status, "Processor Device is not present")); | 816 | * if a processor object does not have an _STA object, |
817 | return 0; | 817 | * OSPM assumes that the processor is present. |
818 | } | 818 | */ |
819 | return 1; | 819 | if (status == AE_NOT_FOUND) |
820 | return 1; | ||
821 | |||
822 | if (ACPI_SUCCESS(status) && (sta & ACPI_STA_DEVICE_PRESENT)) | ||
823 | return 1; | ||
824 | |||
825 | ACPI_EXCEPTION((AE_INFO, status, "Processor Device is not present")); | ||
826 | return 0; | ||
820 | } | 827 | } |
821 | 828 | ||
822 | static | 829 | static |