Lines Matching full:allocation

3 //! 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()
190 /// Re-allocate an existing memory allocation to satisfy the requested `layout` and
202 /// If the requested size is larger than the size of the existing allocation, a successful call
206 /// If the requested size is smaller than the size of the existing allocation, `realloc` may or
209 /// On allocation failure, the existing buffer, if any, remains valid.
215 /// - If `ptr == Some(p)`, then `p` must point to an existing and valid memory allocation
218 /// - `ptr` is allowed to be `None`; in this case a new memory allocation is created and
220 /// - `old_layout` must match the `Layout` the allocation has been created with.
238 /// Free an existing memory allocation.
242 /// - `ptr` must point to an existing and valid memory allocation created by this [`Allocator`];
245 /// - `layout` must match the `Layout` the allocation has been created with.
246 /// - The memory allocation at `ptr` must never again be read from or written to.
248 // SAFETY: The caller guarantees that `ptr` points at a valid allocation created by this in free()
250 // smaller than or equal to the alignment previously used with this allocation. in free()