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 93374C83F10 for ; Wed, 9 Jul 2025 20:58:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BFA366B0089; Wed, 9 Jul 2025 16:58:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BAB486B009F; Wed, 9 Jul 2025 16:58:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AC1116B00BB; Wed, 9 Jul 2025 16:58:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 9CF636B0089 for ; Wed, 9 Jul 2025 16:58:25 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 241BD1D867D for ; Wed, 9 Jul 2025 20:58:25 +0000 (UTC) X-FDA: 83645939370.09.B055EDF Received: from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254]) by imf08.hostedemail.com (Postfix) with ESMTP id 87A7916000C for ; Wed, 9 Jul 2025 20:58:23 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=kx1ntk1+; spf=pass (imf08.hostedemail.com: domain of dakr@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=dakr@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752094703; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=OmvJ16W8118Pl0oIxnA/vsjmNlQfub7gtXKpTdA/5Ec=; b=M5T7dE01BqaSbhEXwRGLoKG7PuOqjiEIPObrJhuQ6IdS9vLCaXP7M7x4O3KQs9XSL3UBLf wp5iMqA0gHkkQkDnI2OFkjbuITpQPsz2HzxzQKttXTy/6nbNyHsMnOsEzojmw3aJG2PlAA f9i7GM9EelnFSktPWqPN4UCS1gzZptA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752094703; a=rsa-sha256; cv=none; b=AwXcnptwVrU755WYTbSL3nlVeyYPeVJkmApso2atfRIO4ZPeSxTfpN7+kn6kib2NrrceF6 Iv4j15Ol26VgQNsjbPrkysvTiZKYNlEW4w4Kdn+lmvEr2gotqLpT2VU9nA8KZava3SkS3V TggObX0lSSsmiQFrXzQ4USM35RWLQyU= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=kx1ntk1+; spf=pass (imf08.hostedemail.com: domain of dakr@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=dakr@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id C8C9061152; Wed, 9 Jul 2025 20:58:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 56D5AC4CEEF; Wed, 9 Jul 2025 20:58:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752094702; bh=ueEG8yp3hUYyJWqlqrkUDKTjvyC55obFwvi/Yvm/Jmo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=kx1ntk1+wqmtkcJE8xJdtY7xSzaqdbtvoUPfW9Z9ItTuZrVqVQvdLHV3WDEkbi7ZN O1VTkYU8elasexw05Xgux1zf7uZgrDLfw+u+wtZHbS9VCIuI9hEp+B03YoZNWbGHUX N6pUi8k/KxGe3nDUqa5Iom5Dh1kqr/2bZcXTc0a35CG5NeE3iubT/NRr+jpS2ma6LE UXVIdTYxfumiuwrDnW+VeCeUEMx9Xn03B0k7cjaumXHP757KGRAfaAJ00rzG3HPZYW MFMNrARB05rb4cVA2bhG2wWUwKc/TW+fmBDtQwcbQcQWc3lDHtB23vW/kEnoNlR4y8 yHk/cuWYyUG8w== Date: Wed, 9 Jul 2025 22:58:16 +0200 From: Danilo Krummrich To: Vitaly Wool Cc: linux-mm@kvack.org, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Uladzislau Rezki , Alice Ryhl , Vlastimil Babka , rust-for-linux@vger.kernel.org, Lorenzo Stoakes , "Liam R . Howlett" , Kent Overstreet , linux-bcachefs@vger.kernel.org, bpf@vger.kernel.org, Herbert Xu , Jann Horn , Pedro Falcato Subject: Re: [PATCH v12 3/4] rust: add support for NUMA ids in allocations Message-ID: References: <20250709172345.1031907-1-vitaly.wool@konsulko.se> <20250709172458.1032040-1-vitaly.wool@konsulko.se> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250709172458.1032040-1-vitaly.wool@konsulko.se> X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 87A7916000C X-Stat-Signature: hpqjygpqau6h5ntk9f5rqqj3pa7qfegw X-HE-Tag: 1752094703-246075 X-HE-Meta: U2FsdGVkX1/tmaGQ6NkI6NGUcy2cQGKUTATbjI3YdB3U5v2KiPCitJeSKefvamRRCTwPSA+7eU2WQoiZdga/1gjoC2GwDUsWn3y6F2cadk6SI8UHuSjPMYPn3R9T5dpfbJKRlkTOecXahYWLlU9D4q3cXle4wHzms9Z2huNPIetSaXDa+W5EKrqwCCCGy/so/kvb4T4E6pYQGnmFQCpEwg9wWNHEdueMqe3RF0O6YuHiJ6Y4cIBzLSfz+Ydb3NA97G7UtI1nU42AyUEIJYpplhP26MOnlCafeakUooY+wT9EIYRNqcnz8tMyhbJN9dEyL2q83FUuXjb7WprpFItNVqJkKCF6fuUwGit1KVXZKJFTdjLBB6s81qf5Tz8gI2VMB4M8wVJCb+/nSSB4CPcG3a3ZN3l0lzZOXwMfc+1jLyWh7yIJ3LHrBMov1ycCe4nww/wRrIW8k6nvY19VtfY/SA7aSlChTQDtXPCa4uifQdIRn97Rxs/5tIf+GKXMiZbQpT5374w0b+YbWdXWwh+UbIpiXDpYE/+H+0xywMdQf8pEteUmOY652phQZRxAY1JGQEvBGxesQ+HXIm5fgJjKsc4QcMHaLLIV/7IRHdpVNqqCVuecRBOb9sOenmW5T8OagQbs99pW294f0pymNAxAOBgMnQVgSnfwcpgoxxplxPB+ShOfAegvUBBypdHQbmiDWsr3pJQRrcOmWew+Da27JuXz4TRiRdLKS+k2pXKS9c56Q1jlmcw8YOwWdlTljLDYeJ7AxNSvmFyw/bZf7xLwbFTfWUIRWKe5vpb8eyIo5x8JTVme2bDH7TAgEaYRHOxiLviQVt9evjry7HFS+mnR2mIPED4a9k7pQXOmi9bL23QZi5kWdcbZSGRZeFbHmAhoehVsKmdBibSWfg1+lJEoB5WLexPYfqPeMxsNLDz8TcVi3MdJHEOi5BlUODJgNX7DRdyn+XPAibFlvjDGdjT CPMrbilF wpTHTvAVqYVovXpLp0xgwP0WiRWk6yQcoEs5FC0PtXgjstfsSMhoh8jtROZ8Xeci0u2DZIsHLHQHjgKBHoWTNVXutuM7iU/WjChfYDcNwB7Ql7Plkw250BRxUHTqPnuIOyMxQywiUnjO5xpMk+GT9BU2bJ3KSWcne/b3wylquH60ITjLRfzv4O7LUK4BPPIKWFv1m4ZBX1ZstH9u1CWGbpFv53Hyl9A3iu4/ZyXgK6MXUq/2tR73JuK3NB3HfLEt3yXzwyfIH31ZnKovr4EB+VX3gVQ== 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 Wed, Jul 09, 2025 at 07:24:58PM +0200, Vitaly Wool wrote: > Add a new type to support specifying NUMA identifiers in Rust > allocators and extend the allocators to have NUMA id as a > parameter. Thus, modify ReallocFunc to use the new extended realloc > primitives from the C side of the kernel (i. e. > k[v]realloc_node_align/vrealloc_node_align) and add the new function > alloc_node to the Allocator trait while keeping the existing one > (alloc) for backward compatibility. > > This will allow to specify node to use for allocation of e. g. > {KV}Box, as well as for future NUMA aware users of the API. > > Signed-off-by: Vitaly Wool > +/// Non Uniform Memory Access (NUMA) node identifier Please end with a period. > +#[derive(Clone, Copy, PartialEq)] > +pub struct NumaNode(i32); > + > +impl NumaNode { > + /// create a new NUMA node identifer (non-negative integer) s/identifer/identifier/ Please also add an empty line in between those two. > + /// returns EINVAL if a negative id or an id exceeding MAX_NUMNODES is specified Please start with a capital letter, use markdown and end with a period. > + pub fn new(node: i32) -> Result { > + // SAFETY: MAX_NUMNODES never exceeds 2**10 because NODES_SHIFT is 0..10 This must not be a safety comment, but a normal one. Please use markdown and end the sentence with a period. > + if node < 0 || node >= bindings::MAX_NUMNODES as i32 { > + return Err(EINVAL); > + } > + Ok(Self(node)) > + } > +} With that fixed, Acked-by: Danilo Krummrich