Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


free configuration data during deinitialization
Jack Lange [Wed, 12 Jan 2011 19:36:09 +0000 (13:36 -0600)]
palacios/include/palacios/vmm_config.h
palacios/src/palacios/vm_guest.c
palacios/src/palacios/vmm.c
palacios/src/palacios/vmm_config.c

index 34ad114..fe82063 100644 (file)
@@ -35,6 +35,7 @@
 struct v3_vm_info;
 
 struct v3_vm_info * v3_config_guest( void * cfg_blob, void * priv_data);
+int v3_free_config(struct v3_vm_info * vm);
 
 struct v3_cfg_file {
     void * data;
index 0e8e5f2..36ec7d2 100644 (file)
@@ -575,7 +575,7 @@ int v3_free_vm_internal(struct v3_vm_info * vm) {
     v3_deinit_hypercall_map(vm);
 
 #ifdef CONFIG_TELEMETRY
-    v3_deinit_telemetry(vm);
+    //v3_deinit_telemetry(vm);
 #endif
 
     return 0;
index 3bd27a8..a82fb42 100644 (file)
@@ -310,6 +310,8 @@ int v3_free_vm(struct v3_vm_info * vm) {
     // free vm
     v3_free_vm_internal(vm);
 
+    v3_free_config(vm);
+
     V3_Free(vm);
 
     return 0;
index 3dd7915..572f01a 100644 (file)
@@ -531,6 +531,16 @@ struct v3_vm_info * v3_config_guest(void * cfg_blob, void * priv_data) {
 
 
 
+int v3_free_config(struct v3_vm_info * vm) {
+   
+    v3_free_htable(vm->cfg_data->file_table, 1, 0);
+
+    v3_xml_free(vm->cfg_data->cfg);
+
+    V3_Free(vm->cfg_data);
+    return 0;
+}
+
 
 
 static int setup_memory_map(struct v3_vm_info * vm, v3_cfg_tree_t * cfg) {