From: Anthony Liguori <aliguori@us.ibm.com>
Date: Mon, 19 Dec 2011 15:12:25 +0000 (-0600)
Subject: Merge remote-tracking branch 'qemu-kvm/memory/mutators' into staging
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=cde7fc31dee7a7bac96779f77a21825b187871d3;p=qemu.git

Merge remote-tracking branch 'qemu-kvm/memory/mutators' into staging

Conflicts:
	memory.h
---

cde7fc31dee7a7bac96779f77a21825b187871d3
diff --cc memory.h
index beae1274d5,c07bcca306..fe643ff05b
--- a/memory.h
+++ b/memory.h
@@@ -501,17 -502,50 +502,55 @@@ void memory_region_add_subregion_overla
  void memory_region_del_subregion(MemoryRegion *mr,
                                   MemoryRegion *subregion);
  
 -
+ /*
+  * memory_region_set_enabled: dynamically enable or disable a region
+  *
+  * Enables or disables a memory region.  A disabled memory region
+  * ignores all accesses to itself and its subregions.  It does not
+  * obscure sibling subregions with lower priority - it simply behaves as
+  * if it was removed from the hierarchy.
+  *
+  * Regions default to being enabled.
+  *
+  * @mr: the region to be updated
+  * @enabled: whether to enable or disable the region
+  */
+ void memory_region_set_enabled(MemoryRegion *mr, bool enabled);
+ 
+ /*
+  * memory_region_set_address: dynamically update the address of a region
+  *
+  * Dynamically updates the address of a region, relative to its parent.
+  * May be used on regions are currently part of a memory hierarchy.
+  *
+  * @mr: the region to be updated
+  * @addr: new address, relative to parent region
+  */
+ void memory_region_set_address(MemoryRegion *mr, target_phys_addr_t addr);
+ 
+ /*
+  * memory_region_set_alias_offset: dynamically update a memory alias's offset
+  *
+  * Dynamically updates the offset into the target region that an alias points
+  * to, as if the fourth argument to memory_region_init_alias() has changed.
+  *
+  * @mr: the #MemoryRegion to be updated; should be an alias.
+  * @offset: the new offset into the target memory region
+  */
+ void memory_region_set_alias_offset(MemoryRegion *mr,
+                                     target_phys_addr_t offset);
+ 
 -/* Start a transaction; changes will be accumulated and made visible only
 - * when the transaction ends.
 +/**
 + * memory_region_transaction_begin: Start a transaction.
 + *
 + * During a transaction, changes will be accumulated and made visible
 + * only when the transaction ends (is commited).
   */
  void memory_region_transaction_begin(void);
 -/* Commit a transaction and make changes visible to the guest.
 +
 +/**
 + * memory_region_transaction_commit: Commit a transaction and make changes
 + *                                   visible to the guest.
   */
  void memory_region_transaction_commit(void);