[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 11/11] docs/devel/memory.txt: Add section about RAM
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH 11/11] docs/devel/memory.txt: Add section about RAM migration |
Date: |
Fri, 7 Jul 2017 15:42:57 +0100 |
Add a section to docs/devel/memory.txt about migration of
the backing memory for RAM regions.
Signed-off-by: Peter Maydell <address@hidden>
---
docs/devel/memory.txt | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/docs/devel/memory.txt b/docs/devel/memory.txt
index 811b1bd..8ed810f 100644
--- a/docs/devel/memory.txt
+++ b/docs/devel/memory.txt
@@ -91,6 +91,37 @@ one of whose subregions is a low priority "background"
region covering
the whole address range; this is often clearer and is preferred.
Subregions cannot be added to an alias region.
+Migration
+---------
+
+Where the memory region is backed by host memory (RAM, ROM and
+ROM device memory region types), this host memory needs to be
+copied to the destination on migration. These APIs which allocate
+the host memory for you will also register the memory so it is
+migrated:
+ - memory_region_init_ram()
+ - memory_region_init_rom()
+ - memory_region_init_rom_device()
+
+For most devices and boards this is the correct thing. If you
+have a special case where you need to manage the migration of
+the backing memory yourself, you can call the functions:
+ - memory_region_init_ram_nomigrate()
+ - memory_region_init_rom_nomigrate()
+ - memory_region_init_rom_device_nomigrate()
+which only initialize the MemoryRegion and leave handling
+migration to the caller.
+
+The functions:
+ - memory_region_init_resizeable_ram()
+ - memory_region_init_ram_from_file()
+ - memory_region_init_ram_from_fd()
+ - memory_region_init_ram_ptr()
+ - memory_region_init_ram_device_ptr()
+are for special cases only, and so they do not automatically
+register the backing memory for migration; the caller must
+manage migration if necessary.
+
Region names
------------
--
2.7.4
- [Qemu-devel] [PATCH 00/11] Make memory_region_init_ram() and friends handle migration, Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 01/11] include/hw/boards.h: Document memory_region_allocate_system_memory(), Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 11/11] docs/devel/memory.txt: Add section about RAM migration,
Peter Maydell <=
- [Qemu-devel] [PATCH 10/11] hw/display/qxl.c Use memory_region_init_ram(), Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 09/11] hw/pci/pci.c: Use memory_region_init_rom(), Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 08/11] hw/block/pflash_cfi01, pflash_cfi02: Use memory_region_init_rom_device(), Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 06/11] scripts/coccinelle/memory-region-init-ram.cocci: New script, Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 05/11] memory.h: Add memory_region_init_{ram, rom, rom_device}() handling migration, Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 04/11] memory: Rename memory_region_init_rom() and _rom_device() to _nomigrate(), Peter Maydell, 2017/07/07
- [Qemu-devel] [PATCH 02/11] memory: Document that the RAM MR initializers do not handle migration, Peter Maydell, 2017/07/07