diff options
author | H. Peter Anvin <hpa@zytor.com> | 2009-06-01 15:13:02 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-06-01 15:25:31 -0700 |
commit | 48b1fddbb100a64f3983ca9768b8ea629a09aa20 (patch) | |
tree | 7cf552c623cb0aa0dd945df55b7eaf5a0697e277 /drivers/acpi/processor_perflib.c | |
parent | 38736072d45488fd45f076388b6570419bbbc682 (diff) | |
parent | ee4c24a5c9b530481394132c8dbc10572d57c075 (diff) |
Merge branch 'irq/numa' into x86/mce3
Merge reason: arch/x86/kernel/irqinit_{32,64}.c unified in irq/numa
and modified in x86/mce3; this merge resolves the conflict.
Conflicts:
arch/x86/kernel/irqinit.c
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'drivers/acpi/processor_perflib.c')
-rw-r--r-- | drivers/acpi/processor_perflib.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/acpi/processor_perflib.c b/drivers/acpi/processor_perflib.c index cafb41000f6..60e543d3234 100644 --- a/drivers/acpi/processor_perflib.c +++ b/drivers/acpi/processor_perflib.c @@ -309,9 +309,15 @@ static int acpi_processor_get_performance_states(struct acpi_processor *pr) (u32) px->bus_master_latency, (u32) px->control, (u32) px->status)); - if (!px->core_frequency) { - printk(KERN_ERR PREFIX - "Invalid _PSS data: freq is zero\n"); + /* + * Check that ACPI's u64 MHz will be valid as u32 KHz in cpufreq + */ + if (!px->core_frequency || + ((u32)(px->core_frequency * 1000) != + (px->core_frequency * 1000))) { + printk(KERN_ERR FW_BUG PREFIX + "Invalid BIOS _PSS frequency: 0x%llx MHz\n", + px->core_frequency); result = -EFAULT; kfree(pr->performance->states); goto end; |