From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 69274EDE9B0 for ; Tue, 10 Sep 2024 20:07:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E353D8D00B9; Tue, 10 Sep 2024 16:07:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DE48C8D0002; Tue, 10 Sep 2024 16:07:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CD31E8D00B9; Tue, 10 Sep 2024 16:07:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id B113C8D0002 for ; Tue, 10 Sep 2024 16:07:51 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 53024A5DDE for ; Tue, 10 Sep 2024 20:07:51 +0000 (UTC) X-FDA: 82549914342.09.D2BB42A Received: from mail-40133.protonmail.ch (mail-40133.protonmail.ch [185.70.40.133]) by imf13.hostedemail.com (Postfix) with ESMTP id 9A7EA20014 for ; Tue, 10 Sep 2024 20:07:49 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=proton.me header.s=protonmail header.b=HoXpBPTp; spf=pass (imf13.hostedemail.com: domain of benno.lossin@proton.me designates 185.70.40.133 as permitted sender) smtp.mailfrom=benno.lossin@proton.me; dmarc=pass (policy=quarantine) header.from=proton.me ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1725998766; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=nOd42zcosTE94cbQZZ/IFTYFSJKMt0GHgSbLskRDVkQ=; b=zLr6KkEv6jVJ3iRyibNYMQZ3DEpYqioJjNu6RoPAo02CykjBAItOFSGXFvwnkCNcnfIQW4 OShTuyEpkH+j8T4zecv+cymxKcoAA1BJr51SxW6mpL3vURHM+lb8i2ZstpTPLhAXQ15YBF m+gUppqzwDFJtxkxDiQ6lorC9PUoYRg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725998766; a=rsa-sha256; cv=none; b=u/4zG/sZHixhjmxLvCtmyLKMKQDrLcqhX4wh6YzFM6lgUtTWi7dys6K1tEwLM4MTBRmJ6O gRXJfOA1VaTgbZLBEdsbZ2YFJm+kmCxwqVP1nBaUS3A3tpBSM+SicSbm4dArz9NzBeaa/p Qg/gCq0Ddkz0R7qsYaTPpc43ly3/9x0= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=proton.me header.s=protonmail header.b=HoXpBPTp; spf=pass (imf13.hostedemail.com: domain of benno.lossin@proton.me designates 185.70.40.133 as permitted sender) smtp.mailfrom=benno.lossin@proton.me; dmarc=pass (policy=quarantine) header.from=proton.me DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proton.me; s=protonmail; t=1725998867; x=1726258067; bh=nOd42zcosTE94cbQZZ/IFTYFSJKMt0GHgSbLskRDVkQ=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=HoXpBPTpjnoP5A5V7R4E1D/6NyxD42pKy0jTf0D/ivgvODM8vKNqPF4994eCu9YcA yNgEc9AqOBqoQtZ0M7tfwgKKb4Kz+nuU3L0nia9V30Jsl/hDSMvR1OQd0HYOovOBHa Dc0KpmtQxRMW5wqzzYuAmZnHTZA9aB1VNc9tUW32VLt4/q+D7DtHHyB3sqIvmrc+NC fEdBOtuxp/nYOBfU6R3WupyZZKi2kUMsWSlXk3Wrv6dY4w4XZ1Wxz0TiM2InXts0sN gaw+zqp2XjA2X9SSH4gqIlPCJl4uTuMYseJw7QUBTJw0R9F0towfyKkXcLsoWFdVNd /UsKLtnoW+EAw== Date: Tue, 10 Sep 2024 20:07:40 +0000 To: Danilo Krummrich , ojeda@kernel.org, alex.gaynor@gmail.com, wedsonaf@gmail.com, boqun.feng@gmail.com, gary@garyguo.net, bjorn3_gh@protonmail.com, a.hindborg@samsung.com, aliceryhl@google.com, akpm@linux-foundation.org From: Benno Lossin Cc: daniel.almeida@collabora.com, faith.ekstrand@collabora.com, boris.brezillon@collabora.com, lina@asahilina.net, mcanal@igalia.com, zhiw@nvidia.com, cjia@nvidia.com, jhubbard@nvidia.com, airlied@redhat.com, ajanulgu@redhat.com, lyude@redhat.com, linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v6 13/26] rust: alloc: implement kernel `Vec` type Message-ID: In-Reply-To: <20240816001216.26575-14-dakr@kernel.org> References: <20240816001216.26575-1-dakr@kernel.org> <20240816001216.26575-14-dakr@kernel.org> Feedback-ID: 71780778:user:proton X-Pm-Message-ID: 9747bfca293c10b7ad4bbdb09610026864877931 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Stat-Signature: asq5imtdfaob67icgbc9fpp1ay6f1kew X-Rspamd-Queue-Id: 9A7EA20014 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1725998869-68271 X-HE-Meta: U2FsdGVkX1+bqJ6JDsgAOnhVX5v3wuJOC+BZT69bKTADpb0IGjDms1qrUmWQmEULfCzz8jOZNL1HAg8rUXHOFjaCz6BPjNN9KRkCbG8whx+HYvbSUPbXcXKHrfZH2xzYNOMt0H66/vFoexvq8VrAk2KGt65hTY4tf3PhhAhAnUsmtl2hRm15Le5RAQ6GemaQszPJlrTic42OR1xPxHX8UE4ssWl9192Fx917FzK5dUS3DLRp1WCFSFB5tnUZ/m/22P7hicJ8WIvrS9iG6U2ed9xvgt/mN+iQL7htt5LoEJ0CSqq0f3hqbu6TagXD1Co8jt3PKBUaFBlTpOxNodhPZo0DblZ+daGwFwr7v86EXIXmu8T9VSqXPMNRme2+WczB6aMspZLQM1xZELhw3h6Qx1Xej+8zujfilJUTlM5TTs+foYK4BYgiHwHDKB5mJyn5TQgOrbOMDFwtYZdQxGjKFG6VF0JdoFjHuNbEK7cr06F2vMLlJ24FxPGg+Hr0jxtaesY7WQwHn8TpzJEDdzo8aFEO+Ci7jSg+zMAtf9HS0ud6NOm3wXLDrg4ZoFSc56/ourNxnvoIp3ZuEaRypJKvwAkx03qZSrGVHFxpn06LLzrRiFvXrCoH0L9xyBN4L87NQRlsx96QooJfGFF/10XNGbTyFJV9mq0WTIMTsNt58XBX4VN7gDItV1o93AQaeR067lrm3gK5m0qjNZbvFsBxHQsqFdFy4xIgiuFUOfZgznWknd5RxZghPB/ptLQISrA2PB+Xkb/dwP6FhdXggw0Nlztyw/aBWmyseGXNvU8JMtkgPlX8wpFy782fGHeby/OPg6D0Z72R8SSWsWen+krZ5jfWEFRIOwFBGMAOBW/suzXgSe48Jf2kX3fSXTsAUKv9QCjbmJJ3+Yq5w4EwW1qTMWUwDHRZOxGFvnFMkEVr5FODtnGTBlZHX/4QkCfVaDLUokipPWqD1N/Y+ebeDg0 GkVJb2G6 CW852R6YZYE5eqml2bTk65l35SIxrPxvhIDwf2lrPI+AMNNRnCioEWIa5fAsSdJx0q03ohbUAAkDgEZ99VlLap3+pVNSCQlUBLz0JcLKWLK06zOqil9j+R+4LltZtyOk0fgN1McStvfrVurctjAIRoX56VuKc26zUDKB40i2KFjckbZNdSHn2GZFL1kTW4wiQ+Kx6+lJew5UBh4CD9ogb3Lz9KgjRc15e22jqMCcz0axkwKAbWxS8nK/ixHPN2Hm3AwkQJgLEMTCKhF0ZjeHXPoHqUQQD1T74hdwXWHWMJLiOdKA7Ft9rv+QvjJjmcGzZeHfD5B4j0bDFZ8A/V8ar3Dw/+07ibsuWoo63jBlPx/ulpjNMXFbR0JHlOaAhtsuD1OjesEGSptHwbGNLkD5ow/4gnw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000010, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 16.08.24 02:10, Danilo Krummrich wrote: > `Vec` provides a contiguous growable array type (such as `Vec`) with > contents allocated with the kernel's allocators (e.g. `Kmalloc`, > `Vmalloc` or `KVmalloc`). >=20 > In contrast to Rust's `Vec` type, the kernel `Vec` type considers the > kernel's GFP flags for all appropriate functions, always reports > allocation failures through `Result<_, AllocError>` and remains > independent from unstable features. >=20 > Signed-off-by: Danilo Krummrich > --- > rust/kernel/alloc.rs | 6 + > rust/kernel/alloc/kvec.rs | 629 ++++++++++++++++++++++++++++++++++++++ > rust/kernel/prelude.rs | 2 +- > 3 files changed, 636 insertions(+), 1 deletion(-) > create mode 100644 rust/kernel/alloc/kvec.rs I noticed that you don't have a `pop` or `remove` function implemented, I think it would be weird to have all the other functions but not those. --- Cheers, Benno