[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 07/79] vl.c: ensure that ram_size matches size of machine.memo
From: |
Igor Mammedov |
Subject: |
[PATCH v6 07/79] vl.c: ensure that ram_size matches size of machine.memory-backend |
Date: |
Wed, 19 Feb 2020 11:08:41 -0500 |
Extend set_memory_options() to check that size specified by -m
matches the size of backend pointed by memory-backend.
And in case of -m was omitted adjust ram_size to match that
of explicitly provided backend.
Signed-off-by: Igor Mammedov <address@hidden>
---
CC: address@hidden
---
vl.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/vl.c b/vl.c
index 72ffc06f2f..a7edcba094 100644
--- a/vl.c
+++ b/vl.c
@@ -2655,6 +2655,21 @@ static void set_memory_options(uint64_t *ram_slots,
ram_addr_t *maxram_size,
exit(EXIT_FAILURE);
}
+ if (current_machine->ram_memdev_id) {
+ Object *backend;
+ ram_addr_t backend_size;
+
+ backend = object_resolve_path_type(current_machine->ram_memdev_id,
+ TYPE_MEMORY_BACKEND, NULL);
+ backend_size = object_property_get_uint(backend, "size",
&error_abort);
+ if (mem_str && backend_size != ram_size) {
+ error_report("Size specified by -m option must match size of "
+ "explicitly specified 'memory-backend' property");
+ exit(EXIT_FAILURE);
+ }
+ ram_size = backend_size;
+ }
+
if (!xen_enabled()) {
/* On 32-bit hosts, QEMU is limited by virtual address space */
if (ram_size > (2047 << 20) && HOST_LONG_BITS == 32) {
--
2.18.1
- [PATCH v6 00/79] refactor main RAM allocation to use hostmem backend, Igor Mammedov, 2020/02/19
- [PATCH v6 01/79] numa: remove deprecated -mem-path fallback to anonymous RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 02/79] machine: introduce memory-backend property, Igor Mammedov, 2020/02/19
- [PATCH v6 06/79] vl.c: move -m parsing after memory backends has been processed, Igor Mammedov, 2020/02/19
- [PATCH v6 05/79] initialize MachineState::ram in NUMA case, Igor Mammedov, 2020/02/19
- [PATCH v6 08/79] alpha/dp264: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 03/79] machine: alias -mem-path and -mem-prealloc into memory-foo backend, Igor Mammedov, 2020/02/19
- [PATCH v6 04/79] machine: introduce convenience MachineState::ram, Igor Mammedov, 2020/02/19
- [PATCH v6 10/79] arm/aspeed: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 07/79] vl.c: ensure that ram_size matches size of machine.memory-backend,
Igor Mammedov <=
- [PATCH v6 09/79] arm/aspeed: actually check RAM size, Igor Mammedov, 2020/02/19
- [PATCH v6 12/79] arm/cubieboard: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 13/79] arm/digic_boards: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 14/79] arm/highbank: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 16/79] arm/imx25_pdk: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 19/79] arm/kzm: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 17/79] arm/integratorcp: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 18/79] arm/kzm: drop RAM size fixup, Igor Mammedov, 2020/02/19
- [PATCH v6 15/79] arm/imx25_pdk: drop RAM size fixup, Igor Mammedov, 2020/02/19
- [PATCH v6 21/79] arm/mcimx7d-sabre: use memdev for RAM, Igor Mammedov, 2020/02/19