| /xnu-8019.80.24/config/ |
| H A D | MasterVersion | 3 # The first line of this file contains the master version number for the kernel. 4 # All other instances of the kernel version in xnu are derived from this file. 10 # J represents the kernel major version number (integer) 11 # N represents the kernel minor version number (integer) 12 # R represents the kernel revision number (integer) 13 # S represents the kernel build stage (one of "d", "a", "b", or "r") 14 # L represents the kernel pre-release level (integer) 16 # The correct way to make use of the kernel version within kernel code or a
|
| H A D | README.DEBUG-kernel.txt | 1 This directory contains a universal DEBUG kernel, built for 32-bit and 2 64-bit Intel. It includes a dSYM bundle for remote kernel debugging 3 and live kernel debugging. 7 !!!WARNING!!! These steps will overwrite the default kernel and 10 To install the DEBUG kernel, do: 26 With the DEBUG kernel installed, set "kmem=1" in your "boot-args" 30 (gdb) target darwin-kernel 36 <arch> should reflect the currently booted kernel architecture, either
|
| H A D | MASTER | 105 # secure_kernel - secure kernel from user programs 111 # 4.4 general kernel 115 options PROFILE # kernel profiling # <profile> 177 profile # build a profiling kernel # <profile> 201 # configurable kernel event related resources 238 # configurable options for minumum number of buffers for kernel memory 303 # configurable kernel message buffer size 325 # configurable kernel - use these options to strip strings from panic 327 # no_printf_str - saves around 45K of kernel footprint. 336 # configurable kernel - general switch to say we are building for an [all …]
|
| /xnu-8019.80.24/ |
| H A D | README.md | 4 XNU kernel is part of the Darwin operating system for use in macOS and iOS operating systems. XNU i… 5 XNU is a hybrid kernel combining the Mach kernel developed at Carnegie Mellon University with compo… 12 …* `SETUP` - Basic set of tools used for configuring the kernel, versioning and kextsymbol manageme… 15 * `libsa` - kernel bootstrap code for startup 17 * `libkdd` - source for user library for parsing kernel data like kernel chunked data. 18 * `makedefs` - top level rules and defines for kernel build. 19 * `osfmk` - Mach kernel based subsystems 23 * `tools` - A set of utilities for testing, debugging and profiling kernel. 28 Building `DEVELOPMENT` kernel 31 The xnu make system can build kernel based on `KERNEL_CONFIGS` & `ARCH_CONFIGS` variables as argume… [all …]
|
| /xnu-8019.80.24/tests/ |
| H A D | mach_continuous_time.c | 43 bool kernel = false; variable 51 if (kernel) { 57 kernel = !kernel; 76 bool kernel = false; variable 84 if (kernel) { 90 kernel = !kernel;
|
| H A D | stackshot_block_owner_14362384.m | 227 /* perform various actions with a mutex in kernel memory. note that, since we aren't allowed 228 * to go to user space while still holding a mutex, the lock-acquiring actions in this kernel 231 * exist in the kernel (to determine if we're running with CONFIG_XNUPOST defined). Else, 261 T_ASSERT_POSIX_SUCCESS(ret, "sysctl: %s kernel mutex", action_name); 273 T_QUIET; T_ASSERT_POSIX_SUCCESS(ret, "Getting unslid location of kernel mutex. Size is %llu", 276 "Context should match unslid location of mutex in kernel memory"); 334 /* perform various actions with a rwlock in kernel memory. note that, since we aren't allowed 335 * to go to user space while still holding a rwlock, the lock-acquiring actions in this kernel 338 * exist in the kernel (to determine if we're running with CONFIG_XNUPOST defined). Else, 375 T_ASSERT_POSIX_SUCCESS(ret, "sysctl: %s kernel rwlock", action_name); [all …]
|
| /xnu-8019.80.24/libkdd/ |
| H A D | README.md | 4 This project allows for dynamic data to be passed from the kernel to userspace tools without bindin… 5 …n. The `libkdd` library provides convenient API for parsing and interpreting `kernel chunked data`. 44 extensible data format is that kernel can decide to put more information as required without requir… 72 If a given kernel data type is complex and requires adding multiple optional fields inside a contai… 87 With the self describing nature of format, the kernel provider can describe a data type (uniquely i… 89 Following is an example of how we can describe a kernel specific struct sample_disk_io_stats in buf…
|
| /xnu-8019.80.24/makedefs/ |
| H A D | MakeInc.kernel | 5 # MakeInc.kernel augments the single-architecture 7 # to assembling and linking a kernel. 50 # 1) $(KERNEL_FILE_NAME).unstripped (raw linked kernel, unstripped) 51 # 2) $(KERNEL_FILE_NAME) (stripped kernel, with optional CTF data) 112 @echo "built kernel at $@" 134 …nfig/version.c $(SRCROOT)/config/MasterVersion .LDFLAGS $(filter %/MakeInc.kernel,$(MAKEFILE_LIST)) 142 …T)/config/MasterVersion $(LDFILES_KERNEL_ONLY) .LDFLAGS $(filter %/MakeInc.kernel,$(MAKEFILE_LIST)) 191 # for now, rename LASTDATA_CONST to LAST on static kernel cache builds 194 ….a: $(TARGET)/$(KERNEL_FILE_NAME).unstripped .LDFLAGS $(filter %/MakeInc.kernel,$(MAKEFILE_LIST)) 213 nonlto.o: .CFLAGS $(filter %/MakeInc.kernel,$(MAKEFILE_LIST)) [all …]
|
| H A D | MakeInc.top | 16 # a kernel or perform actions other than 36 # Default to current kernel architecture 112 # kernel configuration, the second is the architecture configuration, 124 # default kernel configuration = DEFAULT_KERNEL_CONFIG 203 # Generate a list of mappings for products that use a different platform for their kernel configura… 205 # kernel's recursive build system will build the 3rd element as the KernelPlatform 234 # generate TARGET_CONFIGS for RELEASE kernel configs and products in the device map 238 # generate TARGET_CONFIGS for DEVELOPMENT kernel configs and products in the device map 242 # generate TARGET_CONFIGS for all kernel configs and products in the device map 246 # generate TARGET_CONFIGS for all kernel configs for B&I [all …]
|
| H A D | MakeInc.dir | 62 # Install machine independent kernel header files 67 # Install machine dependent kernel header files 72 # Install machine independent kernel header files 77 # Install machine dependent kernel header files
|
| H A D | MakeInc.def | 174 # When a new clang has new warnings disable them here until the kernel is fixed. 305 # probes from the kernel. 350 # No space optimization for the DEBUG kernel for the benefit of gdb: 357 # No space optimization for the DEBUG kernel for the benefit of gdb: 397 # Which kernel configurations are built with KCOV enabled. 401 $(error "Sanitizer runtime should not be eabled for RELEASE kernel.") 411 # KASan kernel config implicitly enables the KASan instrumentation. 432 CFLAGS_KASAN_TBI = -fsanitize=kernel-hwaddress \ 591 # a KASAN kernel + runtime, but linked against a DEVELOPMENT kernel cache. 644 # LDFLAGS_KERNEL_SDK = -L$(SDKROOT)/usr/local/lib/kernel -lfirehose_kernel [all …]
|
| H A D | MakeInc.cmd | 330 # $(1) is an expanded kernel config from a TARGET_CONFIGS_UC tuple 335 # $(1) is an un-expanded kernel config from a TARGET_CONFIGS_UC tuple 375 # $(1) is an expanded kernel config from a TARGET_CONFIGS_ALIASES_UC tuple 377 # $(3) is an expanded kernel machine config from a TARGET_CONFIGS_ALIASES_UC tuple 411 # $(1) is a fully-expanded kernel config 429 # Returns build config if both architecture and kernel configuration match. 433 # $(2) - kernel configuration 444 # Returns build config if kernel configuration matches. 447 # $(2) - kernel configuration
|
| /xnu-8019.80.24/libkern/libkern/ |
| H A D | version.h.template | 31 * of the kernel 36 * of the kernel 41 * stage, and prerelease level of the kernel 46 * of the kernel 63 * configuration of the kernel, e.g., development or release */
|
| /xnu-8019.80.24/osfmk/arm/ |
| H A D | kpc_arm.c | 233 bool kernel = !PSR_IS_USER(get_saved_state_cpsr(state)); in get_interrupted_pc() local 234 *kernel_out = kernel; in get_interrupted_pc() 236 if (kernel) { in get_interrupted_pc() 280 bool kernel = false; in kpc_pmi_handler() local 281 uintptr_t pc = get_interrupted_pc(&kernel); in kpc_pmi_handler() 283 FIXED_SHADOW(ctr), pc, kernel ? KPC_KERNEL_PC : 0); in kpc_pmi_handler() 609 bool kernel = false; in restore_regs() local 610 uintptr_t pc = get_interrupted_pc(&kernel); in restore_regs() 612 FIXED_SHADOW(i), pc, kernel ? KPC_KERNEL_PC : 0); in restore_regs()
|
| /xnu-8019.80.24/osfmk/kperf/ |
| H A D | callstack.c | 739 boolean_t kernel = FALSE; in chudxnu_thread_get_callstack64_internal() local 765 kernel = PSR64_IS_KERNEL(state->cpsr); in chudxnu_thread_get_callstack64_internal() 768 if (!user_only && !kernel) { in chudxnu_thread_get_callstack64_internal() 795 buffer[bufferIndex++] = chudxnu_vm_unslide(currPC, kernel); // save PC in position 0. in chudxnu_thread_get_callstack64_internal() 797 BUF_VERB(PERF_CS_BACKTRACE | DBG_FUNC_START, kernel, 0); in chudxnu_thread_get_callstack64_internal() 823 if (kernel) { in chudxnu_thread_get_callstack64_internal() 871 buffer[bufferIndex++] = chudxnu_vm_unslide(pc, kernel); in chudxnu_thread_get_callstack64_internal() 892 buffer[bufferIndex++] = chudxnu_vm_unslide(currLR, kernel); in chudxnu_thread_get_callstack64_internal() 894 buffer[bufferIndex++] = chudxnu_vm_unslide(currSP, kernel); in chudxnu_thread_get_callstack64_internal() 907 kernel = ARM_SUPERVISOR_MODE(state->cpsr); in chudxnu_thread_get_callstack64_internal() [all …]
|
| /xnu-8019.80.24/tools/lldbmacros/ |
| H A D | README.md | 4 A. How to use lldb for kernel debugging 5 B. Design of lldb kernel debugging platform. 18 F. Development and Debugging on lldb kernel debugging platform. 23 A. How to use lldb for kernel debugging 26 lldb can be used for kernel debugging the same way as gdb. The simplest way is to start lldb with k… 52 …In case if you are working with older kernel files you can load kernel specific commands by doing - 59 SPECIAL: The `xnu.py` script brings in kernel type summary functions. To enable these please do - 73 B. Design of lldb kernel debugging platform. 79 …| |- lldb Command/Scripting-| | <-- provides scriptability for kernel data structures through s… 80 | | |--lldb core--| | | <-- interacts with remote kernel or corefile. [all …]
|
| /xnu-8019.80.24/doc/ |
| H A D | startup.md | 48 Initializes various globals that alter the behavior of the kernel, lookup 128 Denotes that the early kernel VM is initialized. 212 Initializes kernel locks that might require allocations (due to statistics and 277 Initializes the sysctl kernel subsystem 306 Denotes that the kernel is locking down, this phase should never be hooked. 307 When the kernel locks down:
|
| H A D | xnu_build_consolidation.md | 18 required KEXTs are completely different in the first place, the kernel still needs to be linked 24 The kernel itself is relatively SoC-agnostic, although strongly architecture-dependent; this is bec… 26 kernel include: 31 * Just like other components, the kernel has its share of responsibility when it comes to setting u… 33 * Certain kernel-visible architectural features are optional, which means that two same-generation … 43 Although not often, the kernel may still require deriving, one way or another, parameters like cach… 133 in different places across the kernel; for example, when applying tunables, various fixes, or enabl…
|
| H A D | allocators.md | 64 Performance wise, it is problematic to make a zone when the kernel tends to have 111 kernel extensions is problematic. 132 In kernel extensions, `kalloc` is equivalent to `kheap_alloc(KHEAP_KEXT)`. 152 Only kernel extensions that are providing core infrastructure 153 (filesystems, sandbox, ...) and are out-of-tree core kernel components 171 kernel extension. 183 kext/core kernel boundary and free on the other. 261 spray kernel objects that live in the general map. 316 to confuse the kernel extremely difficult. 395 The kernel sometimes needs to provide persistent allocations that depend on [all …]
|
| /xnu-8019.80.24/osfmk/x86_64/ |
| H A D | kpc_x86.c | 620 bool kernel = (cs & SEL_PL) != SEL_PL_U; in get_interrupted_pc() local 621 *kernel_out = kernel; in get_interrupted_pc() 629 if (kernel) { in get_interrupted_pc() 639 bool kernel = false; in kpc_sample_kperf_x86() local 640 uintptr_t pc = get_interrupted_pc(&kernel); in kpc_sample_kperf_x86() 641 kperf_kpc_flags_t flags = kernel ? KPC_KERNEL_PC : 0; in kpc_sample_kperf_x86()
|
| /xnu-8019.80.24/osfmk/tests/ |
| H A D | README.md | 3 The tests directories osfmk/tests and bsd/tests include set of tests that run in kernel at boot-tim… 8 …* Automatically skips tests that are designed to panic kernel for on-desk testing, but run in BATs… 12 ## How to run kernel POST 15 * set boot-args to include "```kernPOST=0x1```"" to enable kernel testing on boot. 31 Adding a new kernel POST test is very simple. Here are a few steps and guidelines for adding tests. 73 …* **Note**: Please make sure your test does a proper cleanup of state. The kernel is expected to c…
|
| /xnu-8019.80.24/osfmk/mach/ |
| H A D | memory_object.defs | 103 * [The kernel will release its reference on the memory object 129 * the kernel kept a copy. Precious data remains precious if the 130 * kernel keeps a copy. The indication that the kernel kept a copy 162 * forms of access; the kernel already has the data.
|
| H A D | host_priv.defs | 60 * Matchmaker definitions file for Mach kernel interface. 88 * Get boot configuration information from kernel. 193 * kernel module interface (obsolete as of SnowLeopard) 330 * If this value is already set, the kernel will discard its 344 * it is a special purpose port intended for kernel clients. User 352 * Perform an operation with a kernel extension, on the kext loading system,
|
| H A D | lock_set.defs | 36 * Exported kernel calls 52 * removed from kernel.
|
| /xnu-8019.80.24/iokit/IOKit/ |
| H A D | IOLocksPrivate.h | 36 #error IOLocksPrivate.h is for kernel use only
|