From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ed1-f43.google.com (mail-ed1-f43.google.com [209.85.208.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4987655E71 for ; Tue, 27 Feb 2024 08:36:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709022988; cv=none; b=bNaXqh7rJ96yPvbkV+bR8I62yywp8PYRHb7/i5+4bBT4M7jVFpTf6T9r/Z6j98BG+eCOXRaBIq3Il0/lwZP1WbdVwM21e6fMLzhA/UC2LF58yJuSrdfRTjY/Y+VbmtRZX6o9nFGP7/Pu4TTdLvTRnd6gCP7Xt6YNk8/OF3M3swk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709022988; c=relaxed/simple; bh=tBm5IIGFhkgiqabszftedxFLBNT4N4zs7aN7ZnS5cF0=; h=References:From:To:Cc:Subject:Date:In-reply-to:Message-ID: MIME-Version:Content-Type; b=pfiBgV69CzBUO2NAfy6m9NPhLt3CzynwyQNi6p6CUXPm1wYHqzyA8rGC5ueyclPnrd6XTAtEUAKzG0jA9nce18kpWjLxHlYUZdf745JW4EPYLoXunVXHyfsJW5W5blgos0iTvPskIxeu0ZCt89nTeNH+arSPbpqx5KBoAsVg5ZM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=metaspace.dk; spf=none smtp.mailfrom=metaspace.dk; dkim=pass (2048-bit key) header.d=metaspace-dk.20230601.gappssmtp.com header.i=@metaspace-dk.20230601.gappssmtp.com header.b=p3MkRpx5; arc=none smtp.client-ip=209.85.208.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=metaspace.dk Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=metaspace.dk Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=metaspace-dk.20230601.gappssmtp.com header.i=@metaspace-dk.20230601.gappssmtp.com header.b="p3MkRpx5" Received: by mail-ed1-f43.google.com with SMTP id 4fb4d7f45d1cf-5648d92919dso5213742a12.1 for ; Tue, 27 Feb 2024 00:36:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=metaspace-dk.20230601.gappssmtp.com; s=20230601; t=1709022984; x=1709627784; darn=vger.kernel.org; h=mime-version:message-id:in-reply-to:date:subject:cc:to:from :user-agent:references:from:to:cc:subject:date:message-id:reply-to; bh=tBm5IIGFhkgiqabszftedxFLBNT4N4zs7aN7ZnS5cF0=; b=p3MkRpx5VREXJOooask2Br8TOUkyDZYl/l0UMQyjnwqe4Ky7hzSk7soSnuZaNmnGFP TOGRx1rW8rZwuXgnvAUF16AifvepYlW5SiFjiz9gUWXZkbw4O+5OrRrs8yRwYLdGD1Ax oDseHewatyh8+ZG0iwtA6vdcC28bCXguxcsTHWXMv1+WgQP0NFgd6UMInRNBLODDNCJi yazVQHrbPIWFm6YUyn0ypsmjwZrLGUUnNquVAYHg6vVABS3ddMFP/T1W1GTe/NIjyFA/ juU7cnmPfdTDXEH700c+XXWIOefma1P0YwG3sFiKCUDqEllPSXwG5Ed0ZiX7L96WPvUT 6G9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709022984; x=1709627784; h=mime-version:message-id:in-reply-to:date:subject:cc:to:from :user-agent:references:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=tBm5IIGFhkgiqabszftedxFLBNT4N4zs7aN7ZnS5cF0=; b=mpxRF0XSsIl1L5ceQUK/TOZjlpjCfUKEPZc6jwOaspO9OXYWrReZXCPUH81ILKqG/J 6wsXTtGhzUfk5NE15LUwUrnUQtXzMu1z0wu/oBKXxK/ElFmyDKnYIpnNq8XjReFvwc9E x6raouopS5e6SQbptnk7ARigxayPNAWF2Kgd1Al3GJkyhhrun3qaReMUuPwjnb4vANar EvjcZJZ/xD4Y4Lb3x8iki/8FsH74/hRV541CgWmhQDV47NxTLw6rR4RHYuTglxEv2NU2 v+7hwORUGKIw+u0dgynYiFiRF80OLEgv35Eq+kKA+1X5F81ElOqemvPc1jsx+lYZwjGS wAuw== X-Forwarded-Encrypted: i=1; AJvYcCX6KgEfgBz++ez5zjC0Uo4P5LF/0u/NdRfvmy4OzXys+m3pwXDe6QJ5pxIheGVi/p4rDks9K+1VWmez0ZBUcDs72LoioSQdKKQZsDcEnFU= X-Gm-Message-State: AOJu0Yzf7ZPIXVJbrIAxi/jY99SR+bV9o09dsrmsPbfiSen+5DqmfO/D 5bOEB3qBzQJcMdwnSXAcsVdwPrXtZ5eJOjleNlWd7gF1uFRiNBeDBTcRVKZLIto= X-Google-Smtp-Source: AGHT+IEmSlqSqeopobEyVgC92+uCi8Y34RHVrtsYAkNKK7bVxD/WCyfc9qMKmBQUExQLWATnFTHthg== X-Received: by 2002:a17:906:c7d4:b0:a43:20c0:6f7a with SMTP id dc20-20020a170906c7d400b00a4320c06f7amr4112372ejb.48.1709022984519; Tue, 27 Feb 2024 00:36:24 -0800 (PST) Received: from localhost ([79.142.230.34]) by smtp.gmail.com with ESMTPSA id hu11-20020a170907a08b00b00a3fcbd4eb2esm532864ejc.1.2024.02.27.00.36.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Feb 2024 00:36:24 -0800 (PST) References: <20240208-alice-mm-v2-0-d821250204a6@google.com> <20240208-alice-mm-v2-4-d821250204a6@google.com> User-agent: mu4e 1.10.8; emacs 29.2 From: Andreas Hindborg To: Alice Ryhl Cc: Miguel Ojeda , Alex Gaynor , Wedson Almeida Filho , Boqun Feng , Gary Guo , =?utf-8?Q?Bj=C3=B6rn?= Roy Baron , Benno Lossin , Kees Cook , Al Viro , Andrew Morton , Greg Kroah-Hartman , Arve =?utf-8?B?SGrDuG5uZXbDpWc=?= , Todd Kjos , Martijn Coenen , Joel Fernandes , Carlos Llamas , Suren Baghdasaryan , Arnd Bergmann , linux-mm@kvack.org, linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, Christian Brauner Subject: Re: [PATCH v2 4/4] rust: add abstraction for `struct page` Date: Tue, 27 Feb 2024 09:32:27 +0100 In-reply-to: <20240208-alice-mm-v2-4-d821250204a6@google.com> Message-ID: <87h6hu9udb.fsf@metaspace.dk> Precedence: bulk X-Mailing-List: rust-for-linux@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain Hi Alice, Alice Ryhl writes: > Adds a new struct called `Page` that wraps a pointer to `struct page`. > This struct is assumed to hold ownership over the page, so that Rust > code can allocate and manage pages directly. > +/// A bitwise shift for the page size. > +pub const PAGE_SHIFT: usize = bindings::PAGE_SHIFT as usize; > +/// The number of bytes in a page. > +pub const PAGE_SIZE: usize = 1 << PAGE_SHIFT; For consistency, could we get page size from bindings as well? The folio patches already do this [1]. BR Andreas [1] https://lore.kernel.org/rust-for-linux/20231018122518.128049-10-wedsonaf@gmail.com/