Re: [Qemu-devel] [PATCH v2 2/2] RAM API: Make use of it for x86 PC

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

 



On 11/01/2010 10:14 AM, Alex Williamson wrote:
Register the actual VM RAM using the new API

Signed-off-by: Alex Williamson<alex.williamson@xxxxxxxxxx>
---

  hw/pc.c |   12 ++++++------
  1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/hw/pc.c b/hw/pc.c
index 69b13bf..0ea6d10 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -912,14 +912,14 @@ void pc_memory_init(ram_addr_t ram_size,
      /* allocate RAM */
      ram_addr = qemu_ram_alloc(NULL, "pc.ram",
                                below_4g_mem_size + above_4g_mem_size);
-    cpu_register_physical_memory(0, 0xa0000, ram_addr);
-    cpu_register_physical_memory(0x100000,
-                 below_4g_mem_size - 0x100000,
-                 ram_addr + 0x100000);
+
+    qemu_ram_register(0, 0xa0000, ram_addr);
+    qemu_ram_register(0x100000, below_4g_mem_size - 0x100000,
+                      ram_addr + 0x100000);
  #if TARGET_PHYS_ADDR_BITS>  32
      if (above_4g_mem_size>  0) {
-        cpu_register_physical_memory(0x100000000ULL, above_4g_mem_size,
-                                     ram_addr + below_4g_mem_size);
+        qemu_ram_register(0x100000000ULL, above_4g_mem_size,
+                          ram_addr + below_4g_mem_size);
      }

Take a look at the memory shadowing in the i440fx. The regions of memory in the BIOS area can temporarily become RAM.

That's because there is normally RAM backing this space but the memory controller redirects writes to the ROM space.

Not sure the best way to handle this, but the basic concept is, RAM always exists but if a device tries to access it, it may or may not be accessible as RAM at any given point in time.

Regards,

Anthony Liguori

  #endif





--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux