linux/rust/kernel/alloc
Alice Ryhl 1b1a946dc2 rust: alloc: specify the minimum alignment of each allocator
The kernel's allocators sometimes provide a higher alignment than the
end-user requested, so add a new constant on the Allocator trait to let
the allocator specify what its minimum guaranteed alignment is.

This allows the ForeignOwnable trait to provide a more accurate value of
FOREIGN_ALIGN when using a pointer type such as Box, which will be
useful with certain collections such as XArray that store its own data
in the low bits of pointers.

Reviewed-by: Benno Lossin <lossin@kernel.org>
Signed-off-by: Alice Ryhl <aliceryhl@google.com>
Acked-by: Liam R. Howlett <Liam.Howlett@oracle.com>
Reviewed-by: Andreas Hindborg <a.hindborg@kernel.org>
Link: https://lore.kernel.org/r/20250811-align-min-allocator-v2-1-3386cc94f4fc@google.com
[ Add helper for ARCH_KMALLOC_MINALIGN; remove cast to usize. - Danilo ]
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2025-08-15 20:55:16 +02:00
..
kvec rust: alloc: add Vec::insert_within_capacity 2025-05-07 18:40:45 +02:00
allocator.rs rust: alloc: specify the minimum alignment of each allocator 2025-08-15 20:55:16 +02:00
allocator_test.rs rust: enable clippy::ptr_as_ptr lint 2025-06-22 23:08:42 +02:00
kbox.rs Alloc & DMA changes for v6.17 2025-07-15 23:42:55 +02:00
kvec.rs rust: make kvec::Vec functions const fn 2025-08-15 19:58:51 +02:00
layout.rs rust: make ArrayLayout::new_unchecked a const fn 2025-08-15 19:58:51 +02:00