diff options
| author | Mark Brown <broonie@kernel.org> | 2025-10-13 13:32:13 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2025-10-13 13:32:13 +0100 |
| commit | 4f38da1f027ea2c9f01bb71daa7a299c191b6940 (patch) | |
| tree | 701d1096f1a3df53ecf2a0231d2ed9a868c9b4b3 /rust/kernel/alloc/layout.rs | |
| parent | 18a5f1af596e6ba22cd40ada449063041f3ce6d4 (diff) | |
| parent | 3a8660878839faadb4f1a6dd72c3179c1df56787 (diff) | |
| download | linux-4f38da1f027ea2c9f01bb71daa7a299c191b6940.tar.gz linux-4f38da1f027ea2c9f01bb71daa7a299c191b6940.zip | |
spi: Merge up v6.18-rc1
Ensure my CI has a sensible baseline.
Diffstat (limited to 'rust/kernel/alloc/layout.rs')
| -rw-r--r-- | rust/kernel/alloc/layout.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/rust/kernel/alloc/layout.rs b/rust/kernel/alloc/layout.rs index 93ed514f7cc7..9f8be72feb7a 100644 --- a/rust/kernel/alloc/layout.rs +++ b/rust/kernel/alloc/layout.rs @@ -80,7 +80,7 @@ impl<T> ArrayLayout<T> { /// # Safety /// /// `len` must be a value, for which `len * size_of::<T>() <= isize::MAX` is true. - pub unsafe fn new_unchecked(len: usize) -> Self { + pub const unsafe fn new_unchecked(len: usize) -> Self { // INVARIANT: By the safety requirements of this function // `len * size_of::<T>() <= isize::MAX`. Self { @@ -98,6 +98,11 @@ impl<T> ArrayLayout<T> { pub const fn is_empty(&self) -> bool { self.len == 0 } + + /// Returns the size of the [`ArrayLayout`] in bytes. + pub const fn size(&self) -> usize { + self.len() * core::mem::size_of::<T>() + } } impl<T> From<ArrayLayout<T>> for Layout { |
