rust: alloc: add missing invariant in Vec::set_len()
authorDanilo Krummrich <dakr@kernel.org>
Sat, 15 Mar 2025 15:43:02 +0000 (16:43 +0100)
committerDanilo Krummrich <dakr@kernel.org>
Mon, 7 Apr 2025 12:02:56 +0000 (14:02 +0200)
commitfb1bf1067de979c89ae33589e0466d6ce0dde204
treeafc4b2bdf632b1b5c7afcd708fbd9e0fb8f2a1bf
parent0af2f6be1b4281385b618cb86ad946eded089ac8
rust: alloc: add missing invariant in Vec::set_len()

When setting a new length, we have to justify that the set length
represents the exact number of elements stored in the vector.

Reviewed-by: Benno Lossin <benno.lossin@proton.me>
Reported-by: Alice Ryhl <aliceryhl@google.com>
Closes: https://lore.kernel.org/rust-for-linux/20250311-iov-iter-v1-4-f6c9134ea824@google.com
Fixes: 2aac4cd7dae3 ("rust: alloc: implement kernel `Vec` type")
Link: https://lore.kernel.org/r/20250315154436.65065-2-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
rust/kernel/alloc/kvec.rs