X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/91447636331957f3d9b5ca5b508f07c526b0074d..39236c6e673c41db228275375ab7fdb0f837b292:/osfmk/conf/MASTER?ds=inline diff --git a/osfmk/conf/MASTER b/osfmk/conf/MASTER index feca58dec..f3dd6fcc8 100644 --- a/osfmk/conf/MASTER +++ b/osfmk/conf/MASTER @@ -38,6 +38,16 @@ # configurations. # ####################################################################### +# SYSTEM SIZE CONFIGURATION (select exactly one) +# +# xlarge = extra large scale system configuration +# large = large scale system configuration +# medium = medium scale system configuration +# small = small scale system configuration +# xsmall = extra small scale system configuration +# bsmall = special extra small scale system configuration +# +####################################################################### # # Basic compilation options. # @@ -55,7 +65,7 @@ ident MACH # option should be on. # options MACH_KERNEL -options MACH_PAGEMAP +options MACH_PAGEMAP # options MACH_LOAD options MACH_RT options TASK_SWAPPER # @@ -75,7 +85,7 @@ options ADVISORY_PAGEOUT # consistency of various algorithms in the kernel. The performance impact # of this option is significant. # -options MACH_ASSERT # # +options MACH_ASSERT # # # # MACH_DEBUG enables the mach_debug_server, a message interface used to # retrieve or control various statistics. This interface may expose data @@ -84,8 +94,8 @@ options MACH_ASSERT # # # Other options here enable information retrieval for specific subsystems # options MACH_DEBUG # # +options MACH_IPC_DEBUG # # # -options MACH_IPC_DEBUG # # options MACH_VM_DEBUG # # # # MACH_MP_DEBUG control the possible dead locks that may occur by controlling @@ -98,6 +108,23 @@ options MACH_MP_DEBUG # # # operations on each element. # options ZONE_DEBUG # # + +options CONFIG_ZLEAKS # Live zone leak debugging # + +# +options ZONE_ALIAS_ADDR # # + + +# +# CONFIG_TASK_ZONE_INFO allows per-task zone information to be extracted +# Primarily useful for xnu debug and development. +# +options CONFIG_TASK_ZONE_INFO # +# +# CONFIG_DEBUGGER_FOR_ZONE_INFO restricts zone info so that it is only +# available when the kernel is being debugged. +# +options CONFIG_DEBUGGER_FOR_ZONE_INFO # # # XPR_DEBUG enables the gathering of data through the XPR macros inserted # into various subsystems. This option is normally only enabled for @@ -115,16 +142,24 @@ options XPR_DEBUG # # options MACH_LDEBUG # # # -# +# configuration option for full, partial, or no kernel debug event tracing # -options KDEBUG # kernel tracing # +options KDEBUG # kernel tracing # +options IST_KDEBUG # limited tracing # +options NO_KDEBUG # no kernel tracing # + +# +# CONFIG_DTRACE enables code needed to support DTrace. Currently this is +# only used for delivery of traps/interrupts to DTrace. +# +options CONFIG_DTRACE # # -# # MACH_COUNTERS enables code that handles various counters in the system. # options MACH_COUNTERS # # -options UPL_DEBUG # # +# DEVELOPMENT define for development builds +options DEVELOPMENT # dev kernel # ########################################################## # @@ -134,11 +169,6 @@ options UPL_DEBUG # # # ########################################################## # -# MACH_PROF enables the profiling server, a message interface used to -# retrieve profiling statistics. -# -#options MACH_PROF # # -# # MACH_IPC_STATS controls the collection of statistics in the MACH IPC # subsystem. # @@ -167,3 +197,126 @@ options UPL_DEBUG # # # options MACH_COUNTERS # # +# +# configuration option for including cypto code +# +options CRYPTO # + +# HIBERNATION - include hibernation code +# +options HIBERNATION # # + +# CONFIG_SLEEP - include sleep power state code +# +options CONFIG_SLEEP # # + +# CONFIG_KEXT_BASEMENT - alloc post boot loaded kexts after prelinked kexts +# +options CONFIG_KEXT_BASEMENT # # + + +# +# configurable kernel related resources (CONFIG_THREAD_MAX needs to stay in +# sync with bsd/conf/MASTER until we fix the config system... todo XXX +# +options CONFIG_THREAD_MAX=2560 # +options CONFIG_THREAD_MAX=1536 # +options CONFIG_THREAD_MAX=1024 # + +options CONFIG_TASK_MAX=1024 # +options CONFIG_TASK_MAX=768 # +options CONFIG_TASK_MAX=512 # + +options CONFIG_ZONE_MAP_MIN=12582912 # +options CONFIG_ZONE_MAP_MIN=6291456 # +options CONFIG_ZONE_MAP_MIN=1048576 # + +# Sizes must be a power of two for the zhash to +# be able to just mask off bits instead of mod +options CONFIG_ZLEAK_ALLOCATION_MAP_NUM=16384 # +options CONFIG_ZLEAK_ALLOCATION_MAP_NUM=8192 # +options CONFIG_ZLEAK_TRACE_MAP_NUM=8192 # +options CONFIG_ZLEAK_TRACE_MAP_NUM=4096 # + +# +# configurable kernel - use these options to strip strings from panic +# and printf calls. +# no_panic_str - saves around 50K of kernel footprint. +# no_printf_str - saves around 45K of kernel footprint. +# +options CONFIG_NO_PANIC_STRINGS # +options CONFIG_NO_PRINTF_STRINGS # +options CONFIG_NO_KPRINTF_STRINGS # + +# support dynamic signing of code +# +options CONFIG_DYNAMIC_CODE_SIGNING # + +# vc_progress_white - make the progress gear white instead of black +options CONFIG_VC_PROGRESS_WHITE # + +# secure_kernel - secure kernel from user programs +options SECURE_KERNEL # + +# +# Context switched counters +# +options CONFIG_COUNTERS # + +# +# Timeshare scheduler implementations +# +options CONFIG_SCHED_TRADITIONAL # +options CONFIG_SCHED_PROTO # +options CONFIG_SCHED_GRRR # +options CONFIG_SCHED_FIXEDPRIORITY # +options CONFIG_SCHED_GRRR_CORE # + +options CONFIG_SCHED_IDLE_IN_PLACE # +options CONFIG_GZALLOC # +# +# enable per-process memory priority tracking +# +options CONFIG_MEMORYSTATUS # + +# +# enable jetsam - used on embedded +# +options CONFIG_JETSAM # + +# +# enable freezing of suspended processes - used on embedded +# +options CONFIG_FREEZE # + +options CHECK_CS_VALIDATION_BITMAP # + +# +# Enable dispatch of memory pressure events from the vm_pageout_garbage_collect thread +# +options VM_PRESSURE_EVENTS # + +# +# Enable inheritance of importance through specially marked mach ports and for file locks +# For now debug is enabled wherever inheritance is +# +options IMPORTANCE_INHERITANCE # +options IMPORTANCE_DEBUG # + +# Enable allocation of contiguous physical memory through vm_map_enter_cpm() +options VM_CPM # + +options CONFIG_SKIP_PRECISE_USER_KERNEL_TIME # + +options CONFIG_TELEMETRY # + +# +# Switch to disable cpu, wakeup and high memory watermark monitors +# +options CONFIG_NOMONITORS # + +# +# In-kernel tests +# +options CONFIG_IN_KERNEL_TESTS # +