X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=linux_module%2Fpalacios-vnet.c;h=a9553799cb42bc749c092858243cc129f1d10540;hb=c4a5479be0c0cf9fc084bf26e25f7ba4c020b113;hp=19a6bca1f99cc4b6ebf9e4c7b9178d73de1d9bf8;hpb=e39ac677ad4eb2c2db111ce08eb6172c61f5001f;p=palacios.git diff --git a/linux_module/palacios-vnet.c b/linux_module/palacios-vnet.c index 19a6bca..a955379 100644 --- a/linux_module/palacios-vnet.c +++ b/linux_module/palacios-vnet.c @@ -1,7 +1,8 @@ /* - Palacios VNET Host Hooks Implementations - (c) Lei Xia, 2011 + * Palacios VNET Host Hooks Implementations + * Lei Xia 2010 */ + #include #include #include @@ -14,8 +15,9 @@ #include #include -#include "palacios-mm.h" +#include "mm.h" #include "palacios-vnet.h" +#include "linux-exts.h" static void host_print(const char * fmt, ...) { @@ -277,11 +279,35 @@ static struct vnet_host_hooks vnet_host_hooks = { -int palacios_vnet_init( void ) { +static int vnet_init( void ) { init_vnet(&vnet_host_hooks); + + vnet_bridge_init(); + vnet_ctrl_init(); - palacios_init_vnet_bridge(); printk("V3 VNET Inited\n"); return 0; } + + +static int vnet_deinit( void ) { + deinit_vnet(); + + vnet_bridge_deinit(); + vnet_ctrl_deinit(); + + printk("V3 VNET Deinited\n"); + + return 0; +} + +static struct linux_ext vnet_ext = { + .name = "VNET", + .init = vnet_init, + .deinit = vnet_deinit, + .guest_init = NULL, + .guest_deinit = NULL +}; + +register_extension(&vnet_ext);