X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm.h;h=9ee2bf898581af07acf1d15912dfda4d0df2cb5b;hb=f762b666f3ea508a49b16429e185eb458aa83329;hp=620761a64f98c2e861a90534f7a66e62b0cbe30d;hpb=ee8666572bea1a9628d96ebc3e4d97f84b357134;p=palacios.git diff --git a/palacios/include/palacios/vmm.h b/palacios/include/palacios/vmm.h index 620761a..9ee2bf8 100644 --- a/palacios/include/palacios/vmm.h +++ b/palacios/include/palacios/vmm.h @@ -90,11 +90,11 @@ struct guest_info; }) -#define V3_FreePage(page) \ +#define V3_FreePages(page, num_pages) \ do { \ extern struct v3_os_hooks * os_hooks; \ - if ((os_hooks) && (os_hooks)->free_page) { \ - (os_hooks)->free_page(page); \ + if ((os_hooks) && (os_hooks)->free_pages) { \ + (os_hooks)->free_pages(page, num_pages); \ } \ } while(0) @@ -214,10 +214,6 @@ struct guest_info; #endif -<<<<<<< HEAD:palacios/include/palacios/vmm.h - -======= ->>>>>>> 0956466aad020813d1e470df366d552fdabab2a9:palacios/include/palacios/vmm.h /* ** */ @@ -274,14 +270,14 @@ struct v3_os_hooks { void (*print)(const char * format, ...) __attribute__ ((format (printf, 1, 2))); - void *(*allocate_pages)(int numPages, unsigned int alignment); - void (*free_page)(void * page); + void *(*allocate_pages)(int num_pages, unsigned int alignment); + void (*free_pages)(void * page, int num_pages); void *(*malloc)(unsigned int size); void (*free)(void * addr); - void *(*paddr_to_vaddr)(void *addr); - void *(*vaddr_to_paddr)(void *addr); + void *(*paddr_to_vaddr)(void * addr); + void *(*vaddr_to_paddr)(void * addr); int (*hook_interrupt)(struct v3_vm_info * vm, unsigned int irq); int (*ack_irq)(int irq); @@ -324,11 +320,13 @@ struct v3_interrupt { void Init_V3(struct v3_os_hooks * hooks, int num_cpus); +void Shutdown_V3( void ); struct v3_vm_info * v3_create_vm(void * cfg, void * priv_data, char * name); int v3_start_vm(struct v3_vm_info * vm, unsigned int cpu_mask); int v3_stop_vm(struct v3_vm_info * vm); +int v3_free_vm(struct v3_vm_info * vm); int v3_deliver_irq(struct v3_vm_info * vm, struct v3_interrupt * intr);