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 A8B04C83F22 for ; Tue, 15 Jul 2025 14:36:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4B8C16B0092; Tue, 15 Jul 2025 10:36:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4692D6B0098; Tue, 15 Jul 2025 10:36:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 330A06B0099; Tue, 15 Jul 2025 10:36:12 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 1E0306B0092 for ; Tue, 15 Jul 2025 10:36:12 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id CA22F1DA54A for ; Tue, 15 Jul 2025 14:36:11 +0000 (UTC) X-FDA: 83666748942.07.3C8A31A Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) by imf01.hostedemail.com (Postfix) with ESMTP id DC02D40015 for ; Tue, 15 Jul 2025 14:36:09 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=Tsj3NEka; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf01.hostedemail.com: domain of aliceryhl@google.com designates 209.85.221.44 as permitted sender) smtp.mailfrom=aliceryhl@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752590170; 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=jGvfBdhqi/ZhPT44V9PeuAZ38V5//XMxkKdYPmm5xrM=; b=EiQqSVqrXgU2tBzHpbRZmMykN/8Wa0mAdFsDUiS0N07HbDgxSfvpfcGs9BO4HKp1zzcVfo 5ri4Y/ImHAp0egSJVCVrPAAIRduDe6OCgn+EJ7aESBRuzIfw5nDx/f/yzxtND4tjs4fVr8 8Azj5HeAswccl7IwStD/bSBwgUnFzf8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752590170; a=rsa-sha256; cv=none; b=Jc6kvu0V+juGbeQGvJSYCFCluwvApKkDZH54mRDeBPxaFtqqCg8QwBzq4TaedfhOvwkQlo oEu7ETKGNh8LIwiZY1xlN8jF2n+MSsmlQWjx4jAKcTWjNjLHCMZl5XG40gpMf99ndQs9Ie 3M1iLUwJgwNmxokoayw+Kxz31YLcE2Y= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=Tsj3NEka; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf01.hostedemail.com: domain of aliceryhl@google.com designates 209.85.221.44 as permitted sender) smtp.mailfrom=aliceryhl@google.com Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-3a5123c1533so2860283f8f.2 for ; Tue, 15 Jul 2025 07:36:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1752590168; x=1753194968; 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=jGvfBdhqi/ZhPT44V9PeuAZ38V5//XMxkKdYPmm5xrM=; b=Tsj3NEkarDqSopwDCstsJzV9tDI58fnzN1nTgOTD1Z2jyZKqZ8ug1VD+zgnOaDUDFw nEoefvC2xOoXUUjvXMfvZC3CcRNr1zAPhs67vyq4pi0pqgrEasFggoVAwegX9AjxT0XS jRdcS3N3TgzUg3GbIKBzUkNIChzPwFdEaw+GBAU5P6+shYvb7SndhEAMGRlrWfydTsbB YXok+MquizIdvgZS7CFdPXqujWKdA9mg155ppjoG6i0EmuXH9B7DUU1zMGKD+Rmp2j4R g53B67l5RCky45BnzkwSNAysMEX9/rYswNxgto7fRcTwLsb3cr6qzanCX/B7kxA/gBPf d1gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752590168; x=1753194968; 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=jGvfBdhqi/ZhPT44V9PeuAZ38V5//XMxkKdYPmm5xrM=; b=JIOZvjfpl6tb6mpBTZ7/eZRPBlBfb9SvhqTss7kp0PMfgh/hnEdgb7kRxMmofDZhp7 8i/53Km4eS1MYDAJsPIuJBJcK0wVlW37jUf3fGepdK47q/97MIIgdcsD8piT4Vksfc4n iYn7s10F0UaEUczIf+BKBRfUY8+LtfiR7qbhgrDEsJGWb197l/RRE6sS5PwlPLUZY0Fw raMNN1Zb32hCxTM0hjcEXvnPNB5FJEptGORJUpjhCgAs2Kcz63gFYRP+VUFwsrkHrUEt W+SpFB6s6xqOA0OxLuR+69vjEO98Q+sYeSddMfgsOFsMt0iI3RfK76OaY3jOJ+03XIun Y7Eg== X-Forwarded-Encrypted: i=1; AJvYcCX/Rg1uSvNoBpcz2vpE1VMrlaVh2+Cpw8doAR32lJulVN4Am85ZnoUV/poKdSxW4jgf60yNu4q9zg==@kvack.org X-Gm-Message-State: AOJu0Yx36X4jFyxCOpJWfyMgAMW02HEny/5sBcxAwX6RvjJYAR8351Nw AEaq7mpdyxnG7stlb8QC4ULiQp32MQCyXCiLZeGguH9Ro4YL8IHw1+iMtXyPXlbhbznCy0mHS4i 59NoW6d+fuPwSbFaIzRj6WrhHbXRKmZuaVNVaz/1W X-Gm-Gg: ASbGncud8OgD/uF+hvYo/O+FUS2wQc8JdQfn69UIdTj+ZnD0yNkJYqQ5mYE2LT40Jp3 N23xFL1rVWjDyjQ7V+qHqd7ysq2GVPjcijHH+7I/zceQMqEq3PnQZTe6LT7EVyXXU3F/Wllu/GJ YjVnOLf8Jvr4KmxSMBtaD805XEdNfQ39bfAp9y+X6J4s++UTm00MrRY930n0weXZS/iQTeQzPrk F9LBSfhiMMaTom8SDW8lahxcieUK39KAPZzo4RoOyl3PBnO X-Google-Smtp-Source: AGHT+IHchtZYVjwPT3Jbtde6bA8r0SM1a6NSKREDZEHuUKb1xV+X3nINxk5+iqwyl1LWyFSQCr/TULZEuO0NWNXPtg0= X-Received: by 2002:a05:6000:4022:b0:3b6:938:86b7 with SMTP id ffacd0b85a97d-3b6093886bbmr3936441f8f.35.1752590168224; Tue, 15 Jul 2025 07:36:08 -0700 (PDT) MIME-Version: 1.0 References: <20250715-align-min-allocator-v1-0-3e1b2a5516c0@google.com> <20250715-align-min-allocator-v1-1-3e1b2a5516c0@google.com> In-Reply-To: From: Alice Ryhl Date: Tue, 15 Jul 2025 16:35:56 +0200 X-Gm-Features: Ac12FXxYoaHrfSJ6mWRMdg4R-V_viczknh-7oNSEIV-JL9gT_TR3g9iuEJIcalQ Message-ID: Subject: Re: [PATCH 1/2] rust: alloc: specify the minimum alignment of each allocator To: Danilo Krummrich Cc: Lorenzo Stoakes , "Liam R. Howlett" , Andrew Morton , Matthew Wilcox , Tamir Duberstein , Andreas Hindborg , Miguel Ojeda , Boqun Feng , Gary Guo , =?UTF-8?Q?Bj=C3=B6rn_Roy_Baron?= , Benno Lossin , Trevor Gross , linux-mm@kvack.org, rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: DC02D40015 X-Stat-Signature: 1wz498n4xwadymwudgcbhg5yk5cnnbc6 X-Rspam-User: X-Rspamd-Server: rspam11 X-HE-Tag: 1752590169-662547 X-HE-Meta: U2FsdGVkX18DIeEJW4yuWGfrmyx33O+JWTpvy+wprLjt93pOA7Sw1MJMERKK0Pw5pw7RXfeBXTlGH9b+1ncvk7Y9hLNWO/3H3+S/PrQMXmzpD83MbDWnozhMJEA9tNTCo37q3bGxiCm20WDvrWZrr/xQo5J1iZGsIjchF5An3QkzKJfMpuFq1BgOzSRDozvJL8QzcGVtPmFk8kPATE65Uu9u/u+EGyCobyaGwKiboN8XEZ1ohuG+hgJE+el0RC9TQMMIjiKhv1VmYzo+/epi5pGqpN/u01mxqQPFSF3BW4H62p7CaUz+tSqhsDfLkU4TiydpKfIB189CYLMo3qZtyeqIpibR4H96DPNm9/WS/RJnRaY6SH70pjPZZMIvDVPWC0qnlnv7m8GcvAGOGbO7gVlGlzWL31l72k4vnZfN+lC0SpQWSgzLMCyKZLm596+NDxHmTPfZ8ekGwkL+bgmkWsRLCqCKADMn+/ZMKK1SKwutjFqHv/psyWbf8oyAC+8U91HFfvdyH9ngW12f4/O6LqtYuUviszs3FPTI0Fb+0wR01ebei1+yxjikebNYbwz/lyfnKnKs1XBc8Ht/6OaNizSPjH9Vt9uRx/allMY6YliB25Rxoo1mwzm1BX4xP0oU9AgBm/gJybZz1ftyeeZVZ1WHBdYgpiGfBoMQVzC5TNkR61jdn+7dPBIgf4Q8bXcE3/HtBExa+7DZvqm9FHht9JmjavQHvQdoIwIwrB9cPgApa3/+yPWBKVmXh1mfqeuiJjOLJvRr62aakHYgF/Je5S2ymXjJqC0bP8Lul+zDbehrrw5+xMwN7xMen0uuIB8uuv3sLFJK60O8e4cRObsgN6/ZfHN7RaygPtfgH9fOl0RxePNrkOr+Mn4jNn0GR5ut8fTAedIVN4hZsL4unQTp/rSc34eV+EN2K8372v7wuLtf9TlnupvI87+yLNsSTgsBwBq1wLiekyZjPo7OGCi ytqzKXE/ uB5tTPJG3BTbvG0OpqezhR2nezw3AiRZV9hor6pnb9V0Xd+g9CQ4kAxcFIIZM2LeusqZNaTOFDtKcgqeCVY1D4cK94QOZRSo4W284E4cDxnIqY1pYq4BlTUXjDydWD9jLef/4aFfvKstOIwmgXEKwXCzIhga8r0PHLQO1HHuuA1C29kviUrojFhHFwpqSqyHgwIxvNRHg1DOJDaly0IY0KKk4AOPBDmRYbNjD0pRQlhTVp4he4KE6ZYdclqQGnnk8Om2u8YYQv7RmxHBniW1o6JR+H+qtDWSQaNo9 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 15, 2025 at 4:05=E2=80=AFPM Danilo Krummrich = wrote: > > On Tue Jul 15, 2025 at 3:46 PM CEST, Alice Ryhl wrote: > > diff --git a/rust/kernel/alloc.rs b/rust/kernel/alloc.rs > > index a2c49e5494d334bfde67328464dafcdb31052947..c12753a5fb1c7423a406355= 3674b537a775c860e 100644 > > --- a/rust/kernel/alloc.rs > > +++ b/rust/kernel/alloc.rs > > @@ -137,6 +137,14 @@ pub mod flags { > > /// - Implementers must ensure that all trait functions abide by the g= uarantees documented in the > > /// `# Guarantees` sections. > > pub unsafe trait Allocator { > > + /// The minimum alignment satisfied by all allocations from this a= llocator. > > + /// > > + /// # Guarantees > > + /// > > + /// Any pointer allocated by this allocator must be aligned to `MI= N_ALIGN` even if the > > + /// requested layout has a smaller alignment. > > I'd say "is guaranteed to be aligned to" instead, "must be" reads like a > requirement. Yes I agree that sounds better. > Speaking of which, I think this also needs to be expressed as a safety > requirement of the Allocator trait itself, which the specific allocator > implementations need to justify. The trait safety requirements already says that the implementation must provide the guarantee listed on each item in the trait. Alice