Home
last modified time | relevance | path

Searched full:allocation (Results 1 – 25 of 2018) sorted by relevance

12345678910>>...81

/linux/drivers/acpi/acpica/
H A Duttrack.c4 * 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 …]
H A Dutalloc.c4 * Module Name: utalloc - local memory allocation routines
22 * PARAMETERS: size - Size of the allocation
33 void *allocation; in acpi_os_allocate_zeroed() local
37 allocation = acpi_os_allocate(size); in acpi_os_allocate_zeroed()
38 if (allocation) { in acpi_os_allocate_zeroed()
42 memset(allocation, 0, size); in acpi_os_allocate_zeroed()
45 return (allocation); in acpi_os_allocate_zeroed()
152 /* Memory allocation lists */ in acpi_ut_create_caches()
222 /* Debug only - display leftover memory allocation, if any */ in acpi_ut_delete_caches()
322 * purposefully bypass the (optionally enabled) internal allocation in acpi_ut_initialize_buffer()
[all …]
/linux/Documentation/core-api/
H A Dmemory-allocation.rst4 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. Users of this flag need
52 will be stressed unless allocation succeeds, you may use ``GFP_ATOMIC``.
67 example may be a hardware allocation that maps data directly into
[all …]
H A Dgenalloc.rst4 There are a number of memory-allocation subsystems in the kernel, each
32 which NUMA node should be used for the allocation of the housekeeping
87 how the allocation functions choose which specific piece of memory to
107 - gen_pool_first_fit_align forces the allocation to have a specific
110 - gen_pool_first_fit_order_align aligns the allocation to the order of the
111 size. A 60-byte allocation will thus be 64-byte aligned, for example.
117 If the indicated memory is not available the allocation fails.
/linux/tools/perf/pmu-events/arch/x86/sapphirerapids/
H A Duncore-cxl.json12 "BriefDescription": "Number of Allocation to Mem Rxx AGF 0",
22 "BriefDescription": "Number of Allocation to Cache Req AGF0",
32 "BriefDescription": "Number of Allocation to Cache Rsp AGF",
42 "BriefDescription": "Number of Allocation to Cache Data AGF",
52 "BriefDescription": "Number of Allocation to Cache Rsp AGF",
62 "BriefDescription": "Number of Allocation to Cache Req AGF 1",
72 "BriefDescription": "Number of Allocation to Mem Data AGF",
252 "BriefDescription": "Number of Allocation to Cache Data Packing buffer",
262 "BriefDescription": "Number of Allocation to Cache Req Packing buffer",
272 "BriefDescription": "Number of Allocation to Cache Rsp Packing buffer",
[all …]
/linux/tools/perf/pmu-events/arch/x86/emeraldrapids/
H A Duncore-cxl.json12 "BriefDescription": "Number of Allocation to Mem Rxx AGF 0",
22 "BriefDescription": "Number of Allocation to Cache Req AGF0",
32 "BriefDescription": "Number of Allocation to Cache Rsp AGF",
42 "BriefDescription": "Number of Allocation to Cache Data AGF",
52 "BriefDescription": "Number of Allocation to Cache Rsp AGF",
62 "BriefDescription": "Number of Allocation to Cache Req AGF 1",
72 "BriefDescription": "Number of Allocation to Mem Data AGF",
252 "BriefDescription": "Number of Allocation to Cache Data Packing buffer",
262 "BriefDescription": "Number of Allocation to Cache Req Packing buffer",
272 "BriefDescription": "Number of Allocation to Cache Rsp Packing buffer",
[all …]
/linux/Documentation/trace/
H A Devents-kmem.rst5 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 …]
/linux/fs/jfs/
H A Djfs_dmap.c19 * 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.
237 * FUNCTION: terminate the block allocation map in preparation for
326 * allocation map.
[all …]
H A Djfs_imap.h21 #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 …]
H A Djfs_mount.c18 * 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 …]
/linux/Documentation/admin-guide/mm/
H A Dnuma_memory_policy.rst38 use "local allocation" described below. However, during boot
82 A VMA policy will govern the allocation of pages that back
138 support allocation at fault time--a.k.a lazy allocation--so hugetlbfs
140 Although hugetlbfs segments now support lazy allocation, their support
197 closest to the node where the allocation takes place.
200 This mode specifies that the allocation should be attempted
202 allocation fails, the kernel will search other nodes, in order
209 and the policy is interpreted as local allocation. "Local"
210 allocation policy can be viewed as a Preferred policy that
211 starts at the node containing the cpu where the allocation
[all …]
/linux/include/linux/
H A Dgfp_types.h10 * typedef gfp_t - Memory allocation flags.
14 * the underlying memory allocation function. Not every GFP flag is
138 * pages being in one zone (fair zone allocation policy).
140 * %__GFP_HARDWALL enforces the cpuset memory allocation policy.
142 * %__GFP_THISNODE forces the allocation to be satisfied from the requested
145 * %__GFP_ACCOUNT causes the allocation to be accounted to kmemcg.
147 * %__GFP_NO_OBJ_EXT causes slab allocation to have no object extension.
168 * the caller guarantees the allocation will allow more memory to be freed
206 * canonical example is THP allocation where a fallback is cheap but
242 * If the allocation does fail, and the caller is in a position to
[all …]
H A Ddmapool.h4 * 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
/linux/sound/core/
H A Dpcm_memory.c31 MODULE_PARM_DESC(max_alloc_per_card, "Max total allocation bytes per card.");
71 /* the actual allocation size might be bigger than requested, in do_alloc_pages()
77 /* take back on allocation failure */ in do_alloc_pages()
313 * snd_pcm_lib_preallocate_pages - pre-allocation for the given DMA type
317 * @size: the requested pre-allocation size in bytes
318 * @max: the max. allowed pre-allocation size
320 * Do pre-allocation for the given DMA buffer type.
331 …* snd_pcm_lib_preallocate_pages_for_all - pre-allocation for continuous memory type (all substream…
335 * @size: the requested pre-allocation size in bytes
336 * @max: the max. allowed pre-allocation size
[all …]
/linux/mm/
H A Ddmapool.c57 unsigned int allocation; member
63 struct dma_page { /* cacheable header for 'allocation' bytes */
127 if ((dma - page->dma) < pool->allocation) in pool_find_page()
161 memset(page->vaddr, POOL_POISON_FREED, pool->allocation); in pool_init_page()
221 * Return: a dma allocation pool with the requested characteristics, or
228 size_t allocation; in dma_pool_create() local
245 allocation = max_t(size_t, size, PAGE_SIZE); in dma_pool_create()
248 boundary = allocation; in dma_pool_create()
252 boundary = min(boundary, allocation); in dma_pool_create()
266 retval->allocation = allocation; in dma_pool_create()
[all …]
/linux/Documentation/mm/
H A Dpage_frags.rst11 simple allocation framework for page fragments. This is used by the
17 cache is needed. This provides a central point for the fragment allocation
20 which can be expensive at allocation time. However due to the nature of
23 to be disabled when executing the fragment allocation.
26 allocation. The netdev_alloc_cache is used by callers making use of the
41 avoid calling get_page per allocation.
H A Dnuma.rst75 selected zone/node cannot satisfy the allocation request. This situation,
87 By default, Linux will attempt to satisfy memory allocation requests from the
90 for the node where the request originates. This is called "local allocation."
95 Local allocation will tend to keep subsequent access to the allocated memory
110 allocation behavior using Linux NUMA memory policy. [see
127 Some kernel allocations do not want or cannot tolerate this allocation fallback
132 A typical model for making such an allocation is to obtain the node id of the
135 the node id returned. When such an allocation fails, the requesting subsystem
138 itself on allocation failure. The kernel profiling subsystem is an example of
/linux/fs/xfs/libxfs/
H A Dxfs_alloc.h40 xfs_agnumber_t agno; /* allocation group number */
41 xfs_agblock_t agbno; /* allocation group-relative block # */
54 char wasdel; /* set if allocation was prev delayed */
55 char wasfromfl; /* set if allocation is from freelist */
64 #define XFS_ALLOC_USERDATA (1 << 0)/* allocation is for user data*/
103 * space matching the requirements in that AG, then the allocation will fail.
109 * viable candidates in the AG, then fail the allocation.
116 * then the allocation fails.
122 * Best effort full filesystem allocation scan.
124 * Locality aware allocation will be attempted in the initial AG, but on failure
[all …]
H A Dxfs_trans_resv.c84 * in the same transaction as an allocation or a free, so we compute them
150 * the allocation btrees: 2 trees * (max depth - 1) * block size
168 * the tree during individual inode allocation. Therefore the finobt
169 * reservation is unconditional for both the inode chunk allocation and
170 * individual inode allocation (modify) cases.
173 * traditional inobt: cover a full finobt shape change plus block allocation.
189 * the allocation btrees: 2 trees * (max depth - 1) * block size
193 * allocation or free and which type of create transaction is in use. An inode
195 * headers (N == 0). An inode chunk allocation requires a chunk sized
197 * reservation is required for allocation on v5 supers, which use ordered
[all …]
/linux/Documentation/filesystems/ext4/
H A Dbigalloc.rst15 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
/linux/tools/perf/pmu-events/arch/x86/broadwellx/
H A Dfrontend.json15 "PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. MM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs. Penalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
211 "BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
215 "PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4 x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when: a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread; b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); c. Instruction Decode Queue (IDQ) delivers four uops.",
220 "BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
225 "PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
230 "BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Tabl
[all...]
/linux/tools/perf/pmu-events/arch/x86/broadwellde/
H A Dfrontend.json15 "PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. MM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs. Penalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
211 "BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
215 "PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4 x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when: a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread; b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); c. Instruction Decode Queue (IDQ) delivers four uops.",
220 "BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
225 "PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
230 "BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Tabl
[all...]
/linux/tools/perf/pmu-events/arch/x86/broadwell/
H A Dfrontend.json15 "PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. MM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs. Penalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
211 "BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
215 "PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4 x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when: a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread; b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); c. Instruction Decode Queue (IDQ) delivers four uops.",
220 "BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
225 "PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
230 "BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Tabl
[all...]
/linux/Documentation/userspace-api/
H A Ddma-buf-alloc-exchange.rst180 described as having a height of 1080, with the memory allocation for each buffer
228 Allocation chapter
233 buffer-allocation interface available at either kernel or userspace level, the
234 client makes an arbitrary choice of allocation interface such as Vulkan, GBM, or
237 Each allocation request must take, at a minimum: the pixel format, a list of
239 this set of properties in different ways, such as allowing allocation in more
244 allocation, any padding required, and further properties of the underlying
250 After allocation, the client must query the allocator to determine the actual
272 memory. For this reason, each import and allocation API must provide a separate
314 In the latter case, the allocation is as discussed above, being provided with a
[all …]
/linux/drivers/md/dm-vdo/
H A Dmemory-alloc.h15 /* Custom memory allocation function that tracks memory usage */
21 * This is a generalized form of our allocation use case: It allocates an array of objects,
28 * away, and the run-time selection between allocation functions always can. In many cases, it'll
60 * Allocate one or more elements of the indicated type, logging an error if the allocation fails.
64 * @TYPE: The type of objects to allocate. This type determines the alignment of the allocation.
75 * logging an error if the allocation fails. The memory will be zeroed.
101 * Allocate memory starting on a cache line boundary, logging an error if the allocation fails. The

12345678910>>...81