| /xnu-11215/tests/safe_allocation_src/ |
| H A D | operator.subscript.cpp | 23 RawT* memory = reinterpret_cast<RawT*>(malloc_allocator::allocate(10 * sizeof(RawT))); in tests() local 24 for (RawT* ptr = memory; ptr != memory + 10; ++ptr) { in tests() 25 *ptr = RawT{ptr - memory}; // number from 0 to 9 in tests() 28 test_safe_allocation<QualT> array(memory, 10, libkern::adopt_memory); in tests() 31 CHECK(&element == memory + n); in tests() 37 RawT* memory = reinterpret_cast<RawT*>(malloc_allocator::allocate(10 * sizeof(RawT))); in tests() local 38 for (RawT* ptr = memory; ptr != memory + 10; ++ptr) { in tests() 39 *ptr = RawT{ptr - memory}; // number from 0 to 9 in tests() 42 test_safe_allocation<QualT> const array(memory, 10, libkern::adopt_memory); in tests() 45 CHECK(&element == memory + n); in tests() [all …]
|
| H A D | data.cpp | 24 T* memory = reinterpret_cast<T*>(malloc_allocator::allocate(10 * sizeof(T))); in tests() local 25 test_safe_allocation<T> array(memory, 10, libkern::adopt_memory); in tests() 27 CHECK(data == memory); in tests() 30 T* memory = reinterpret_cast<T*>(malloc_allocator::allocate(10 * sizeof(T))); in tests() local 31 test_safe_allocation<T> const array(memory, 10, libkern::adopt_memory); in tests() 33 CHECK(data == memory); in tests()
|
| H A D | ctor.move.cpp | 25 T* memory = from.data(); in tests() local 30 CHECK(to.data() == memory); in tests() 45 T* memory = from.data(); in tests() local 50 CHECK(to.data() == memory); in tests() 65 T* memory = from.data(); in tests() local 70 CHECK(to.data() == memory); in tests()
|
| H A D | assign.move.cpp | 23 T* memory = from.data(); in tests() local 30 CHECK(to.data() == memory); in tests() 74 T* memory = from.data(); in tests() local 81 CHECK(to.data() == memory); in tests() 125 T* memory = obj.data(); in tests() local 130 CHECK(obj.data() == memory); in tests()
|
| H A D | ctor.adopt.cpp | 19 T* memory = reinterpret_cast<T*>(tracking_allocator::allocate(10 * sizeof(T))); in tests() local 22 tracked_safe_allocation<T> array(memory, 10, libkern::adopt_memory); in tests() 24 CHECK(array.data() == memory); in tests()
|
| /xnu-11215/iokit/DriverKit/ |
| H A D | IOMemoryDescriptor.iig | 84 * IOMemoryDescriptor describes a memory buffer. 87 * To allocate memory for I/O or sharing, use IOBufferMemoryDescriptor::Create() 88 * Methods in this class are used for memory that was supplied as a parameter. 108 * @brief Obtain the length of the memory described. 143 * @brief Create a memory descriptor that is a subrange of another memory 146 * kIOMemoryDirectionIn memory described will be writable 147 * kIOMemoryDirectionOut memory described will be readable 149 * @param length Length of the memory. 150 * @param ofDescriptor Memory descriptor describing source memory. 163 * @brief Create a memory descriptor that is a concatenation of a set of memory [all …]
|
| H A D | IOBufferMemoryDescriptor.iig | 45 * IOBufferMemoryDescriptor describes a memory buffer allocated in the callers address space. 48 * To allocate memory for I/O or sharing, use IOBufferMemoryDescriptor::Create(). 60 * @param capacity Maximum length of the memory buffer. The descriptor has no valid data 62 * @param memory Created descriptor with +1 retain count to be released by the caller. 63 … alignment For small less-than-page-size buffers, control the alignment of the memory buffer. 72 IOBufferMemoryDescriptor ** memory); 81 * @brief Obtain the address and length of the memory buffer. 82 … range An IOAddressSegment structure filled out with the address and length of the memory buffer. 89 * @brief Set the valid length of the memory buffer. 92 * @param length New valid length of the memory described.
|
| H A D | IODMACommand.iig | 120 * @brief Create a DMA mapping for memory. 123 * @param memory IOMemoryDescriptor for memory. 127 kIOMemoryDirectionOut the memory is readable 128 kIOMemoryDirectionIn the memory is writable 137 IOMemoryDescriptor * memory, 145 * @brief Release a DMA mapping for memory. 158 * @param memory Returned IOMemoryDescriptor of the preparation. This should be 166 IOMemoryDescriptor ** memory); 172 the memory specified with the data param 174 the memory specified with the data param [all …]
|
| H A D | IOMemoryMap.iig | 51 * IOMemoryMap describes a memory mapping created with IOMemoryDescriptor::CreateMapping() 54 * To allocate memory for I/O or sharing, use IOBufferMemoryDescriptor::Create() 55 * Methods in this class are used for memory that was supplied as a parameter. 69 * @brief Obtain the address of the memory mapping. 76 * @brief Obtain the length of the memory mapping. 83 * @brief Obtain the offset of the memory mapping.
|
| /xnu-11215/san/conf/ |
| H A D | files | 7 san/memory/kasan.c optional config_kasan 8 san/memory/kasan-test.c optional config_kasan 9 san/memory/kasan-memintrinsics.c optional config_kasan 10 san/memory/kasan_dynamic_blacklist.c optional config_kasan 11 san/memory/kasan-report.c optional config_kasan 12 san/memory/kasan-helper.c optional config_kasan 14 san/memory/ubsan.c optional config_ubsan 15 san/memory/ubsan_log.c optional config_ubsan
|
| H A D | files.x86_64 | 1 san/memory/kasan-x86_64.c optional config_kasan 2 san/memory/kasan-test-x86_64.s optional config_kasan 3 san/memory/kasan-classic.c optional config_kasan 4 san/memory/kasan-fakestack.c optional config_kasan
|
| H A D | files.arm64 | 3 san/memory/kasan-arm64.c optional config_kasan 4 san/memory/kasan-test-arm64.s optional config_kasan 6 san/memory/ubsan_minimal.c optional config_ubsan_minimal 7 san/memory/kasan-tbi.c optional config_kasan
|
| /xnu-11215/san/memory/ |
| H A D | kasan-blacklist | 34 src:./san/memory/kasan.c 35 src:./san/memory/kasan-fakestack.c 36 src:./san/memory/kasan-x86_64.c 37 src:./san/memory/kasan-memintrinsics.c 38 src:./san/memory/kasan_dynamic_blacklist.c 39 src:./san/memory/kasan-classic.c 40 src:./san/memory/kasan-tbi.c 41 src:./san/memory/kasan-helper.c 42 src:./san/memory/kasan-report.c 52 # Exclude leak detection code that reads all memory
|
| H A D | kasan-blacklist-arm64 | 6 src:./san/memory/kasan-arm64.c 7 src:./san/memory/kasan-tbi.c 8 src:./san/memory/kasan-classic.c 9 src:./san/memory/kasan-helper.c
|
| /xnu-11215/doc/vm/ |
| H A D | memorystatus_notify.md | 17 Processes may subscribe to notifications regarding memory limits. 22 …EMORYPRESSURE_PROC_LIMIT_CRITICAL` | Process has violated memory limit. Only sent if the memory li… 48 In other words, `AVAILABLE_NON_COMPRESSED_MEMORY` tracks all of the memory on 50 wired, compressed, or stolen). `AVAILABLE_MEMORY` tracks all memory that 51 is reclaimable, free, or being used to store compressed anonymous memory (i.e. 52 not wired or stolen). Compressed anonymous memory may be further "reclaimed" 81 The jetsam control loop monitors a different measure of "available" memory 93 fully-reclaimable memory to satisfy transient spikes in page demand. This pool 99 majority of the memory not otherwise wired down or stolen by the operating 100 system. If overall memory demand is such that, even with compression, the [all …]
|
| H A D | memorystatus.md | 3 Dealing with memory pressure by forcibly recovering pages. 11 - memory 20 for killing processes that go over their per-process memory limits. 26 - Swap memory from apps 44 …Contains both the policy and mechanical bits to send out memory pressure notifications. See `doc/m… 107 …ons have different memory limits when they're inactive (in band 0) vs. active (above band 0). The … 116 …luded_mem_mb`. Secluded memory is a special pool of memory that's intended for the camera so that … 119 Since we purge purgeable memory and trim the secluded pool quickly under memory pressure, this can … 126 - `kern.memstat_pressure_mb`: only processes which have violated their "soft/HWM" memory limits may… 130 \*Note that the memorystatus pressure threshold does *not* determine the "system memory pressure le… [all …]
|
| H A D | freezer.md | 8 …embedded. Under memory pressure, the freezer picks apps to freeze. For those apps, it compresses a… 13 …rally speaking, we want the freezer to run when the device is under some memory pressure but befor… 26 …memory". `memorystatus_frozen_shared_mb_max` is a global limit on the amount of shared memory that… 28 …ared memory here is a bit funky. We look at the `refcnt` for the VM object and call it shared if i… 30 …memory will be accessed by a non frozen process while the frozen process is suspended, and thus im… 36 For 2, daemons should not touch memory that is shared with a suspended app while that app is suspen… 38 …memory. IOSurface takes out multiple references on the backing VM objects. As a result this memory… 62 … to a regular app resume. **We do not proactively load any of the dirty memory out of the swap fi… 64 …NAND. For example, consider a suspended & frozen app with 100MB of dirty memory on NAND. On resume… 70 …**not** read data back in from NAND. It will copy compressed memory from existing in-memory segmen… [all …]
|
| /xnu-11215/san/ |
| H A D | Makefile | 10 memory \ 14 memory \ 18 memory \ 25 memory \
|
| /xnu-11215/doc/primitives/ |
| H A D | atomics.md | 4 How to use atomics and memory barriers in xnu. 21 Note: Linux has thorough documentation around memory barriers 46 memory ordering. 54 a huge cost in terms of memory barriers. 95 1. the memory locations passed to the various `os_atomic_*` 114 correspond to the requested memory ordering (using 135 result in quite heavy memory barriers. 137 The *consume* memory ordering should not be used 148 ### Compiler barriers and memory fences 326 ### the *dependency* memory order [all …]
|
| /xnu-11215/bsd/net/ |
| H A D | trie_utility.c | 166 if (memory == NULL) { in net_trie_init() 170 new_trie->memory = memory; in net_trie_init() 181 uint8_t *data_memory = (uint8_t *)new_trie->memory + data_memory_offset; in net_trie_init() 213 if (new_trie == NULL || memory == NULL) { in net_trie_init_with_mem() 249 new_trie->memory = memory; in net_trie_init_with_mem() 260 uint8_t *data_memory = (uint8_t *)new_trie->memory; in net_trie_init_with_mem() 275 (unsigned int)new_trie->memory, new_trie->trie_memory_size, in net_trie_init_with_mem() 286 if (new_trie == NULL || new_trie->memory == NULL) { in net_trie_free() 289 kfree_data_sized_by(new_trie->memory, new_trie->trie_memory_size); in net_trie_free() 299 if (trie->memory == NULL || string == NULL || string_length == 0) { in net_trie_insert() [all …]
|
| /xnu-11215/osfmk/mach/ |
| H A D | vm_map.defs | 103 * by the address range returned; the memory object offset 120 * Allocate zero-filled memory in the address space 157 * limits the memory access rights of threads within 180 * this memory at the time of a task_create call. 275 * Map a user-defined memory object into the virtual address 287 * specified memory object, with the beginning of the memory range 288 * referring to the specified offset into the memory object. 318 * Set/Get special properties of memory associated 346 * Require that all future virtual memory allocation 347 * allocates wired memory. Setting must_wire to FALSE [all …]
|
| H A D | mach_vm.defs | 104 * Allocate zero-filled memory in the address space 135 * address space of the target virtual memory map. 159 * space of the target virtual memory map. The current 160 * protection limits the memory access rights of threads 197 * this memory at the time of a task_create call. 324 * Map a user-supplie memory object into the virtual address 336 * specified memory object, with the beginning of the memory range 337 * referring to the specified offset into the memory object. 343 * If desired (copy is TRUE), the memory range will be filled 371 * Set/Get special properties of memory associated [all …]
|
| /xnu-11215/doc/lifecycle/ |
| H A D | hibernation.md | 27 devices and preserving the state of those devices in memory. This feature is 35 preserves state in memory (which must therefore remain powered), hibernation 58 - The hibernation code represents every page of physical memory in page 60 memory, with a bit to represent each page in that range; these page bitmaps 66 out by iBoot that exist outside of kernel-managed memory. A page bitmap is 68 kernel-managed DRAM memory). 77 memory as usual, but any drivers required for hibernation I/O are left in a 167 memory. Its assumed this will fit in memory in its entirety. The image is 172 the image back to their original physical addresses in memory. 237 `hibernate_teardown()` is called to release any memory. [all …]
|
| /xnu-11215/doc/debugging/ |
| H A D | macro_testing.md | 53 * `lldbmock.memorymock` designed to provide real object in target's memory. 77 The goal of memory mock is to provide easy to use interface for a test developer 78 to describe object in target's memory. From technical perspective this is a data 79 serializer that reflects memory location and representation of given SBType's 84 * `RawMock` that is suitable to place unstructured data into target's memory. 86 memory.
|
| /xnu-11215/libsyscall/mach/ |
| H A D | err_kern.sub | 49 "(os/kern) memory failure", 50 "(os/kern) memory error", /* 10 */ 63 "(os/kern) memory present", 64 "(os/kern) memory data moved", 65 "(os/kern) memory restart copy", /* 25 */ 74 "(os/kern) invalid memory control", 112 "(os/unix) insufficient memory", 114 "(os/unix) memory access fault",
|