[Kimchi-devel] [PATCH v3][Kimchi] Fix memory value return when hotplug memory devs

Rodrigo Trujillo rodrigo.trujillo at linux.vnet.ibm.com
Mon Mar 28 15:15:48 UTC 2016


There is an issue when Kimchi returns the value of memory, if the guest
is running. It is returning the current memory value, instead of the
total memory, which includes the value of the memory devices added.
This patch fix this problem returning the total value: current memory
+ total of memory devs.
This patch computes the total of memory considering different memory
device sizes and units.

Signed-off-by: Rodrigo Trujillo <rodrigo.trujillo at linux.vnet.ibm.com>
---
 model/vms.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/model/vms.py b/model/vms.py
index b56727e..a6db2bf 100644
--- a/model/vms.py
+++ b/model/vms.py
@@ -1229,7 +1229,15 @@ class VMModel(object):
                 unit = 'KiB'
             memory = convert_data_size(val, unit, 'MiB')
         else:
-            memory = info[2] >> 10
+            # Return current memory plus the amount of memory given by memory
+            # devices
+            root = ET.fromstring(xml)
+            totMemDevs = 0
+            for size in root.findall('./devices/memory/target/size'):
+                totMemDevs += convert_data_size(size.text,
+                                                size.get('unit'),
+                                                'MiB')
+            memory = (info[2] >> 10) + totMemDevs
 
         # assure there is no zombie process left
         for proc in self._serial_procs[:]:
-- 
2.1.0




More information about the Kimchi-devel mailing list