From 4d6edc177a44dc7ef99cf44df4d81ea13216d5e3 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Wed, 15 Jun 2011 20:49:03 +0100 Subject: [PATCH] x86: Fix argument checking in (privileged) function cpu_add(). Thanks to John McDermott for spotting. Signed-off-by: Keir Fraser xen-unstable changeset: 23505:5a557fda70a9 xen-unstable date: Fri Jun 10 08:08:44 2011 +0100 --- xen/arch/x86/smpboot.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c index b0b9f52d65..6ad01f822b 100644 --- a/xen/arch/x86/smpboot.c +++ b/xen/arch/x86/smpboot.c @@ -1477,8 +1477,9 @@ int cpu_add(uint32_t apic_id, uint32_t acpi_id, uint32_t pxm) dprintk(XENLOG_DEBUG, "cpu_add apic_id %x acpi_id %x pxm %x\n", apic_id, acpi_id, pxm); - if ( acpi_id > MAX_MADT_ENTRIES || apic_id > MAX_APICS || pxm > 256 ) - return -EINVAL; + if ( (acpi_id >= MAX_MADT_ENTRIES) || + (apic_id >= MAX_APICS) || + (pxm >= 256) ) /* Detect if the cpu has been added before */ if ( x86_acpiid_to_apicid[acpi_id] != 0xff) -- 2.39.5