Index: venkip/src/linux-2.6.13.4/drivers/acpi/processor_core.c =================================================================== --- venkip.orig/src/linux-2.6.13.4/drivers/acpi/processor_core.c +++ venkip/src/linux-2.6.13.4/drivers/acpi/processor_core.c @@ -435,8 +435,12 @@ static u8 convert_acpiid_to_cpu(u8 acpi_ return -1; for (i = 0; i < NR_CPUS; i++) { - if (arch_cpu_to_apicid[i] == apic_id) + if (arch_cpu_to_apicid[i] == apic_id) { + ACPI_REPORT_ERROR(("all ids " + "acpi_id %d, apic_id %d, cpu_num %d\n", + acpi_id, apic_id, i)); return i; + } } return -1; } @@ -499,6 +503,9 @@ acpi_processor_get_info ( cpu_index = convert_acpiid_to_cpu(pr->acpi_id); + ACPI_REPORT_ERROR(("convert_acpiid_to_cpu returned " + "index %d for acpi_id %d\n", + cpu_index, pr->acpi_id)); /* Handle UP system running SMP kernel, with no LAPIC in MADT */ if ( !cpu0_initialized && (cpu_index == 0xff) && (num_online_cpus() == 1)) { @@ -586,8 +593,10 @@ acpi_processor_start( */ if (processor_device_array[pr->id] != NULL && processor_device_array[pr->id] != (void *)device) { - ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "BIOS reporting wrong ACPI id" - "for the processor\n")); + ACPI_REPORT_ERROR(("BIOS reporting wrong ACPI id" + "for the processor id %d, acpi_id %d\n", + pr->id, pr->acpi_id)); + pr->id = NR_CPUS; return_VALUE(-ENODEV); } processor_device_array[pr->id] = (void *)device;