Lines Matching full:allocation
3 //! Implementation of the kernel's memory allocation infrastructure.
28 /// Indicates an allocation error.
74 /// Allocation flags.
85 /// Allow the allocation to be in high memory.
93 /// Users can not sleep and need the allocation to succeed.
104 /// The same as [`GFP_KERNEL`], except the allocation is accounted to kmemcg.
112 /// Suppresses allocation failure reports.
132 /// - A memory allocation returned from an allocator must remain valid until it is explicitly freed.
134 /// - Any pointer to a valid memory allocation must be valid to be passed to any other [`Allocator`]
158 // new memory allocation. in alloc()
162 /// Re-allocate an existing memory allocation to satisfy the requested `layout`.
166 /// If the requested size is larger than the size of the existing allocation, a successful call
170 /// If the requested size is smaller than the size of the existing allocation, `realloc` may or
173 /// On allocation failure, the existing buffer, if any, remains valid.
179 /// - If `ptr == Some(p)`, then `p` must point to an existing and valid memory allocation
182 /// - `ptr` is allowed to be `None`; in this case a new memory allocation is created and
184 /// - `old_layout` must match the `Layout` the allocation has been created with.
201 /// Free an existing memory allocation.
205 /// - `ptr` must point to an existing and valid memory allocation created by this [`Allocator`];
208 /// - `layout` must match the `Layout` the allocation has been created with.
209 /// - The memory allocation at `ptr` must never again be read from or written to.
211 // SAFETY: The caller guarantees that `ptr` points at a valid allocation created by this in free()
213 // smaller than or equal to the alignment previously used with this allocation. in free()