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 F1F29C71130 for ; Mon, 7 Jul 2025 16:48:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4ECAD6B03F6; Mon, 7 Jul 2025 12:48:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4C4A96B03F7; Mon, 7 Jul 2025 12:48:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3DA786B03F8; Mon, 7 Jul 2025 12:48:04 -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 2D5626B03F6 for ; Mon, 7 Jul 2025 12:48:04 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id CE27BB73CC for ; Mon, 7 Jul 2025 16:48:03 +0000 (UTC) X-FDA: 83638050846.29.6021E57 Received: from mailrelay-egress16.pub.mailoutpod3-cph3.one.com (mailrelay-egress16.pub.mailoutpod3-cph3.one.com [46.30.212.3]) by imf14.hostedemail.com (Postfix) with ESMTP id 903F0100013 for ; Mon, 7 Jul 2025 16:48:01 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=konsulko.se header.s=rsa1 header.b=SgO+096u; dkim=pass header.d=konsulko.se header.s=ed1 header.b=djzzTuqt ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751906882; a=rsa-sha256; cv=none; b=eqJKBGKZGjBL3/sOMac1bu7r+OkXRtdxdH8Evj+7n+fDOqwf+5jg6AryWSc3p9rSezwHLs yWLwxN16k3eh/BB/gTn2ji9fZh/ROmABPo88Dz2yOgoAARt7e9hKWQ3D2HkGzSVgTizC1c BKvjraUqv4Rpq3rs0ce8J8E4618zLmQ= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=konsulko.se header.s=rsa1 header.b=SgO+096u; dkim=pass header.d=konsulko.se header.s=ed1 header.b=djzzTuqt; dmarc=none; spf=none (imf14.hostedemail.com: domain of vitaly.wool@konsulko.se has no SPF policy when checking 46.30.212.3) smtp.mailfrom=vitaly.wool@konsulko.se ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751906882; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=mdqPDHemg+/vhl4rLlsYuKkgf9Pz8c5juqrYGtBQxpE=; b=voSEQytixEX5H0ANyP76dVEDgVeINepHoLcaJkWspxdTY38hb+6lWRtxJa0rE2Vo5E1+Yj GnOtJ/QKOZUBx7r+prR1N4zNDHjZzgwmGONZ+QbtJXXZXjAIJkLdBax4gaV6Y9bkxnwefB QTtczQ+ftVjR8tOGWxGNLE51z5p2W40= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1751906879; x=1752511679; d=konsulko.se; s=rsa1; h=content-transfer-encoding:mime-version:message-id:date:subject:cc:to:from: from; bh=mdqPDHemg+/vhl4rLlsYuKkgf9Pz8c5juqrYGtBQxpE=; b=SgO+096uu5w0zT5AIQRx1FBCL2qKxLN6tyaO7xSJ5+7+nueH7f9gjQO7CPEh6qjrSKLR/hsQmje4k XmGl7Ss595KeUmtb2mWi3hUX8HLfKusB5pPbRWpWmxZQK3JGbK/Ggq9cnwX4DOB7IP64A8V4+O7T9U Fh2CCBafpkrftmtKEPbwxjke2B9rmFsZuFOaBzUqk6krQkzeYh754366WPHFy9jf8pgBrNB7pHY2Qo 1UlzLnppYq3N6HjCQKXx2ZOqEAUXm4tVWc/eUQ6p8XWftqp7UfVk1bo5jwTTLw4A6fhzJAccFl0bnK ZIhnRaLQsFUiAzWZjxwYzGncVZHStPA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1751906879; x=1752511679; d=konsulko.se; s=ed1; h=content-transfer-encoding:mime-version:message-id:date:subject:cc:to:from: from; bh=mdqPDHemg+/vhl4rLlsYuKkgf9Pz8c5juqrYGtBQxpE=; b=djzzTuqtkiGl3OgcJVq+qD67+Q57UMMbVj1oJn5cKMEfZY6rVDq4K2k2jqaHFq4pUjeroFOXGOjou Lkufr6DCw== X-HalOne-ID: 23151964-5b52-11f0-b337-c9fa7b04d629 Received: from localhost.localdomain (host-90-238-19-233.mobileonline.telia.com [90.238.19.233]) by mailrelay1.pub.mailoutpod3-cph3.one.com (Halon) with ESMTPSA id 23151964-5b52-11f0-b337-c9fa7b04d629; Mon, 07 Jul 2025 16:47:59 +0000 (UTC) From: Vitaly Wool To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Uladzislau Rezki , Danilo Krummrich , Alice Ryhl , Vlastimil Babka , rust-for-linux@vger.kernel.org, Vitaly Wool Subject: [PATCH v11 0/4] support large align and nid in Rust allocators Date: Mon, 7 Jul 2025 18:47:55 +0200 Message-Id: <20250707164755.631374-1-vitaly.wool@konsulko.se> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 903F0100013 X-Stat-Signature: w8t1am5c6tnggpcsfjx6gq3w5cpbybhe X-Rspam-User: X-HE-Tag: 1751906881-486941 X-HE-Meta: U2FsdGVkX1+jlEwvMuxVZf6vL/b9W2PhbAHzcloHjhd2HPqDF6afnIvLguwQuwTHk6ujXvM6nlS8kIyM0URF+jkHgxmJFEUJeNPGb2QUqtK3nWY5GymWHLEj9rKRz4kVax5/a1IPUdQhg+czQyAg01lBpablSGYBRsd4mIyOCgUmmpVEfet/wvoldVpIBfN8pIp2kTmFFpI3mlpsPsd9XXnzhvJHEFootzMiLjmpr+LBzf0A9SJpgjfPN1n+8Se97JIWIAnF7202ikQ5byyTlQfIgcVUZ/maIjeQ8Km3GrpfurPiLeRVZAGoelSFz00jfq/PzbnjhxNwEjewL23y1r472j2HLudddtyPRf5CG+2WjFU91uDHHpHFzclSfWOo3lGKg0gwBKPfYhl98SCeGefL/AcdviNrDNj5+ETcVCaxU/OwHuYwtlMqXm4xpch9qQ2yvVMgM7brGuzS6QzmMhgzvmxl+fKwsgYvVKbiOsn2x+6+1JgYRsaLVi6LoszqtbYQZb2xx001ReTB8TuwUWMX4LLB1KuRy5iprNvxiw7oi9DIklyT1in04Ky/Ig9HUdGv7e05nWhmEF8o/KMBOm1NaYsH8hlynERxIO4620MCyZ2Wi2bGAycX4hMjyapQmR3yAb+uD/ugO+PSOboW4lVPECmNPJHLvEDQfP51KR1fkDrOOZkA8mx6ZTEmIPpZSxmQm7/8ZCAPRbq7PwlybjvabCu4meec29nMtzoP+zLI7P+2KRESsLJ7fuJ9GrMHyimfoYaumTUvEbWhju+aF1N3fdxqjmYsjCy1oU+13pdvPxQq+YrwbxBkxw6JaIr7YS3Nagj59XvV6Qlg7hZpHjOr2iz8oX3WmxTd7Yb/Kob+FySseXHiaqR16UsUVleLeVoqK0ahP6drf25lso8cNehSzWA3LD/eskveG2P1mIyqyHjbs9NOkXVbPKhvFizwfMhIly7MOfsyB1lVx3R IPwe2xqU e45osPg7/K/2sheZ04Bxpjf+Xib7o/Izy5qbmZP4a2kSSYtaE3y5AHUHx/q/6S7ms/yWEYq+nEbx4rKg/8Tvnou+7ehzPR36x65pIi4q0SjNMdAxcIwBG9poWhzOwmE4Y6Srr 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: The coming patches provide the ability for Rust allocators to set NUMA node and large alignment. Changelog: v2 -> v3: * fixed the build breakage for non-MMU configs v3 -> v4: * added NUMA node support for k[v]realloc (patch #2) * removed extra logic in Rust helpers * patch for Rust allocators split into 2 (align: patch #3 and NUMA ids: patch #4) v4 -> v5: * reworked NUMA node support for k[v]realloc for all 3 _node functions to have the same signature * all 3 _node slab/vmalloc functions now support alignment specification * Rust helpers are extended with new functions, the old ones are left intact * Rust support for NUMA nodes comes first now (as patch #3) v5 -> v6: * added _node_align functions to keep the existing interfaces intact * clearer separation for Rust support of MUNA ids and large alignments v6 -> v7: * NUMA identifier as a new Rust type (NumaNode) * better documentation for changed and new functions and constants v7 -> v8: * removed NumaError * small cleanups per reviewers' comments v8 -> v9: * realloc functions can now reallocate memory for a different NUMA node * better comments/explanations in the Rust part v9 -> v10: * refined behavior when memory is being reallocated for a different NUMA node, comments added * cleanups in the Rust part, rustfmt ran * typos corrected v10 -> v11: * added documentation for the NO_NODE constant * added node parameter to Allocator's alloc/realloc instead of adding separate alloc_node resp. realloc_node functions, modified users of alloc/realloc in accordance with that Signed-off-by: Vitaly Wool