Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


removed redundant OS API
Jack Lange [Sun, 28 Mar 2010 17:43:38 +0000 (12:43 -0500)]
palacios/include/palacios/vmm.h
palacios/src/devices/8259a.c
palacios/src/palacios/vmm.c

index 4f5bf21..1ef6cb1 100644 (file)
@@ -201,16 +201,7 @@ struct guest_info;
     } while(0)                                                         \
 
 
-#ifdef CONFIG_VNET
-#define V3_lapic_send_ipi(cpu, vector)                                                 \
-   do {                                                        \
-       extern struct v3_os_hooks * os_hooks;                   \
-       if ((os_hooks) && (os_hooks)->lapic_send_ipi) {         \
-           (os_hooks)->lapic_send_ipi(cpu, vector);                    \
-       }                                                       \
-    } while (0)
 
-#endif
 
 
 typedef enum v3_vm_class {V3_INVALID_VM, V3_PC_VM, V3_CRAY_VM} v3_vm_class_t;
@@ -227,7 +218,7 @@ void v3_yield_cond(struct guest_info * info);
 void v3_print_cond(const char * fmt, ...);
 
 
-void v3_interrupt_cpu(struct v3_vm_info * vm, int logical_cpu);
+void v3_interrupt_cpu(struct v3_vm_info * vm, int logical_cpu, int vector);
 
 unsigned int v3_get_cpu_id();
 
@@ -273,13 +264,10 @@ struct v3_os_hooks {
     void (*mutex_unlock)(void * mutex);
 
     unsigned int (*get_cpu)(void);
-    void (*interrupt_cpu)(struct v3_vm_info * vm, int logical_cpu);
+    void (*interrupt_cpu)(struct v3_vm_info * vm, int logical_cpu, int vector);
     void (*call_on_cpu)(int logical_cpu, void (*fn)(void * arg), void * arg);
     void (*start_thread_on_cpu)(int logical_cpu, int (*fn)(void * arg), void * arg, char * thread_name);
 
-#ifdef CONFIG_VNET
-    void (*lapic_send_ipi)(unsigned int cpu, unsigned int vector);
-#endif
 };
 
 
index 325f416..29398e3 100644 (file)
@@ -209,7 +209,7 @@ static int pic_raise_intr(struct v3_vm_info * vm, void * private_data, int irq)
        return -1;
     }
 
-    v3_interrupt_cpu(vm, 0);
+    v3_interrupt_cpu(vm, 0, 0);
 
     return 0;
 }
index 97af190..5811cba 100644 (file)
@@ -251,11 +251,11 @@ void v3_print_cond(const char * fmt, ...) {
 
 
 
-void v3_interrupt_cpu(struct v3_vm_info * vm, int logical_cpu) {
+void v3_interrupt_cpu(struct v3_vm_info * vm, int logical_cpu, int vector) {
     extern struct v3_os_hooks * os_hooks;
 
     if ((os_hooks) && (os_hooks)->interrupt_cpu) {
-       (os_hooks)->interrupt_cpu(vm, logical_cpu);
+       (os_hooks)->interrupt_cpu(vm, logical_cpu, vector);
     }
 }