| /kernel/linux/linux-5.10/drivers/acpi/acpica/ |
| D | uttrack.c | 4 * Module Name: uttrack - Memory allocation tracking routines (debug only) 14 * Each memory allocation is tracked via a doubly linked list. Each 32 *allocation); 80 * PARAMETERS: size - Size of the allocation 94 struct acpi_debug_mem_block *allocation; in acpi_ut_allocate_and_track() local 105 allocation = in acpi_ut_allocate_and_track() 107 if (!allocation) { in acpi_ut_allocate_and_track() 109 /* Report allocation error */ in acpi_ut_allocate_and_track() 118 acpi_ut_track_allocation(allocation, size, ACPI_MEM_MALLOC, in acpi_ut_allocate_and_track() 121 acpi_os_free(allocation); in acpi_ut_allocate_and_track() [all …]
|
| /kernel/linux/linux-5.10/tools/testing/selftests/resctrl/ |
| D | mba_test.c | 3 * Memory Bandwidth Allocation (MBA) test 23 * For each allocation, run 5 times in order to get average values. 27 static int runs_per_allocation, allocation = 100; in mba_setup() local 43 if (allocation < ALLOCATION_MIN || allocation > ALLOCATION_MAX) in mba_setup() 46 sprintf(allocation_str, "%d", allocation); in mba_setup() 49 allocation -= ALLOCATION_STEP; in mba_setup() 56 int allocation, runs; in show_mba_info() local 61 for (allocation = 0; allocation < ALLOCATION_MAX / ALLOCATION_STEP; in show_mba_info() 62 allocation++) { in show_mba_info() 71 for (runs = NUM_OF_RUNS * allocation + 1; in show_mba_info() [all …]
|
| /kernel/linux/linux-5.10/Documentation/core-api/ |
| D | memory-allocation.rst | 4 Memory Allocation Guide 7 Linux provides a variety of APIs for memory allocation. You can 14 Most of the memory allocation APIs use GFP flags to express how that 16 pages", the underlying memory allocation function. 18 Diversity of the allocation APIs combined with the numerous GFP flags 26 Of course there are cases when other allocation APIs and different GFP 45 * If the allocation is performed from an atomic context, e.g interrupt 48 ``GFP_NOWAIT`` allocation is likely to fail. Allocations which 51 will be stressed unless allocation succeeds, you may use ``GFP_ATOMIC``. 66 example may be a hardware allocation that maps data directly into [all …]
|
| /kernel/linux/linux-5.10/fs/xfs/libxfs/ |
| D | xfs_ialloc.h | 22 uint64_t alloc; /* inode phys. allocation bitmap for 40 * To work within the constraint of one allocation per transaction, 42 * allocation to make more free inodes. If an inode is 43 * available without an allocation, agbp would be set to the current 45 * If an allocation needed to be done, agbp would be set to the 46 * inode header of the allocation group and alloc_done set to true. 94 struct xfs_buf *bp, /* allocation group header buffer */ 98 * Read in the allocation group header (inode allocation section) 104 xfs_agnumber_t agno, /* allocation group number */ 105 struct xfs_buf **bpp); /* allocation group hdr buf */ [all …]
|
| D | xfs_alloc.h | 20 * Freespace allocation types. Argument to xfs_alloc_[v]extent. 58 xfs_agnumber_t agno; /* allocation group number */ 59 xfs_agblock_t agbno; /* allocation group-relative block # */ 71 xfs_alloctype_t type; /* allocation type XFS_ALLOCTYPE_... */ 72 xfs_alloctype_t otype; /* original allocation type */ 74 char wasdel; /* set if allocation was prev delayed */ 75 char wasfromfl; /* set if allocation is from freelist */ 83 #define XFS_ALLOC_USERDATA (1 << 0)/* allocation is for user data*/ 125 * Interface for inode allocation to force the pag data to be initialized. 131 xfs_agnumber_t agno, /* allocation group number */ [all …]
|
| D | xfs_trans_resv.c | 129 * the allocation btrees: 2 trees * (max depth - 1) * block size 147 * the tree during individual inode allocation. Therefore the finobt 148 * reservation is unconditional for both the inode chunk allocation and 149 * individual inode allocation (modify) cases. 152 * traditional inobt: cover a full finobt shape change plus block allocation. 168 * the allocation btrees: 2 trees * (max depth - 1) * block size 172 * allocation or free and which type of create transaction is in use. An inode 174 * headers (N == 0). An inode chunk allocation requires a chunk sized 176 * reservation is required for allocation on v5 supers, which use ordered 224 * Note: Most of the reservations underestimate the number of allocation [all …]
|
| /kernel/linux/linux-5.10/fs/jfs/ |
| D | jfs_dmap.c | 19 * SERIALIZATION of the Block Allocation Map. 21 * the working state of the block allocation map is accessed in 24 * 1) allocation and free requests that start at the dmap 28 * 2) allocation requests that start at dmap control page 46 * the working state of the block allocation map also includes read/ 48 * free block count, allocation group level free block counts). 53 * accesses to the persistent state of the block allocation map (limited 139 * FUNCTION: initializate the block allocation map. 216 * FUNCTION: terminate the block allocation map in preparation for 304 * allocation map. [all …]
|
| D | jfs_imap.h | 21 #define MAXAG 128 /* maximum number of allocation groups */ 23 #define AMAPSIZE 512 /* bytes in the IAG allocation maps */ 39 * inode allocation map: 41 * inode allocation map consists of 43 * . inode allocation group pages (per 4096 inodes) 47 * inode allocation group page (per 4096 inodes of an AG) 51 __le32 iagnum; /* 4: inode allocation group number */ 73 /* allocation bit map: 1 bit per inode (0 - free, 1 - allocated) */ 74 __le32 wmap[EXTSPERIAG]; /* 512: working allocation map */ 75 __le32 pmap[EXTSPERIAG]; /* 512: persistent allocation map */ [all …]
|
| D | jfs_mount.c | 18 * allocation map inode" (aka fileset inode): 21 * allocation map inode" (aka aggregate inode) where each inode 98 * initialize aggregate inode allocation map in jfs_mount() 106 * open aggregate block allocation map in jfs_mount() 119 * initialize aggregate block allocation map in jfs_mount() 127 * open the secondary aggregate inode allocation map in jfs_mount() 129 * This is a duplicate of the aggregate inode allocation map. in jfs_mount() 149 * initialize secondary aggregate inode allocation map in jfs_mount() 164 * open fileset inode allocation map (aka fileset inode) in jfs_mount() 169 /* open fileset secondary inode allocation map */ in jfs_mount() [all …]
|
| D | jfs_extent.c | 61 * extent that is used as an allocation hint if the 93 /* check if an allocation hint was provided */ in extAlloc() 99 * immediately previous to the current allocation in extAlloc() 121 * and retry the allocation until the number of blocks to allocate in extAlloc() 160 /* set the results of the extent allocation */ in extAlloc() 185 * FUNCTION: extend the allocation of a file extent containing a 237 * by extending the allocation in place. otherwise, it will in extRealloc() 263 * disk allocation occurred as an inplace extension. the second in extRealloc() 281 /* if we were able to extend the disk allocation in place, in extRealloc() 339 * FUNCTION: produce an extent allocation hint for a file offset. [all …]
|
| /kernel/linux/linux-5.10/Documentation/trace/ |
| D | events-kmem.rst | 5 The kmem tracing system captures events related to object and page allocation 8 - Slab allocation of small objects of unknown type (kmalloc) 9 - Slab allocation of small objects of known type 10 - Page allocation 17 1. Slab allocation of small objects of unknown type 27 internal fragmented as a result of the allocation pattern. By correlating 29 the allocation sites were. 32 2. Slab allocation of small objects of known type 45 3. Page allocation 54 These four events deal with page allocation and freeing. mm_page_alloc is [all …]
|
| /kernel/linux/linux-5.10/fs/ocfs2/ |
| D | reservations.h | 7 * Allocation reservations function prototypes and structures. 84 * allocation mirror bitmap. 115 * @cstart: start of proposed allocation 116 * @clen: length (in clusters) of proposed allocation 123 * On success, zero is returned and the valid allocation area is set in cstart 136 * @cstart: start of allocation in clusters 137 * @clen: end of allocation in clusters. 139 * Tell the reservation code that bits were used to fulfill allocation in 143 * reservations bitmap. If resv is passed, it's next allocation window will be
|
| /kernel/linux/linux-5.10/mm/ |
| D | dmapool.c | 47 size_t allocation; member 53 struct dma_page { /* cacheable header for 'allocation' bytes */ 95 pages * (pool->allocation / pool->size), in show_pools() 127 * Return: a dma allocation pool with the requested characteristics, or 134 size_t allocation; in dma_pool_create() local 148 allocation = max_t(size_t, size, PAGE_SIZE); in dma_pool_create() 151 boundary = allocation; in dma_pool_create() 167 retval->allocation = allocation; in dma_pool_create() 216 } while (offset < pool->allocation); in pool_initialise_page() 226 page->vaddr = dma_alloc_coherent(pool->dev, pool->allocation, in pool_alloc_page() [all …]
|
| D | zbud.c | 38 * allocation function, zbud_alloc(), returns an opaque handle to the user, 41 * allocation data and unmap the handle with zbud_unmap() when operations 42 * on the allocation data are complete. 61 * NCHUNKS_ORDER determines the internal allocation granularity, effectively 64 * allocation granularity will be in chunks of size PAGE_SIZE/64. As one chunk 230 /* Converts an allocation size in bytes to size in zbud chunks */ 268 * Add CHUNK_SIZE to the handle if it is the first allocation to jump in encode_handle() 304 * Return: pointer to the new zbud pool or NULL if the metadata allocation 339 * @size: size in bytes of the desired allocation 341 * @handle: handle of the new allocation [all …]
|
| /kernel/linux/linux-5.10/arch/x86/include/asm/ |
| D | hw_irq.h | 65 * irq_alloc_info - X86 specific interrupt allocation info 66 * @type: X86 specific allocation type 67 * @flags: Flags for allocation tweaks 70 * @mask: CPU mask for vector allocation 72 * @data: Allocation specific data 74 * @ioapic: IOAPIC specific allocation data 75 * @uv: UV specific allocation data
|
| /kernel/linux/linux-5.10/Documentation/vm/ |
| D | page_frags.rst | 13 simple allocation framework for page fragments. This is used by the 19 cache is needed. This provides a central point for the fragment allocation 22 which can be expensive at allocation time. However due to the nature of 25 to be disabled when executing the fragment allocation. 28 allocation. The netdev_alloc_cache is used by callers making use of the 43 avoid calling get_page per allocation.
|
| D | numa.rst | 77 selected zone/node cannot satisfy the allocation request. This situation, 89 By default, Linux will attempt to satisfy memory allocation requests from the 92 for the node where the request originates. This is called "local allocation." 97 Local allocation will tend to keep subsequent access to the allocated memory 112 allocation behavior using Linux NUMA memory policy. [see 129 Some kernel allocations do not want or cannot tolerate this allocation fallback 134 A typical model for making such an allocation is to obtain the node id of the 137 the node id returned. When such an allocation fails, the requesting subsystem 140 itself on allocation failure. The kernel profiling subsystem is an example of
|
| D | balance.rst | 14 be that the caller is willing to fail the allocation without incurring the 16 allocation requests that have order-0 fallback options. In such cases, 19 __GFP_IO allocation requests are made to prevent file system deadlocks. 21 In the absence of non sleepable allocation requests, it seems detrimental 48 with a slight change in the allocation routine, it is possible to reduce 76 probably because all allocation requests are coming from intr context 90 watermark[WMARK_HIGH]. When low_on_memory is set, page allocation requests will
|
| D | split_page_table_lock.rst | 25 to taken lock or NULL if allocation failed; 59 must be called on PTE table allocation / freeing. 62 allocation: slab uses page->slab_cache for its pages. 69 allocation and pgtable_pmd_page_dtor() on freeing. 71 Allocation usually happens in pmd_alloc_one(), freeing in pmd_free() and 72 pmd_free_tlb(), but make sure you cover all PMD table allocation / freeing
|
| /kernel/linux/linux-5.10/Documentation/admin-guide/mm/ |
| D | numa_memory_policy.rst | 40 use "local allocation" described below. However, during boot 84 A VMA policy will govern the allocation of pages that back 140 support allocation at fault time--a.k.a lazy allocation--so hugetlbfs 142 Although hugetlbfs segments now support lazy allocation, their support 199 closest to the node where the allocation takes place. 202 This mode specifies that the allocation should be attempted 204 allocation fails, the kernel will search other nodes, in order 211 and the policy is interpreted as local allocation. "Local" 212 allocation policy can be viewed as a Preferred policy that 213 starts at the node containing the cpu where the allocation [all …]
|
| /kernel/linux/linux-5.10/sound/core/ |
| D | pcm_memory.c | 32 MODULE_PARM_DESC(max_alloc_per_card, "Max total allocation bytes per card."); 268 * snd_pcm_lib_preallocate_pages - pre-allocation for the given DMA type 272 * @size: the requested pre-allocation size in bytes 273 * @max: the max. allowed pre-allocation size 275 * Do pre-allocation for the given DMA buffer type. 286 …* snd_pcm_lib_preallocate_pages_for_all - pre-allocation for continuous memory type (all substream… 290 * @size: the requested pre-allocation size in bytes 291 * @max: the max. allowed pre-allocation size 293 * Do pre-allocation to all substreams of the given pcm for the 309 * @size: the requested pre-allocation size in bytes [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | gfp.h | 82 * pages being in one zone (fair zone allocation policy). 84 * %__GFP_HARDWALL enforces the cpuset memory allocation policy. 86 * %__GFP_THISNODE forces the allocation to be satisfied from the requested 89 * %__GFP_ACCOUNT causes the allocation to be accounted to kmemcg. 112 * the caller guarantees the allocation will allow more memory to be freed 151 * canonical example is THP allocation where a fallback is cheap but 186 * If the allocation does fail, and the caller is in a position to 191 * cannot handle allocation failures. The allocation could block 215 * %__GFP_NOWARN suppresses allocation failure reports. 242 * %GFP_ATOMIC users can not sleep and need the allocation to succeed. A lower [all …]
|
| D | dmapool.h | 4 * Allocation pools for DMAable (coherent) memory. 22 size_t size, size_t align, size_t allocation); 34 size_t size, size_t align, size_t allocation); 39 struct device *dev, size_t size, size_t align, size_t allocation) in dma_pool_create() argument 47 struct device *dev, size_t size, size_t align, size_t allocation) in dmam_pool_create() argument
|
| /kernel/linux/linux-5.10/Documentation/filesystems/ext4/ |
| D | bigalloc.rst | 15 use clustered allocation, so that each bit in the ext4 block allocation 19 This means that each bit in the block allocation bitmap now addresses 20 256 4k blocks. This shrinks the total size of the block allocation 29 128MiB); however, the minimum allocation unit becomes a cluster, not a
|
| /kernel/linux/linux-5.10/include/drm/ |
| D | drm_managed.h | 54 * @size: size of the memory allocation 55 * @gfp: GFP allocation flags 71 * @flags: GFP allocation flags 75 * like a memory allocation obtained by drmm_kmalloc(). 93 * @flags: GFP allocation flags 97 * memory allocation obtained by drmm_kmalloc().
|