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 D5F33D17122 for ; Mon, 21 Oct 2024 18:29:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 45C606B0083; Mon, 21 Oct 2024 14:29:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3E50F6B0085; Mon, 21 Oct 2024 14:29:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 25EE86B0088; Mon, 21 Oct 2024 14:29:13 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 043956B0083 for ; Mon, 21 Oct 2024 14:29:12 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id EF73D40B91 for ; Mon, 21 Oct 2024 18:29:03 +0000 (UTC) X-FDA: 82698446250.04.755C20C Received: from fout-a6-smtp.messagingengine.com (fout-a6-smtp.messagingengine.com [103.168.172.149]) by imf04.hostedemail.com (Postfix) with ESMTP id 4C45B4001C for ; Mon, 21 Oct 2024 18:28:51 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=ryhl.io header.s=fm3 header.b=rOV7SWwB; dkim=pass header.d=messagingengine.com header.s=fm3 header.b="N Jjdcg9"; spf=pass (imf04.hostedemail.com: domain of alice@ryhl.io designates 103.168.172.149 as permitted sender) smtp.mailfrom=alice@ryhl.io; dmarc=pass (policy=none) header.from=ryhl.io ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729535151; 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=lfMv/gEB7Fyh2WyXq+JcQ/WoYPqo5T4/tBmvvpdRhJA=; b=qGNW01pTzoHDcR/JCBX5uaM8fYI9v7/FWw/HQ1Ihr2a7Kjb2qUeWp7rGsfUELjhg3DyMOB zklSUV8JEtRr34COeRU9jIQBawXWz+FyCkXKVcTllskp0FY/5NF+7WD4xJflNgera6OzKc ltITEOfmIhrgSY0ETlBOejirZHzBymM= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=ryhl.io header.s=fm3 header.b=rOV7SWwB; dkim=pass header.d=messagingengine.com header.s=fm3 header.b="N Jjdcg9"; spf=pass (imf04.hostedemail.com: domain of alice@ryhl.io designates 103.168.172.149 as permitted sender) smtp.mailfrom=alice@ryhl.io; dmarc=pass (policy=none) header.from=ryhl.io ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729535151; a=rsa-sha256; cv=none; b=ID1VV0G8u1DzjhyDlYYRhIUMYUuc2l4op0e0A/zxjIgWXWdjzqhjdvZrly1vrhArqp6EHH DvNF+IYnn98mT1WZ7pY4JmJ7hki4WhYXEevODzcQc2YWX00KsbHhdXsYEiSDY1Cv+u/Hb+ 2lgDR/nRTFPMpT2en5y/F5nbtC5p6oY= Received: from phl-compute-01.internal (phl-compute-01.phl.internal [10.202.2.41]) by mailfout.phl.internal (Postfix) with ESMTP id E3F821380211; Mon, 21 Oct 2024 14:29:09 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-01.internal (MEProxy); Mon, 21 Oct 2024 14:29:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ryhl.io; h=cc:cc :content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1729535349; x=1729621749; bh=lfMv/gEB7Fyh2WyXq+JcQ/WoYPqo5T4/tBmvvpdRhJA=; b= rOV7SWwBsrFdn/qJriNNPluYBAnFHA7xrFZNYPZO9w0ApdMlkRE/ggcWuReQoofH wNx6c88VuofHtZX8Dn7PO/3E1zQOAQAsn0MZYZsTipH1XxbVhLBIU+U322DaO1zf gvv4fv6lFz7lmjbeMM2LEFLT0Pt0CjC0tqVye9M2VRCEIb2yPc3mAfoXLnwsC03D Zpab4Zw+ZiOsAXCt2GOEDxscsQg8WIox9jooP1y5os8svt0U7cVaIF4MQ+FPzq9O 7u9eJyamlBV9bWj106g7NLgzXy8kJVPOh+Cg6yj/vdnyNYhkAvEaMIm46Pe7OPIq c89qz/IO1qseUPa4+UPffw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1729535349; x= 1729621749; bh=lfMv/gEB7Fyh2WyXq+JcQ/WoYPqo5T4/tBmvvpdRhJA=; b=N Jjdcg90unnsZwAiQtEjrllg2dHY5NvgV5fv/g53R61XbEqQZ0Fz6/w6NaiD/N7mg hsuDJtitLqsoIibx8WSP5zQU1lu+0ebYDhKaIBGnSXVHyK3zBwyRLE6lFfmKHfMC ujTgEkuiv/Ht8zOxrNbtvUhuBNzLQWx7TzsaLfUUTgwSIyKziOQUzdunn5MaoAho /lbLRSqwNyqdNyouoAiiTwAKKwUjdZrOdkuRxoon6hxc3ZlYqToHs3l4k3vGd+IG OhYtEVlQbQBfp+2jyozSu++YhFWwe9L7WtP7xV+rvs1TljkYaY4fbZyn0FsYhMLm XaMT8gU+ubgiSZK51K56w== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddrvdehledguddvhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivg hnthhsucdlqddutddtmdenucfjughrpefkffggfgfuvfevfhfhjggtgfesthekredttddv jeenucfhrhhomheptehlihgtvgcutfihhhhluceorghlihgtvgesrhihhhhlrdhioheqne cuggftrfgrthhtvghrnhepgfduleegleehieelhefgjeegleeffeeliefgtdfgteeflefg fedvgefgvdetjeetnecuffhomhgrihhnpehkvghrnhgvlhdrohhrghenucevlhhushhtvg hrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrlhhitggvsehrhihhlhdr ihhopdhnsggprhgtphhtthhopeduhedpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtoh epjhhhuhgssggrrhgusehnvhhiughirgdrtghomhdprhgtphhtthhopehojhgvuggrsehk vghrnhgvlhdrohhrghdprhgtphhtthhopegrlhgvgidrghgrhihnohhrsehgmhgrihhlrd gtohhmpdhrtghpthhtohepsghoqhhunhdrfhgvnhhgsehgmhgrihhlrdgtohhmpdhrtghp thhtohepghgrrhihsehgrghrhihguhhordhnvghtpdhrtghpthhtohepsghjohhrnhefpg hghhesphhrohhtohhnmhgrihhlrdgtohhmpdhrtghpthhtohepsggvnhhnohdrlhhoshhs ihhnsehprhhothhonhdrmhgvpdhrtghpthhtoheprgdrhhhinhgusghorhhgsehkvghrnh gvlhdrohhrghdprhgtphhtthhopehtmhhgrhhoshhssehumhhitghhrdgvughu X-ME-Proxy: Feedback-ID: i56684263:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 21 Oct 2024 14:29:06 -0400 (EDT) Message-ID: <56169ee4-321c-4546-bb89-2f9530adb01c@ryhl.io> Date: Mon, 21 Oct 2024 20:32:11 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] rust: page: add Rust version of PAGE_ALIGN To: John Hubbard , Miguel Ojeda Cc: Alex Gaynor , Boqun Feng , Gary Guo , =?UTF-8?Q?Bj=C3=B6rn_Roy_Baron?= , Benno Lossin , Andreas Hindborg , Trevor Gross , linux-mm@kvack.org, rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Alice Ryhl , Andrew Morton , "Matthew Wilcox (Oracle)" References: <20241016-page-align-v2-1-e0afe85fc4b4@google.com> <81e9b289-b95c-4671-b442-1a0ac3dae466@nvidia.com> Content-Language: en-US, da From: Alice Ryhl In-Reply-To: <81e9b289-b95c-4671-b442-1a0ac3dae466@nvidia.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 4C45B4001C X-Stat-Signature: 3tipxmsqkpeyy4s9jxsy43y5z3czr6ia X-Rspam-User: X-HE-Tag: 1729535331-349664 X-HE-Meta: U2FsdGVkX18uC4lE8mF3jeMvISyUIPRzT94jDQTihbOC8jst3QWhYQKisSIcPMyLTDcLvj9GHwRRteWdw0Tbagi+ns6+yEvzDJ4eJpbBLL1iNrxGHnTUv0lIU/6KbW3dv79Yns8b5jd0a//1e0t7lwVZwwafiacJiXw0xSncsGb0UdnrsJeZvSITIXWti2S8WAojQLj+s+tVbTuhGxM43bA2YZZZsei+/D9wWoWDuYaToCOiqvWfm4N+Uy/z6S1XplBo4qTRPDsKEI0rhoWFExCTrVkv6G+ntVZUOLSvcGAzMqicapAaPc03Ub6ncDPtAOPJPbPVfra1Vrf4FA3aMvYaWH9Os04ZF1JbbJaym6TrqTdNLRxzaFgbfgGgRwlQkpgefpYy1TXM3nGSTyxsyXXiwL3oRZtUmHrIzXNSUwTx5VXJ5TCFAMV7idoAcP/BjjsM2TQiJeehdjH0hSZqfZh6lN089AIt15HmSL/etgJPO+EtkpEdi8cbB+hR9p2PhltLZQosLcAZcqxpQp/vqn4yl+LuY1aj2fEtZb9EkdrdXQkHT2NMcIGYwZAbmgLY14yojGnNAMtSMKq+buDQEQd4FWaqB2ilEPRAijdvTgVesEZeiYnzTczlZv/hfQq9uFNw0BWJScwC2stDwlx6FlUmiFD3gHXPUJm05kSRnSJ4C4uFrsJ2iub3rmYYYpQ1shCbv8u209rxl0DBC/ynTmDea4B6nyNCcLlc5sLYv+SEc9X250Jtnq7fJrv00+LTOFxHL0EdM3F5CSW0/UKzGrl4aKqjWVbF7KSXv8JQaBoMgbQ4/EJ7WdC7cr2s6B8fQ6eACmmKhvjyBn/GgFV4CW+Nn7MQlEE8zHmeRszwp++ETMeNypdCb5/SWCoZJ7L/+G8pq1CQTmUrWOTO4WEx0UHLHk+DADZgqqCLdInBOTpAYrBleBXF8uTgcL+2w8Zf3SmM841V8dl5ETzJS1R JJL94Wzy BWK6c9Y+H2Jjuk0GNuH+jHcqpyjvWc2ABxiYRZuu9yCJWcolpa2BL8R5FvD+30LJR24Fl4e6fxhFs6jtW2iZIuOk5zeL0rRvuX/HMfaMczMaa58Yo1NHeb0HjyVZgQxC4eWaGQKpVSISr6AVhiH4rEiCqGDvBVdjGcOJ3J3B4zi5BX0gFN3Fc1zSBGG4S/LBZelysh2fTyd9B9d9u3LowVgFhkWGrxzjctryeMzu4seDLe7g/FnWu2ljEVGWzNKoFgl1e+V0OcTZrco3Rl4UKJAji3PIOUCCfsB2xrqt2NYPXeXlBKcxkJDaw8um7CJU88RfIJb9dmuIUuZbmp88fWOrcTIQ3cpnKDO3L2igckCLV8cLwbYQa0Q7HMLC5PGdDPo0xbIFqFRgs7D0qTpvQKKCYBGh5UWMLKJ/Mm0h+NVss2k2x8A9z/yzjxoClkahCLsffgJAq5l9Nrya80kKY0nf1KGIdx3XwLuKDUyepFyBRyd/EArO5kEJldwNIjawbQmrPmByJd7ssubbwIVnQmOdBHQ== 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 10/21/24 8:20 PM, John Hubbard wrote: > On 10/16/24 4:34 AM, Alice Ryhl wrote: >> This is a useful for helper for working with indices into buffers that >> consist of several pages. I forgot to include it when I added PAGE_SIZE >> and PAGE_MASK for the same purpose in commit fc6e66f4696b ("rust: add >> abstraction for `struct page`"). >> >> Reviewed-by: Boqun Feng >> Signed-off-by: Alice Ryhl >> --- >> Changes in v2: >> - Make the function const. >> - Address integer overflow in docs. >> - Link to v1: https://lore.kernel.org/r/20241015-page-align- >> v1-1-68fbd8b6d10c@google.com >> --- >>   rust/kernel/page.rs | 9 +++++++++ >>   1 file changed, 9 insertions(+) >> >> diff --git a/rust/kernel/page.rs b/rust/kernel/page.rs >> index 208a006d587c..9ef01929e7d0 100644 >> --- a/rust/kernel/page.rs >> +++ b/rust/kernel/page.rs >> @@ -20,6 +20,15 @@ >>   /// A bitmask that gives the page containing a given address. >>   pub const PAGE_MASK: usize = !(PAGE_SIZE - 1); >> +/// Round up the given number to the next multiple of `PAGE_SIZE`. >> +/// >> +/// It is incorrect to pass an address where the next multiple of >> `PAGE_SIZE` doesn't fit in a >> +/// `usize`. >> +pub const fn page_align(addr: usize) -> usize { >> +    // Brackets around PAGE_SIZE-1 to avoid triggering overflow >> sanitizers in the wrong cases. > > Silly nit, but I did start looking for brackets that aren't there, so: > > s/Brackets/parentheses/ This isn't a distinction that exists in my vocabulary, shrug. Miguel, feel free to reword when you pick this. Alice