From d9fd202185e9a3183de083e8a858f1fd3adb53bb Mon Sep 17 00:00:00 2001 From: Alex Chiang Date: Wed, 20 Jan 2010 00:06:35 -0700 Subject: [PATCH] --- yaml --- r: 180651 b: refs/heads/master c: a4932299d03a1c20e58e4cc40a66fb0a048fb3a7 h: refs/heads/master i: 180649: 56cf37ec2d00a65bc82e84436b7e76c7d0d4e453 180647: 7da70c99bd0be233e49285dffbee2a9d58edc684 v: v3 --- [refs] | 2 +- trunk/drivers/acpi/processor_pdc.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 4920b4ad2924..ca4e60981894 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0406ad336c066190770cbf350b552d608e43ed09 +refs/heads/master: a4932299d03a1c20e58e4cc40a66fb0a048fb3a7 diff --git a/trunk/drivers/acpi/processor_pdc.c b/trunk/drivers/acpi/processor_pdc.c index 3bbafe9576ae..e306ba9aa34e 100644 --- a/trunk/drivers/acpi/processor_pdc.c +++ b/trunk/drivers/acpi/processor_pdc.c @@ -125,6 +125,8 @@ acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in) return status; } +static int early_pdc_done; + void acpi_processor_set_pdc(acpi_handle handle) { struct acpi_object_list *obj_list; @@ -132,6 +134,9 @@ void acpi_processor_set_pdc(acpi_handle handle) if (arch_has_acpi_pdc() == false) return; + if (early_pdc_done) + return; + obj_list = acpi_processor_alloc_pdc(); if (!obj_list) return; @@ -199,4 +204,6 @@ void __init acpi_early_processor_set_pdc(void) acpi_walk_namespace(ACPI_TYPE_PROCESSOR, ACPI_ROOT_OBJECT, ACPI_UINT32_MAX, early_init_pdc, NULL, NULL, NULL); + + early_pdc_done = 1; }