The purpose of this option is to allow features under development to be committed to the mainline
to more easily track changes and provide access to multiple developers
-config VNET
- depends on EXPERIMENTAL
- bool "Enable Vnet in Palacios"
- default n
- help
- Enable the Vnet in Palacios
-
-
endmenu
endmenu
+menu "VNET"
+config VNET
+ bool "Enable Vnet in Palacios"
+ default n
+ help
+ Enable the Vnet in Palacios
+
+endmenu
menu "Debug configuration"
devices-y := palacios/src/devices/
interfaces-y := palacios/src/interfaces/
extensions-y := palacios/src/extensions/
+vnet-y := palacios/src/vnet/
modules-y := modules/
palacios-dirs := $(patsubst %/,%,$(filter %/, \
- $(core-y) $(devices-y) $(interfaces-y) $(extensions-y) $(libs-y)) $(modules-y))
+ $(core-y) $(devices-y) $(interfaces-y) $(extensions-y) $(vnet-y) $(libs-y)) $(modules-y))
palacios-cleandirs := $(sort $(palacios-dirs) $(patsubst %/,%,$(filter %/, \
$(core-n) $(core-) $(devices-n) $(devices-) \
- $(interfaces-n) $(interfaces-) $(extensions-n) $(extensions-) $(modules-n) $(modules-))))
+ $(interfaces-n) $(interfaces-) $(extensions-n) $(extensions-) $(vnet-n) $(vnet-) $(modules-n) $(modules-))))
interfaces-y := $(patsubst %/, %/built-in.o, $(interfaces-y))
extensions-y := $(patsubst %/, %/built-in.o, $(extensions-y))
libs-y := $(patsubst %/, %/built-in.o, $(libs-y))
+vnet-y := $(patsubst %/, %/built-in.o, $(vnet-y))
modules-y := $(patsubst %/, %/built-in.o, $(modules-y))
#lnxmod-y := $(patsubst %/, %/built-in.o, $(lnxmod-y))
-palacios := $(core-y) $(devices-y) $(interfaces-y) $(extensions-y) $(libs-y) $(modules-y)
+palacios := $(core-y) $(devices-y) $(interfaces-y) $(extensions-y) $(vnet-y) $(libs-y) $(modules-y)
# Rule to link palacios - also used during CONFIG_CONFIGKALLSYMS
#include <linux/sched.h>
#include <asm/msr.h>
-#include <palacios/vmm_vnet.h>
#include "palacios-vnet.h"
//#define DEBUG_VNET_BRIGE
}
#endif
- return v3_vnet_send_pkt(&pkt, NULL);;
+ return v3_vnet_send_pkt(&pkt, NULL, 1);
}
#ifndef __PALACIOS_VNET_BRIDGE_H__
#define __PALACIOS_VNET_BRIDGE_H__
-#include <palacios/vmm_vnet.h>
+#include <vnet/vnet.h>
int palacios_init_vnet(void);
obj-$(V3_CONFIG_TELEMETRY) += vmm_telemetry.o
-obj-$(V3_CONFIG_VNET) += vmm_vnet_core.o
-
-
obj-$(V3_CONFIG_SYMBIOTIC) += vmm_symbiotic.o vmm_symspy.o
obj-$(V3_CONFIG_SYMCALL) += vmm_symcall.o
obj-$(V3_CONFIG_SYMMOD) += vmm_symmod.o
#endif
#ifdef V3_CONFIG_VNET
-#include <palacios/vmm_vnet.h>
+#include <vnet/vnet.h>
#endif
--- /dev/null
+obj-$(V3_CONFIG_VNET) += vnet_core.o
+
* redistribute, and modify it as specified in the file "V3VEE_LICENSE".
*/
-#include <palacios/vmm_vnet.h>
+#include <vnet/vnet.h>
#include <palacios/vm_guest_mem.h>
#include <palacios/vmm_lock.h>
#include <palacios/vmm_queue.h>
return 0;
}
-
+#if 0
static int vnet_tx_flush(void *args){
unsigned long flags;
struct queue_entry * entry;
}
}
}
+#endif
int v3_init_vnet() {
memset(&vnet_state, 0, sizeof(vnet_state));
v3_lock_init(&(vnet_state.pkt_q.lock));
- vnet_state.pkt_flush_thread = V3_CREATE_THREAD(vnet_tx_flush, NULL, "VNET_Pkts");
+ //vnet_state.pkt_flush_thread = V3_CREATE_THREAD(vnet_tx_flush, NULL, "VNET_Pkts");
PrintDebug("VNET/P Core is initiated\n");