X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=kitten%2Fpalacios-glue%2Fvm.c;h=be49efba9b1d3fb3153d5ab70ca00b27d2fd56d5;hb=e05033e42323e92783e8c93d77c0e4be63761667;hp=438a30304b4b07fee479ec160fe8acf980b1f284;hpb=ed150072069816c4f34cd7b9e129752a6e9e71b3;p=palacios.git diff --git a/kitten/palacios-glue/vm.c b/kitten/palacios-glue/vm.c index 438a303..be49efb 100644 --- a/kitten/palacios-glue/vm.c +++ b/kitten/palacios-glue/vm.c @@ -19,11 +19,7 @@ -#include -#include - #include - #include #include @@ -33,41 +29,23 @@ int RunVMM() { - struct v3_os_hooks os_hooks; - struct v3_ctrl_ops v3_ops; + struct v3_ctrl_ops v3_ops = {}; struct guest_info * vm_info = 0; - struct v3_vm_config vm_config; - - void * ramdiskImage=&initrd_start; - ulong_t ramdiskSize=(&initrd_end)-(&initrd_start); - memset(&os_hooks, 0, sizeof(struct v3_os_hooks)); - memset(&v3_ops, 0, sizeof(struct v3_ctrl_ops)); - memset(&vm_config, 0, sizeof(struct v3_vm_config)); - - - os_hooks.print_debug = &printk; // serial print ideally - os_hooks.print_info = &printk; // serial print ideally - os_hooks.print_trace = &printk; // serial print ideally - os_hooks.allocate_pages = &Allocate_VMM_Pages; // defined in vmm_stubs - os_hooks.free_page = &Free_VMM_Page; // defined in vmm_stubs - os_hooks.malloc = &kmem_alloc; - os_hooks.free = &kmem_free; - os_hooks.vaddr_to_paddr = &kitten_va_to_pa; - os_hooks.paddr_to_vaddr = &kitten_pa_to_va; - os_hooks.hook_interrupt = &kitten_hook_interrupt; - os_hooks.ack_irq = &ack_irq; - os_hooks.get_cpu_khz = &get_cpu_khz; + void * ramdiskImage=initrd_start; + uintptr_t ramdiskSize=initrd_end-initrd_start; - Init_V3(&os_hooks, &v3_ops); + Init_V3(&v3vee_os_hooks, &v3_ops); - vm_config.rombios = &rombios_start; - vm_config.rombios_size = (&rombios_end)-(&rombios_start); - vm_config.vgabios = &vgabios_start; - vm_config.vgabios_size = (&vgabios_end)-(&vgabios_start); + struct v3_vm_config vm_config = { + .rombios = &rombios_start, + .rombios_size = (&rombios_end)-(&rombios_start), + .vgabios = &vgabios_start, + .vgabios_size = (&vgabios_end)-(&vgabios_start), + }; if (ramdiskImage != NULL) { @@ -89,7 +67,7 @@ int RunVMM() { //PrintBoth("Configured guest\n"); (v3_ops).init_guest(vm_info); - PrintBoth("Starting Guest\n"); + printk("Starting Guest\n"); //Clear_Screen(); (v3_ops).start_guest(vm_info);