diff options
author | Alex Chiang <achiang@hp.com> | 2008-07-16 14:47:08 -0400 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2008-07-17 14:24:42 -0400 |
commit | efc7508c9e29944fb3d9edf166d3d584557c33d1 (patch) | |
tree | 0c261d41e19dad6c56b7511f9ab8b4a0e5f38415 | |
parent | 740a8de0796dd12890b3c8ddcfabfcb528b78d40 (diff) |
[IA64] Avoid overflowing ia64_cpu_to_sapicid in acpi_map_lsapic()
acpi_map_lsapic tries to stuff a long into ia64_cpu_to_sapicid[],
which can only hold ints, so let's fix that.
We need to update the signature of acpi_map_cpu2node() too.
Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
-rw-r--r-- | arch/ia64/kernel/acpi.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/ia64/kernel/acpi.c b/arch/ia64/kernel/acpi.c index 43687cc60dfb..5d1eb7ee2bf6 100644 --- a/arch/ia64/kernel/acpi.c +++ b/arch/ia64/kernel/acpi.c | |||
@@ -774,7 +774,7 @@ int acpi_gsi_to_irq(u32 gsi, unsigned int *irq) | |||
774 | */ | 774 | */ |
775 | #ifdef CONFIG_ACPI_HOTPLUG_CPU | 775 | #ifdef CONFIG_ACPI_HOTPLUG_CPU |
776 | static | 776 | static |
777 | int acpi_map_cpu2node(acpi_handle handle, int cpu, long physid) | 777 | int acpi_map_cpu2node(acpi_handle handle, int cpu, int physid) |
778 | { | 778 | { |
779 | #ifdef CONFIG_ACPI_NUMA | 779 | #ifdef CONFIG_ACPI_NUMA |
780 | int pxm_id; | 780 | int pxm_id; |
@@ -854,8 +854,7 @@ int acpi_map_lsapic(acpi_handle handle, int *pcpu) | |||
854 | union acpi_object *obj; | 854 | union acpi_object *obj; |
855 | struct acpi_madt_local_sapic *lsapic; | 855 | struct acpi_madt_local_sapic *lsapic; |
856 | cpumask_t tmp_map; | 856 | cpumask_t tmp_map; |
857 | long physid; | 857 | int cpu, physid; |
858 | int cpu; | ||
859 | 858 | ||
860 | if (ACPI_FAILURE(acpi_evaluate_object(handle, "_MAT", NULL, &buffer))) | 859 | if (ACPI_FAILURE(acpi_evaluate_object(handle, "_MAT", NULL, &buffer))) |
861 | return -EINVAL; | 860 | return -EINVAL; |