Use a temp process for test_uaccess
[akaros.git] / Kconfig
diff --git a/Kconfig b/Kconfig
index ecb9ff1..d4a17c7 100644 (file)
--- a/Kconfig
+++ b/Kconfig
@@ -11,9 +11,9 @@ config SRCARCH
 
 config 64BIT
        bool "64-bit kernel"
-       default n
+       default y
        help
-               Say yes to build a 64-bit kernel, amd64 / x86_64, riscv64, etc.
+               Say yes to build a 64-bit kernel.  Must be 'y' for x86.
 
 menuconfig RUN_INIT_SCRIPT
        bool "Run init script after boot"
@@ -79,6 +79,22 @@ config EXT2_BDEV
 
 endmenu
 
+choice COREALLOC_POLICY
+       prompt "Core Allocation Policy"
+       help
+               Select a policy for allocating cores to a process upon request.  All
+               strategies first allocate cores from the set of provisioned cores for a
+               process, but differ in how they select cores beyond this.
+
+config COREALLOC_FCFS
+       bool "Simple FCFS"
+       help
+               Allocate cores to processes on a first-come-first-served basis. All
+               cores are treated equally, and no topology information is used to try
+               and optimize which cores are given to which processes upon request.
+
+endchoice
+
 menu "Memory Management"
 
 config PAGE_COLORING
@@ -123,6 +139,12 @@ config TRACE_LOCKS
 
 endmenu
 
+config DEVELOPMENT_ASSERTIONS
+       bool "dasserts"
+       default n
+       help
+               Turn on dassert() in code, dassert will compile to assert().
+
 config SPINLOCK_DEBUG
        bool "Spinlock debugging"
        default n
@@ -147,6 +169,29 @@ config SEMAPHORE_DEBUG
                semaphore was downed, and provides a linked list of all semaphores that
                have waiters.  This will slow down all semaphore ups and downs.
 
+config SEM_SPINWAIT
+       bool "Semaphore spinwaiting"
+       default n
+       help
+               Turns on semaphore spinwaiting.  In lieu of intelligent Adaptive
+               Mutexes, busy semaphores will just spin for a while before fully
+               sleeping.
+
+config SEM_SPINWAIT_NR_LOOPS
+       int "Number of polls before sleeping"
+       depends on SEM_SPINWAIT
+       default 100
+       help
+               How many times to poll a busy semaphore before going to sleep.
+
+config SEM_TRACE_BLOCKERS
+       bool "Semaphore Blocker Tracing"
+       default n
+       help
+               Drops a TRACEME whenever a semaphore would block (barring slight
+               races).  To access the trace data, you'll need to use the opcontrols
+               and process the data with op2.
+
 config RESET_STACKS
        bool "Reset Stacks"
        default y
@@ -215,6 +260,31 @@ config VM
        help
                VM support -- not working! Based on KVM.
 
+menuconfig NIX
+       bool "NIX support"
+       default n
+       help
+               NIX support -- Sort of working. You can start kernels that don't enable
+               interrupts.
+
+if NIX
+
+config NIX_IMG_PADDR
+       hex "Physical address for the NIX image"
+       depends on NIX
+       default 0x40000000
+       help
+               Physical address that the NIX device will allocate during
+               initialization.
+
+config NIX_IMG_SIZE
+       hex "Size of the NIX image"
+       depends on NIX
+       default 0x40000000
+       help
+               Size in bytes of the NIX image.  Must be a power of two.
+
+endif # NIX
 
 menu "Misc/Old Options"
 
@@ -256,4 +326,6 @@ config BSD_ON_CORE0
 
 endmenu
 
+source "kern/lib/Kconfig"
+
 source "kern/src/ktest/Kconfig"