Home
last modified time | relevance | path

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

12345678910>>...128

/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 …]
/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 …]
/linux/rust/kernel/
H A Dalloc.rs3 //! Implementation of the kernel's memory allocation infrastructure.
21 /// Indicates an allocation error.
69 /// Allocation flags.
80 /// Allow the allocation to be in high memory.
88 /// Users can not sleep and need the allocation to succeed.
99 /// The same as [`GFP_KERNEL`], except the allocation is accounted to kmemcg.
107 /// Suppresses allocation failure reports.
152 /// - A memory allocation returned from an allocator must remain valid until it is explicitly freed.
154 /// - Any pointer to a valid memory allocation must be valid to be passed to any other [`Allocator`]
186 // new memory allocation. in alloc()
[all …]
/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/drivers/md/dm-vdo/
H A Dphysical-zone.c478 * @allocation: The struct allocation of the data_vio attempting to allocate.
484 static int allocate_and_lock_block(struct allocation *allocation) in allocate_and_lock_block() argument
489 VDO_ASSERT_LOG_ONLY(allocation->lock == NULL, in allocate_and_lock_block()
492 result = vdo_allocate_block(allocation->zone->allocator, &allocation->pbn); in allocate_and_lock_block()
496 result = vdo_attempt_physical_zone_pbn_lock(allocation->zone, allocation->pbn, in allocate_and_lock_block()
497 allocation->write_lock_type, &lock); in allocate_and_lock_block()
505 (unsigned long long) allocation->pbn, in allocate_and_lock_block()
511 allocation->lock = lock; in allocate_and_lock_block()
525 /* Now that some slab has scrubbed, restart the allocation process. */ in retry_allocation()
526 data_vio->allocation.wait_for_clean_slab = false; in retry_allocation()
[all …]
/linux/tools/testing/selftests/resctrl/
H A Dmba_test.c3 * Memory Bandwidth Allocation (MBA) test
36 * For each allocation, run 5 times in order to get average values.
42 static unsigned int allocation = ALLOCATION_MIN; in mba_setup() local
54 if (allocation > ALLOCATION_MAX) in mba_setup()
57 sprintf(allocation_str, "%d", allocation); in mba_setup()
63 allocation += ALLOCATION_STEP; in mba_setup()
76 unsigned int allocation; in show_mba_info() local
82 for (allocation = 0; allocation < ALLOCATION_MAX / ALLOCATION_STEP; in show_mba_info()
83 allocation++) { in show_mba_info()
89 for (runs = NUM_OF_RUNS * allocation; in show_mba_info()
[all …]
/linux/rust/kernel/alloc/allocator/
H A Diter.rs8 /// An [`Iterator`] of [`page::BorrowedPage`] items owned by a [`Vmalloc`] allocation.
17 /// - `buf` is a valid and [`page::PAGE_SIZE`] aligned pointer into a [`Vmalloc`] allocation.
18 /// - `size` is the number of bytes from `buf` until the end of the [`Vmalloc`] allocation `buf`
49 // hence the resulting pointer is guaranteed to be within the same allocation. in next()
56 // - `ptr` is a valid pointer to a `Vmalloc` allocation. in next()
73 /// - `buf` must be a [`page::PAGE_SIZE`] aligned pointer into a [`Vmalloc`] allocation.
75 /// - `size` must be the number of bytes from `buf` until the end of the [`Vmalloc`] allocation
79 // pointer into a [`Vmalloc`] allocation. in new()
88 /// Returns the size of the backing [`Vmalloc`] allocation in bytes.
90 /// Note that this is the size the [`Vmalloc`] allocation has been allocated with. Hence, this
[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.
241 * FUNCTION: terminate the block allocation map in preparation for
330 * 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/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/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
132 * pages being in one zone (fair zone allocation policy).
134 * %__GFP_HARDWALL enforces the cpuset memory allocation policy.
136 * %__GFP_THISNODE forces the allocation to be satisfied from the requested
139 * %__GFP_ACCOUNT causes the allocation to be accounted to kmemcg.
141 * %__GFP_NO_OBJ_EXT causes slab allocation to have no object extension.
164 * the caller guarantees the allocation will allow more memory to be freed
202 * canonical example is THP allocation where a fallback is cheap but
238 * If the allocation does fail, and the caller is in a position to
[all …]
H A Dkasan.h290 * kasan_mempool_poison_pages - Check and poison a mempool page allocation.
291 * @page: Pointer to the page allocation.
292 * @order: Order of the allocation.
300 * Before the poisoned allocation can be reused, it must be unpoisoned via
303 * Return: true if the allocation can be safely reused; false otherwise.
316 * kasan_mempool_unpoison_pages - Unpoison a mempool page allocation.
317 * @page: Pointer to the page allocation.
318 * @order: Order of the allocation.
323 * This function unpoisons a page allocation that was previously poisoned by
324 * kasan_mempool_poison_pages() without zeroing the allocation's memory. For
[all …]
/linux/tools/include/linux/
H A Dgfp_types.h10 * typedef gfp_t - Memory allocation flags.
14 * the underlying memory allocation function. Not every GFP flag is
132 * pages being in one zone (fair zone allocation policy).
134 * %__GFP_HARDWALL enforces the cpuset memory allocation policy.
136 * %__GFP_THISNODE forces the allocation to be satisfied from the requested
139 * %__GFP_ACCOUNT causes the allocation to be accounted to kmemcg.
141 * %__GFP_NO_OBJ_EXT causes slab allocation to have no object extension.
164 * the caller guarantees the allocation will allow more memory to be freed
202 * canonical example is THP allocation where a fallback is cheap but
238 * If the allocation does fail, and the caller is in a position to
[all …]
/linux/Documentation/mm/
H A Dallocation-profiling.rst4 MEMORY ALLOCATION PROFILING
23 When set to "never", memory allocation profiling overhead is minimized and it
30 If compression fails, a warning is issued and memory allocation profiling gets
67 Memory allocation profiling builds off of code tagging, which is a library for
72 To add accounting for an allocation call, we replace it with a macro
76 - calls the real allocation function
81 do not properly belong to the outer allocation context and should be counted
85 Thus, proper usage requires determining which function in an allocation call
92 - switch its allocation call to the _noprof() version, e.g. kmalloc_noprof()
108 - Hook your data structure's init function, like any other allocation function.
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.
/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/drivers/android/binder/
H A Dallocation.rs28 /// Range within the allocation where we can find the offsets to the object descriptors.
30 /// The target node of the transaction this allocation is associated to.
33 /// When this allocation is dropped, call `pending_oneway_finished` on the node.
44 /// Represents an allocation that the kernel is currently using.
50 /// This allocation corresponds to an allocation in the range allocator, so the relevant pages are
52 pub(crate) struct Allocation { struct
64 impl Allocation { argument
230 /// Should the looper return to userspace when freeing this allocation?
241 impl Drop for Allocation { implementation
267 // Ignore allocation failures. in drop()
[all …]
/linux/mm/
H A Ddmapool.c57 unsigned int allocation; member
64 struct dma_page { /* cacheable header for 'allocation' bytes */
128 if ((dma - page->dma) < pool->allocation) in pool_find_page()
162 memset(page->vaddr, POOL_POISON_FREED, pool->allocation); in pool_init_page()
223 * Return: a dma allocation pool with the requested characteristics, or
230 size_t allocation; in dma_pool_create_node() local
247 allocation = max_t(size_t, size, PAGE_SIZE); in dma_pool_create_node()
250 boundary = allocation; in dma_pool_create_node()
254 boundary = min(boundary, allocation); in dma_pool_create_node()
268 retval->allocation = allocation; in dma_pool_create_node()
[all …]
/linux/arch/x86/include/asm/
H A Dhw_irq.h61 * irq_alloc_info - X86 specific interrupt allocation info
62 * @type: X86 specific allocation type
63 * @flags: Flags for allocation tweaks
66 * @mask: CPU mask for vector allocation
68 * @data: Allocation specific data
70 * @ioapic: IOAPIC specific allocation data
71 * @uv: UV specific allocation data
/linux/fs/ocfs2/
H A Dreservations.h5 * Allocation reservations function prototypes and structures.
108 * @cstart: start of proposed allocation
109 * @clen: length (in clusters) of proposed allocation
116 * On success, zero is returned and the valid allocation area is set in cstart
129 * @cstart: start of allocation in clusters
130 * @clen: end of allocation in clusters.
132 * Tell the reservation code that bits were used to fulfill allocation in
136 * reservations bitmap. If resv is passed, it's next allocation window will be
/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 …]
/linux/Documentation/driver-api/cxl/
H A Dindex.rst48 :caption: Memory Allocation
50 allocation/dax
51 allocation/page-allocator
52 allocation/reclaim
53 allocation/hugepages.rst

12345678910>>...128