X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_dev_mgr.h;h=e789207e7a48000f1212988815913b88cb037d01;hb=16047acf61f82cb4ae33bcb84b221c2098215172;hp=84bbc5827e557a1ff2bad5e1fd32b0f51180396c;hpb=e47ed16a96f6d7faa282bf757e9d2cc065d2657e;p=palacios-OLD.git diff --git a/palacios/include/palacios/vmm_dev_mgr.h b/palacios/include/palacios/vmm_dev_mgr.h index 84bbc58..e789207 100644 --- a/palacios/include/palacios/vmm_dev_mgr.h +++ b/palacios/include/palacios/vmm_dev_mgr.h @@ -28,7 +28,7 @@ #include #include #include - +#include struct v3_vm_info; @@ -102,11 +102,17 @@ int V3_init_devices(); int V3_deinit_devices(); +#ifdef CONFIG_KEYED_STREAMS +#include +#endif + struct v3_device_ops { int (*free)(void * private_data); - //int (*save)(struct vm_device *dev, struct *iostream); - //int (*restore)(struct vm_device *dev, struct *iostream); +#ifdef CONFIG_KEYED_STREAMS + int (*checkpoint)(struct vm_device *dev, v3_keyed_stream_t stream); + int (*restore)(struct vm_device *dev, v3_keyed_stream_t stream); +#endif }; @@ -174,17 +180,14 @@ struct v3_dev_blk_ops { struct v3_dev_net_ops { /* Backend implemented functions */ int (*send)(uint8_t * buf, uint32_t count, void * private_data); - void (*start_rx)(void * back_data); - void (*stop_rx)(void * back_data); /* Frontend implemented functions */ int (*recv)(uint8_t * buf, uint32_t count, void * frnt_data); - void (*poll)(struct v3_vm_info * vm, void * frnt_data); - void (*start_tx)(void * frnt_data); - void (*stop_tx)(void * frnt_data); + void (*poll)(struct v3_vm_info * vm, int budget, void * frnt_data); /* This is ugly... */ void * frontend_data; + char fnt_mac[ETH_ALEN]; }; struct v3_dev_console_ops {