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 5447AC7EE30 for ; Tue, 1 Jul 2025 17:05:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E8EC96B00B5; Tue, 1 Jul 2025 13:05:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E3E666B00B6; Tue, 1 Jul 2025 13:05:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D05FC6B00B7; Tue, 1 Jul 2025 13:05:03 -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 BB8D26B00B5 for ; Tue, 1 Jul 2025 13:05:03 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 94C8D1D731C for ; Tue, 1 Jul 2025 17:05:03 +0000 (UTC) X-FDA: 83616320886.16.8767E7C Received: from mail-lj1-f182.google.com (mail-lj1-f182.google.com [209.85.208.182]) by imf24.hostedemail.com (Postfix) with ESMTP id 9279718000A for ; Tue, 1 Jul 2025 17:05:01 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=lHz8blhB; spf=pass (imf24.hostedemail.com: domain of tamird@gmail.com designates 209.85.208.182 as permitted sender) smtp.mailfrom=tamird@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751389501; 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=C+K6ZF3dYWrim9dWHEWNEC7aeyZabJ9Egpf5a6k6P7g=; b=bRL0hoOHJk5z8SJNISlOZikDnU1V33anvcOgJpBhcfixcTD3XJAe83668r0tw3rmGXanXi XNMaRao1yHA6FpNX4TvE4Mwh1Kdu7hjlcVXIMMWWm9yqn6V1HjjkpOqCKJPdIgr1/GQz5/ gxBqvXAX9msdv1Uq+jiVLv+oDT5AAqw= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=lHz8blhB; spf=pass (imf24.hostedemail.com: domain of tamird@gmail.com designates 209.85.208.182 as permitted sender) smtp.mailfrom=tamird@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751389501; a=rsa-sha256; cv=none; b=mPoF54tA11H9M81zXBLo0hMpJtARypWDjm9fNHiUvSkALcxMyIlioin7KJSPdStc4+A8GM bLlp0wK4kjc4bVbvCEybR54KwU3sWiz8IHjr0jsmpklK7hC0cy2oU2dCV2djvBSGCVGn3g wXg1rf5bWNqZ9VEFfiy13putJG/0QaE= Received: by mail-lj1-f182.google.com with SMTP id 38308e7fff4ca-32ca160b4bcso59226021fa.3 for ; Tue, 01 Jul 2025 10:05:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751389500; x=1751994300; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=C+K6ZF3dYWrim9dWHEWNEC7aeyZabJ9Egpf5a6k6P7g=; b=lHz8blhBJKO2m/cBaj1dRTvnCJY2U2XA3p9bFZAk+ZQrcG3W6GPvubomfvHXjabU8Q dPSl6DjuIAaRBZdt1sNM3OXmhtnQPKyZIJEOQbG+omQXnp1uAlfx+dKpu5hJ9Tpr6lRo fnvLgZwjXZYBssrUO7ufDAwloxQX/BxXkldha/MI9EaB+j5INjeWRw9xPOae39+PtmU6 nDfO4ky7nseavPMuJefvAZL1HSLu1TnApiZfjGHKmV8VCb5N1/5dyXXAYMRjsnJomXO9 Dc3wgm7E8hbbJ15oPPjR68Jl2jxgqe+utbTewLTaWys7j2b53cROOEISSax4Tk73Y2Q1 DqFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751389500; x=1751994300; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=C+K6ZF3dYWrim9dWHEWNEC7aeyZabJ9Egpf5a6k6P7g=; b=D6qb0fUWtDKO0Flp8TYprMux0c24ArdKqcCdME0FaGY5lN9wKDn0PEy8CR1saRImKF 7gm3ENh2B+etKY9P11QAW9rHzQAalsPeqpSx1E91MXUJbaMV10PN2Yd1AidHJfHnD57X d0lEMejFVhcObH1jnfkOn9ukV205W/txHsRNPJAjzFTtHlPDpbNtLuRO9rH6C+rPN9PC MeeOSUuSY3IUK+voYALhI8ua7iFMX3+La4epy7zORLBYwW2kFEoC/gMuy5l0bevITnsI fhGZjFCXPuZPkJr73AZ2Evba1Dps81xRbV2PBig6rVo2U4CaqBY1gkJFttvT5COBvUO4 AvXQ== X-Forwarded-Encrypted: i=1; AJvYcCVFsgdUmy2J8xHYm3SgYV3SKa0jLxvraD5O+b9I3WRvpvM+4opJU4wbHyV3N1LfeXT7n1phAlvPTw==@kvack.org X-Gm-Message-State: AOJu0Yzyg5zatNsI9o8KCeAk9Xsz4178jqaVCPYHMBsopu0yUJhsn9U8 piqmt9wzmjINjw8HeFkENu/+Gh5HzNtECNy7ZyOHcinqJER51v7CNAZFqd39iJXprDZ6nUDsKv2 0UaF0AXq2Y30uu8/3ZbPDiISSvVvqeF4= X-Gm-Gg: ASbGnctx4TaINNs5QX1fUDq+qa+ffSnkjSlGmz4Ixpv/g6L9kBS7FvRJErYpD/MCc4f NmML6MXXwEaRvz8oZUx+L7I3VcCpCcbmT26pOKyfbkdQCg7tx4WKFy2iE8huckJhx6pG2mi/vZB cbzyHZQxkYfAwgsrFVJseAgV51ini+qTW98ngrpDyPm8OitFUW1rrJ3kppJRB3UM8wVtS5erurm ilHtkGb0kFoJKTc X-Google-Smtp-Source: AGHT+IGqYOo2c8/8oI+jyXB0x4gWaxsVOe9Tp1zXFwmtuWqACbNl3YCeogJ+en7TpTeTnciAtjdBji+bnjdfRKFy2FM= X-Received: by 2002:a2e:22c5:0:b0:32a:dcc7:f99e with SMTP id 38308e7fff4ca-32cdc4ef298mr64711841fa.22.1751389499666; Tue, 01 Jul 2025 10:04:59 -0700 (PDT) MIME-Version: 1.0 References: <20250701-xarray-insert-reserve-v1-0-25df2b0d706a@gmail.com> <20250701-xarray-insert-reserve-v1-1-25df2b0d706a@gmail.com> In-Reply-To: From: Tamir Duberstein Date: Tue, 1 Jul 2025 13:04:22 -0400 X-Gm-Features: Ac12FXzUo3uf1OgsqLAqpL1VF9vNiKALMZv_azy7ZRgjbxDzg8RiT9byf5Y14Vc Message-ID: Subject: Re: [PATCH 1/3] rust: xarray: use the prelude To: Boqun Feng Cc: Andreas Hindborg , Miguel Ojeda , Alex Gaynor , Gary Guo , =?UTF-8?Q?Bj=C3=B6rn_Roy_Baron?= , Benno Lossin , Alice Ryhl , Trevor Gross , Danilo Krummrich , Matthew Wilcox , Andrew Morton , rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, Daniel Almeida Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 9279718000A X-Stat-Signature: 7egpcdhgg3fsppxi66whequ1f1szywu6 X-HE-Tag: 1751389501-380507 X-HE-Meta: U2FsdGVkX19oWbHzvUHkSvQwOkWH6TKN4MV2O80J9hL6TKZiOMz3QvyQatxVLbyqsxCM7WTQ2f+KMEWghXdgJWr6C6lvQ9EzTPQu20Dfv5LfDIQ80UGFYXgBxwvGWkWEWBmwO1LTZaPL0jLtiFxjyQOW5hwRGQmAaw6HIRLuEy9eVhWm5EwhvBGEb8YEAv4N37ST/1U1Hy+yntSIg/9V66uxFphk4e/Y2+AJ3yXRUYzV0Nxb/a6dq4myCzJ4FqMfmCoDYu15ybjYM64zrewi/pdFRoAB4dIYP5nLp74EuZE/mPK1ziOuVRdKCa12vQzdLHdFdg7WATm5KYlMS+2N1WeeWjhevtA8iHLYLkoSGz/MwXQ9vSvlD+gIx+eLvI4C3AW56tr7M//blqwmg1r8iXPykDAHvDrTgj4Lv7zn2pHIXYztmTG3H8pPJjX/gVStG/DRNFc4ZYSwFCWBJZyL9ahLUC910Rp9Vmsc+eVLEb4KFTKU1oo5JFGTxsvJfcraUCtxZy+QO1QQxcQH3wnLGoIEv4o6JbssJ+mNtnvV8KbmsLVczO9RTIvp+8HrcCdGs5VLIallYEscGbObN5gPOdfpXjJ+Xz7P+ENzAvaKeRVf3lGj4OTjUch2pU3eo4oODkhc8cxcTSmiZsLFu+gJgafDPRVeGrgPU7gXBC1fVOAPlql5VsnPnKcZJeaBmuOP9biviLVCzr9PPOUE/lJn9Y6prRJnxQ5moM0SVFRvmpyjown+cwwBgjHS4bUOAB+1EGoKJPFQG5mbXeIU4qp5wqxdjfrrnGh7yuUFBcDNjFmywLtQVpuA4w/nkQMHmm77mCxnp6PRP887aAtp1TwTNoa82s8zlcI46gsfZtcrEGCZW9MS6kiuaUhP8MRptzLs6yhMuCM66hG+JjGRsUiPlHIpvA/xOXUZ/q9VE03hp71eNuKPjO2I4FDwCVJY9KIFmoEAvIuNz36PXuCXXHx cVxZNj+e /NtjqVE9MrAjiwUMGnnNJKfDyGwy7ELVw+RRoGivvLXJpj02F5HKXPzZ8H7IOzIj+fCWRDxYOcRr2z8BZZTeAtagij2Q14Z8QotWxvU0zA22rFXjABsMZm/6srxnEXJjJfUozE5+DqeozdHwwpPDixXVcSyjKakmlkUckH/HhM+ByJoXeaqk71tfC+27bTMMnKUJ6gMU5yW1pY7fetc3YUAsPgtjzlZBns9DzjaL0Q/B9Rh9DScvwdmxl96pUi4FE1U74xssmh8MJCPrCGYYCy0NDPqPgAlbVR5fCfOYMWAWQroSlhW7o95P83xLOJEz//iVjUDBENW7nVVnpj5S7s3kDah27zPLdPRDvN6WgCjsPX9RG5KJzmT257pHJXMSeQ8ubfepv6Hy/neipUPvh3dobETbqvKA0LqJjiUyK6fhI23c1FX1+H1v8Vgi8mOeidNkZ X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, 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 Tue, Jul 1, 2025 at 1:02=E2=80=AFPM Boqun Feng wr= ote: > > On Tue, Jul 01, 2025 at 12:36:20PM -0400, Tamir Duberstein wrote: > > On Tue, Jul 1, 2025 at 12:35=E2=80=AFPM Boqun Feng wrote: > > > > > > On Tue, Jul 01, 2025 at 12:27:17PM -0400, Tamir Duberstein wrote: > > > > Using the prelude is customary in the kernel crate. > > > > > > > > Signed-off-by: Tamir Duberstein > > > > --- > > > > rust/kernel/xarray.rs | 34 ++++++++++++++++++++-------------- > > > > 1 file changed, 20 insertions(+), 14 deletions(-) > > > > > > > > diff --git a/rust/kernel/xarray.rs b/rust/kernel/xarray.rs > > > > index 75719e7bb491..436faad99c89 100644 > > > > --- a/rust/kernel/xarray.rs > > > > +++ b/rust/kernel/xarray.rs > > > > @@ -5,16 +5,15 @@ > > > > //! C header: [`include/linux/xarray.h`](srctree/include/linux/xar= ray.h) > > > > > > > > use crate::{ > > > > - alloc, bindings, build_assert, > > > > - error::{Error, Result}, > > > > + alloc, > > > > + prelude::*, > > > > types::{ForeignOwnable, NotThreadSafe, Opaque}, > > > > }; > > > > -use core::{iter, marker::PhantomData, mem, pin::Pin, ptr::NonNull}= ; > > > > -use pin_init::{pin_data, pin_init, pinned_drop, PinInit}; > > > > +use core::{iter, marker::PhantomData, mem, ptr::NonNull}; > > > > > > > > /// An array which efficiently maps sparse integer indices to owne= d objects. > > > > /// > > > > -/// This is similar to a [`crate::alloc::kvec::Vec>`], b= ut more efficient when there are > > > > +/// This is similar to a [`Vec>`], but more efficient wh= en there are > > > > /// holes in the index space, and can be efficiently grown. > > > > /// > > > > /// # Invariants > > > > @@ -104,16 +103,23 @@ pub fn new(kind: AllocKind) -> impl PinInit { > > > > fn iter(&self) -> impl Iterator= > + '_ { > > > > let mut index =3D 0; > > > > > > > > - // SAFETY: `self.xa` is always valid by the type invariant= . > > > > - iter::once(unsafe { > > > > - bindings::xa_find(self.xa.get(), &mut index, usize::MA= X, bindings::XA_PRESENT) > > > > - }) > > > > - .chain(iter::from_fn(move || { > > > > + core::iter::Iterator::chain( > > > > > > Does this part come from using the prelude? If not, either we need to > > > split the patch or we need to mention it in the changelog at least. > > > > Yes, it's from using the prelude - PinInit also has a chain method > > that causes ambiguity here. > > Maybe you can mention this in the change log as well. Like "Calling > iter::chain() with the associated function style to disambiguate with > PinInit::chain()". Make it easier to review (and remember) why. Yep, done for the next spin.