#ifdef __V3VEE__
#include <palacios/vmm.h>
-#include <palacios/vmm_list.h>
#include <palacios/vmm_config.h>
+#include <palacios/vmm_list.h>
struct v3_vm_info;
char * name;
int (*init)(struct v3_vm_info * vm, v3_cfg_tree_t * cfg, void ** priv_data);
int (*deinit)(struct v3_vm_info * vm, void * priv_data);
- int (*core_init)(struct guest_info * core);
- int (*core_deinit)(struct guest_info * core);
- int (*on_entry)(struct guest_info * core);
- int (*on_exit)(struct guest_info * core);
+ int (*core_init)(struct guest_info * core, void * priv_data);
+ int (*core_deinit)(struct guest_info * core, void * priv_data);
+ int (*on_entry)(struct guest_info * core, void * priv_data);
+ int (*on_exit)(struct guest_info * core, void * priv_data);
};
struct v3_extension {
int v3_init_ext_manager(struct v3_vm_info * vm);
int v3_add_extension(struct v3_vm_info * vm, const char * name, v3_cfg_tree_t * cfg);
+int v3_init_core_extensions(struct guest_info * core);
+
+void * v3_get_extension_state(struct v3_vm_info * vm, const char * name);
#define register_extension(ext) \