[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 08/14] memory: record below_4g_mem_size, above_4g
From: |
Hu Tao |
Subject: |
[Qemu-devel] [PATCH v5 08/14] memory: record below_4g_mem_size, above_4g_mem_size |
Date: |
Wed, 26 Jun 2013 17:13:31 +0800 |
Signed-off-by: Hu Tao <address@hidden>
---
hw/i386/pc.c | 17 ++++++++---------
include/hw/i386/pc.h | 2 ++
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 5bb4989..55056b1 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1288,7 +1288,6 @@ static int memory_controller_init(PCIDevice *dev)
MemoryController *m = MEMORY_CONTROLLER(dev);
MemoryControllerClass *c = MEMORY_CONTROLLER_GET_CLASS(dev);
ram_addr_t ram_size;
- hwaddr below_4g_mem_size, above_4g_mem_size;
hwaddr pci_hole_start, pci_hole_size;
hwaddr pci_hole64_start, pci_hole64_size;
int i;
@@ -1296,11 +1295,11 @@ static int memory_controller_init(PCIDevice *dev)
g_assert(m->system_memory != NULL);
if(m->ram_size > c->pci_hole_start) {
- below_4g_mem_size = c->pci_hole_start;
- above_4g_mem_size = m->ram_size - c->pci_hole_start;
+ m->below_4g_mem_size = c->pci_hole_start;
+ m->above_4g_mem_size = m->ram_size - c->pci_hole_start;
} else {
- below_4g_mem_size = m->ram_size;
- above_4g_mem_size = 0;
+ m->below_4g_mem_size = m->ram_size;
+ m->above_4g_mem_size = 0;
}
/* Allocate RAM. We allocate it as a single memory region and use
@@ -1310,16 +1309,16 @@ static int memory_controller_init(PCIDevice *dev)
memory_region_init_ram(&m->ram, "pc.ram", m->ram_size);
vmstate_register_ram_global(&m->ram);
memory_region_init_alias(&m->ram_below_4g, "ram-below-4g", &m->ram,
- 0, below_4g_mem_size);
+ 0, m->below_4g_mem_size);
memory_region_add_subregion(m->system_memory, 0, &m->ram_below_4g);
- if (above_4g_mem_size > 0) {
+ if (m->above_4g_mem_size > 0) {
memory_region_init_alias(&m->ram_above_4g, "ram-above-4g", &m->ram,
- below_4g_mem_size, above_4g_mem_size);
+ m->below_4g_mem_size, m->above_4g_mem_size);
memory_region_add_subregion(m->system_memory, c->pci_hole_end,
&m->ram_above_4g);
}
- pci_hole_start = below_4g_mem_size;
+ pci_hole_start = m->below_4g_mem_size;
pci_hole_size = c->pci_hole_end - pci_hole_start;
pci_hole64_start = c->pci_hole_end + m->ram_size - pci_hole_start;
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 5d36558..e2cbc1b 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -46,6 +46,8 @@ typedef struct MemoryController {
MemoryRegion ram;
MemoryRegion ram_below_4g;
MemoryRegion ram_above_4g;
+ hwaddr below_4g_mem_size;
+ hwaddr above_4g_mem_size;
} MemoryController;
void mc_update_pam(MemoryController *d);
--
1.8.3.1
- [Qemu-devel] [PATCH v5 02/14] Add SIZE type to qdev properties, (continued)
- [Qemu-devel] [PATCH v5 02/14] Add SIZE type to qdev properties, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 06/14] acpi_piix4 : Implement memory device hotplug registers, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 11/14] Introduce paravirt interface QEMU_CFG_PCI_WINDOW, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 09/14] memory controller: initialize dram controller., Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 04/14] Implement dimm device abstraction, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 13/14] balloon: update with hotplugged memory, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 07/14] acpi_ich9 : Implement memory device hotplug registers, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 10/14] pc: Add dimm paravirt SRAT info, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 12/14] Implement "info memory" and "query-memory", Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 08/14] memory: record below_4g_mem_size, above_4g_mem_size,
Hu Tao <=
- [Qemu-devel] [PATCH v5 14/14] Implement dimm-info, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 0/7] support for ACPI memory hotplug, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 1/7] Add ACPI_EXTRACT_DEVICE* macros, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 2/7] Add SSDT memory device support, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 4/7] set psize to 0 when romfile_loadfile failed, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 3/7] acpi-dsdt: Implement functions for memory hotplug, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 6/7] q35: Add memory hotplug handler, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 7/7] pci: Use paravirt interface for pcimem_start and pcimem64_start, Hu Tao, 2013/06/26
- [Qemu-devel] [PATCH v5 5/7] acpi: generate hotplug memory devices, Hu Tao, 2013/06/26