[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <DBCJYEIGYQIG.2E341O2W3LX2S@kernel.org>
Date: Tue, 15 Jul 2025 12:21:49 +0200
From: "Danilo Krummrich" <dakr@...nel.org>
To: "Hui Zhu" <hui.zhu@...ux.dev>
Cc: "Andrew Morton" <akpm@...ux-foundation.org>, "Uladzislau Rezki"
<urezki@...il.com>, "Miguel Ojeda" <ojeda@...nel.org>, "Alex Gaynor"
<alex.gaynor@...il.com>, "Boqun Feng" <boqun.feng@...il.com>, "Gary Guo"
<gary@...yguo.net>, <bjorn3_gh@...tonmail.com>, "Benno Lossin"
<lossin@...nel.org>, "Andreas Hindborg" <a.hindborg@...nel.org>, "Alice
Ryhl" <aliceryhl@...gle.com>, "Trevor Gross" <tmgross@...ch.edu>, "Geliang
Tang" <geliang@...nel.org>, "Hui Zhu" <zhuhui@...inos.cn>,
<linux-kernel@...r.kernel.org>, <linux-mm@...ck.org>,
<rust-for-linux@...r.kernel.org>
Subject: Re: [PATCH 0/3] rust: allocator: Vmalloc: Support alignments larger
than PAGE_SIZE
Hi Hui,
On Tue Jul 15, 2025 at 11:59 AM CEST, Hui Zhu wrote:
> From: Hui Zhu <zhuhui@...inos.cn>
>
> There is a TODO in Vmalloc::realloc "Support alignments larger than
> PAGE_SIZE."
>
> These commits make allocator vmalloc support alignments larger than
> PAGE_SIZE.
> The function vrealloc_align is added to vmalloc.c to support reallocating
> aligned vmap pages.
> When Vmalloc::realloc intends to reallocate memory aligned beyond PAGE_SIZE,
> vrealloc_align should be used instead of vrealloc, thus enabling support
> for alignments larger than PAGE_SIZE.
Thanks for the patch!
Please note that there is already a rather progressed patch series addressing
this [1].
However, I'd be interested in your use-case for alignments larger than
PAGE_SIZE. :)
> And add a sample to the samples memory allocator usage.
The example looks a bit odd, more on that in the corresponding patch.
We already have other examples in the form of documentation tests [2]. Not all
of them are for VVec, some of them are for KVec and KVVec, however, they all
share the same code, only the allocator backend differs.
If you'd like to introduce additional examples, please do so in the context of
documentation tests in rust/kernel/alloc/kvec.rs.
If you enable CONFIG_RUST_KERNEL_DOCTESTS they're compiled and executed at boot
time.
[1] https://lore.kernel.org/lkml/20250709172345.1031907-1-vitaly.wool@konsulko.se/
[2] https://rust.docs.kernel.org/kernel/alloc/kvec/type.VVec.html
Powered by blists - more mailing lists