Message ID | 20241004154149.93856-25-dakr@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 E3F93CF884B for <linux-mm@archiver.kernel.org>; Fri, 4 Oct 2024 15:44:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6C63A6B0253; Fri, 4 Oct 2024 11:44:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 64F266B0255; Fri, 4 Oct 2024 11:44:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4CB136B0254; Fri, 4 Oct 2024 11:44:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id EDA8E6B0251 for <linux-mm@kvack.org>; Fri, 4 Oct 2024 11:44:20 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id B7B81AD034 for <linux-mm@kvack.org>; Fri, 4 Oct 2024 15:44:20 +0000 (UTC) X-FDA: 82636341480.13.74D451D Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf18.hostedemail.com (Postfix) with ESMTP id 2BBCF1C001D for <linux-mm@kvack.org>; Fri, 4 Oct 2024 15:44:18 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b="m/1oasy2"; spf=pass (imf18.hostedemail.com: domain of dakr@kernel.org designates 147.75.193.91 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=1728056485; 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:in-reply-to:references:references:dkim-signature; bh=IIt0dFxxtEQYosJ5ltIiL6nguC3ESRR0tY9hc3mlrpA=; b=6/bYlXUy97hm1pTw7ih2Bz886ECRdOtszOFuqpaSItYni0TLwtnHv9Vm76c5Q5XcJytCza CrkUNgUY+nIv0eaVsdm53ddprqWtpDb1vsQPWpycLyJStIH0b9eZpVkR8uOHprmeG8vI27 FUqoY5rLo0hGB2nXfQZsaGvZWGd7leY= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b="m/1oasy2"; spf=pass (imf18.hostedemail.com: domain of dakr@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=dakr@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1728056486; a=rsa-sha256; cv=none; b=mpXxCsvGKD7h1g7Ru4CLmpYiZYIFvziT8kqKfB2EPeGQOWtgNrQeRR/iss1uUEzwR3UX6q oksaZwlSTZOgQoLNGY4WvpxrLAzS/o1gRIuqqrQ7ltgwlfSKHi26CSd9rTNA8830qMxW5z XBO7cTepo3D+a8U46nK92p+zv7GzX1E= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id C99A3A44C02; Fri, 4 Oct 2024 15:44:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C6F94C4CED0; Fri, 4 Oct 2024 15:44:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1728056657; bh=ZDmHNLUIwFFHS+R3VBXXGD9KVgIi1Tkfsy4gCUrqKAQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=m/1oasy24Cg4tn73r5ay0ehOqtkvBqrOSpcYKK3cBYeqKnDuemnNCxap5ZpiTC1ky 8yY41UMuGwH4SHMAt8L9/bkl2mU0Ldiq36xAcZn9oRXdGrODP0ctZdz2E9s9RzL/As ffZt9RiMcsOvJtoIM59/Dxhh3g2xGB37pDSiyRQnGsBXXL8ov+s4SBV8+gpxYUo0aE I8sshYOkrsW+17NczK26zO1xu4nFjgyWR4HzbZCOm8vIG8kdCPsYnJ90J1n1p94kte OAwnDbfF9i/+9HC+bSZBHW12/Tlw88mUSlnfcwluRSpKXQYq2sSEFyJke/ZCPEY6ra 1PuZUwr/XS+1w== From: Danilo Krummrich <dakr@kernel.org> To: ojeda@kernel.org, alex.gaynor@gmail.com, wedsonaf@gmail.com, boqun.feng@gmail.com, gary@garyguo.net, bjorn3_gh@protonmail.com, benno.lossin@proton.me, a.hindborg@samsung.com, aliceryhl@google.com, akpm@linux-foundation.org Cc: daniel.almeida@collabora.com, faith.ekstrand@collabora.com, boris.brezillon@collabora.com, lina@asahilina.net, mcanal@igalia.com, zhiw@nvidia.com, cjia@nvidia.com, jhubbard@nvidia.com, airlied@redhat.com, ajanulgu@redhat.com, lyude@redhat.com, linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-mm@kvack.org, Danilo Krummrich <dakr@kernel.org> Subject: [PATCH v9 24/29] rust: alloc: implement `contains` for `Flags` Date: Fri, 4 Oct 2024 17:41:28 +0200 Message-ID: <20241004154149.93856-25-dakr@kernel.org> X-Mailer: git-send-email 2.46.1 In-Reply-To: <20241004154149.93856-1-dakr@kernel.org> References: <20241004154149.93856-1-dakr@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 2BBCF1C001D X-Stat-Signature: o73jk4kubaagxhy6rsdbnn58uz1rec5c X-Rspam-User: X-HE-Tag: 1728056658-403323 X-HE-Meta: U2FsdGVkX1+WzMEdRvtVdOroyYstMHPwBaFXfSj6rUrW6yzP/Oo2Gn3p9pWJy0m3oEXvCv+0e3Jva5SY93PhW+w47sKGwjCVZYaOUCAfcMoWgqawi/YWFAj82dS8D5iGi9JMKQNPsKRL5bl4ddA1LwxoOfctcnkvezUvTREOqAwT8UUax9ENM/TvrdLFA2etTW7I0DmeCHgNX2rqRzIYyQoz4SFq83Xri4nMOpjyOVFpyW+oCgWZ5usuq6+V6zpptruAssihcboslj/fcrlwbwjF4NtXFU1F7dFny6EI0EQqhs0qgh56FRcRzVvJLS2SbwUkW2QQ2iixC9/+KGQiW1W063wwcNnTZjMGTFDBGXjpfuENpfKvC39dchIUyEueE2T6+TPN9CsJ6bjNrLMJGT2cgt7uNISs8AKfeJGJCUSqQWSxQFdN2ufTF3ocGCzaxfudGK5PU0WeM+fM5HLBt8Mdckz//5qLCyZM+vEHhYC6UOM6zrFSxtS4dCDFIg0ph//sZOpwy0qPawrrOgqvjPryEnBBkjd5oCKg2bvcchGGaH9Wzurwcq/KB6vDZbYe5EpKY1Qvu66lEgdq8Np983qaLTi9nJz/hf1qYlYpvFQiu0HO1nOCZidU6b9Nxc+lPMiEzN2wh7giOgZB75/RsW/SxX4AZysGM0jWmDtXWOmSbMnvZsu474i5kNx1UbV+jYs+/vtWM7ZcRkUPvJOL/1601hTJDZy8X1wnR9MClRJ75XdUpY8CzdFeBBS45Kn12WQDZ2P3YTLcjVbYrWJZrijbvsLs/rAqxp6xE1AC75yW2Gqd+DFgw+tBCjqPYLtyMU/QsXLr587yjzxfVryak2i1FxOA/W0CPH5TMTWtHa8zZJD3ELUi65vlByhoTh1QqX8jFKuaLz03ZViRBwg0npGfsfedmizDMNlEChCT2KpsRVlGZnErTnyTCcbPJLUWpSnKEAfe/r6o4lDrCRd YTqAZlsr M/U1O0uJZxGB7EmC7c7xqfOy1WXyZFZ/9m1PFvUrtUOvEs2Qmh13q36wvfXZDUvhlnN89w0N5AknZnE0fr9ZoPIE3KelAjcTlMFImyX5p6qaDe+wmRB/L9l5keZzIyNXJm7mwRWTvJcFnkxzx3L8ppnUWGMmEEz+Zn8h7qAHJ/TVQ1RNBtnSjJIHlGCYLDH68jjxCxNgnsaaIjb6YQW6hFlQopQcbHdfqtf8NtdJB9t4Zc/VCAkigmza3o+HRdiLcCxpJsbQrhjUfp8im+33MUpRod7ibdoxvt6DRcblC6zAo6UFxr4YaSwf68fh6Xo8YthiLgrONin6ppKs+bhNLVANXWKckkjAuPbHJBeII2n1z79xto6nD3gzzUwgwFBYWdL9I 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: <linux-mm.kvack.org> List-Subscribe: <mailto:majordomo@kvack.org> List-Unsubscribe: <mailto:majordomo@kvack.org> |
Series |
Generic `Allocator` support for Rust
|
expand
|
diff --git a/rust/kernel/alloc.rs b/rust/kernel/alloc.rs index e8955340fe62..8acaa24a8f1f 100644 --- a/rust/kernel/alloc.rs +++ b/rust/kernel/alloc.rs @@ -35,7 +35,7 @@ /// They can be combined with the operators `|`, `&`, and `!`. /// /// Values can be used from the [`flags`] module. -#[derive(Clone, Copy)] +#[derive(Clone, Copy, PartialEq)] pub struct Flags(u32); impl Flags { @@ -43,6 +43,11 @@ impl Flags { pub(crate) fn as_raw(self) -> u32 { self.0 } + + /// Check whether `flags` is contained in `self`. + pub fn contains(self, flags: Flags) -> bool { + (self & flags) == flags + } } impl core::ops::BitOr for Flags {