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.


Assorted minor fixes to the transactional memory code
[palacios.git] / palacios / src / extensions / Kconfig
index 22d1dcc..15fc290 100644 (file)
@@ -1,24 +1,5 @@
 menu "Extensions"
 
-config EXT_VTIME
-       bool "Enable Time virtualization"
-       default n
-       help
-          Enables the timer virtualization extensions. These hide the cost of 
-          running inside the VMM context.  This can aid the consistency of
-           time between multiple timers, but can cause the guest to run 
-           a good bit slower than the host in VM-intensive parts of the code.
-
-config EXT_VTSC
-       bool "Fully virtualize guest TSC"
-       default n
-       depends on EXT_VTIME
-       help
-           Virtualize the processor time stamp counter in the guest, 
-           generally increasing consistency between various time sources 
-           but also potentially making guest time run slower than real time.
-        
 config EXT_MTRRS
        bool "Support virtualized MTTRs"
        default n
@@ -26,11 +7,17 @@ config EXT_MTRRS
           Provides a virtualized set of MTTR registers
 
 config EXT_MACH_CHECK
-       bool "Support Machine Check functionality"
+       bool "Support machine-check functionality"
        default n
        help 
-          Provides a virtualized machine check architecture
+          Provides a virtualized machine-check architecture
 
+config DEBUG_EXT_MACH_CHECK
+    bool "Debug machine-check functionality"
+    default n
+    depends on EXT_MACH_CHECK
+    help
+        Enable virtual machine-check architecture debugging
 
 config EXT_INSPECTOR
        bool "VM Inspector"
@@ -38,48 +25,51 @@ config EXT_INSPECTOR
        help
          Provides the inspection extension
 
-config SW_INTERRUPTS
-    bool "Enable interception and hooking of software interrupts"
-    default n
-    help
-      This feature will cause the VMM to intercept the execution
-      of software interrupts (i.e. the INTn instruction) and enable
-      any INT vector to be hooked
+config EXT_VMWARE
+       bool "VMWare Persona"
+       default n
+       help
+         Provides a VMWare persona to allow TSC calibration
 
-config SWINTR_PASSTHROUGH
-    bool "Hook all unhandled sofware interrupts for passthrough"
-    depends on SW_INTERRUPTS
-    default n
-    help
-      If enabled, this will cause all software interrupts 
-      (INT instruction vectors) to be hooked for passthrough.
-      May reduce performance but useful for debugging.
+config EXT_SCHED_EDF
+       bool "EDF Real-time Scheduler"
+       default n
+       help
+         Provides a full real-time EDF scheduler for VM cores
 
-config SYSCALL_HIJACK
-    bool "Enable System Call Hijacking"
-    depends on SW_INTERRUPTS
-    default n
-    help
-      Enable the VMM to hijack system calls executed by the guest.
-      If enabled, the VMM will hook execution of INT 80
-      (support for Fast-System Calls coming soon)
+config DEBUG_EXT_SCHED_EDF
+       bool "Debugging for EDF Real-time Scheduler"
+       default n
+       depends on DEBUG_ON && EXT_SCHED_EDF
 
-config SYSCALL_PASSTHROUGH
-    bool "Hook all unhandled system calls for passthrough"
-    depends on SYSCALL_HIJACK
-    default n
-    help
-      If enabled, this option will cause all system calls
-      that are not explicitly hooked to be hooked for 
-      passthrough. This is useful for debugging.
+config EXT_CPU_MAPPER_EDF
+       bool "CPU Mapper for EDF Scheduler"
+       default n
+       help
+         Provides an CPU Mapper for EDF scheduler
+
+config DEBUG_EXT_CPU_MAPPER_EDF
+       bool "Debugging for EDF CPU Mapper"
+       default n
+       depends on DEBUG_ON && EXT_CPU_MAPPER_EDF
+
+config TM_FUNC
+        bool "Enable Intel Transactional Memory Emulation"
+        default n
+       depends on SVM && QUIX86 && EXPERIMENTAL
+        help
+          Enable Palacios to emulate Intel's hardware
+          transactional memory extensions. This is the
+          Restricted Transactional Memory (RTM) featureset,
+          part of Intel's TSX extensions.  
+
+          Ironically, this feature is only implemented for AMD (SVM)
 
-config HIJACK_SYSCALL_MSR
-    bool "Intercept Syscall-related MSR reads & writes"
-    depends on SYSCALL_HIJACK 
+config DEBUG_TM_FUNC
+    bool "Enable transactional memory emulation debugging output"
+    depends on DEBUG_ON && TM_FUNC
     default n
     help
-      Allow the VMM to intercept reads and writes to MSRs
-      related to SYSCALL and SYSENTER instructions. Specifically,
-      it will intercept R/W to STAR, CSTAR, and LSTAR.
+        Enable Transactional Memory debugging output
 
 endmenu