qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PULL v2 013/106] pc: exit QEMU if number of slots more tha


From: Michael S. Tsirkin
Subject: [Qemu-devel] [PULL v2 013/106] pc: exit QEMU if number of slots more than supported 256
Date: Wed, 18 Jun 2014 19:16:23 +0300

From: Igor Mammedov <address@hidden>

... which is imposed by current naming scheme of ACPI memory devices.

Signed-off-by: Igor Mammedov <address@hidden>
Acked-by: Peter Crosthwaite <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
 include/hw/acpi/acpi.h | 6 ++++++
 hw/i386/pc.c           | 6 ++++++
 2 files changed, 12 insertions(+)

diff --git a/include/hw/acpi/acpi.h b/include/hw/acpi/acpi.h
index a9fae9d..e93de6c 100644
--- a/include/hw/acpi/acpi.h
+++ b/include/hw/acpi/acpi.h
@@ -26,6 +26,12 @@
 #include "exec/memory.h"
 #include "hw/irq.h"
 
+/*
+ * current device naming scheme supports
+ * only upto 256 memory devices
+ */
+#define ACPI_MAX_RAM_SLOTS 256
+
 /* from linux include/acpi/actype.h */
 /* Default ACPI register widths */
 
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 6cdcb00..366e799 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1230,6 +1230,12 @@ FWCfgState *pc_memory_init(MemoryRegion *system_memory,
         ram_addr_t hotplug_mem_size =
             machine->maxram_size - ram_size;
 
+        if (machine->ram_slots > ACPI_MAX_RAM_SLOTS) {
+            error_report("unsupported amount of memory slots: %"PRIu64,
+                         machine->ram_slots);
+            exit(EXIT_FAILURE);
+        }
+
         pcms->hotplug_memory_base =
             ROUND_UP(0x100000000ULL + above_4g_mem_size, 1ULL << 30);
 
-- 
MST




reply via email to

[Prev in Thread] Current Thread [Next in Thread]