From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qv1-f53.google.com (mail-qv1-f53.google.com [209.85.219.53]) (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 C434D18E1F for ; Sat, 17 Jan 2026 12:22:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768652576; cv=none; b=Phd2pV5O5cKL1pIdqtpEYGokyKki4qylRXX5qYfR2IkC/FIN5kpPd+q0l3gRKTCK80i1bogqVRqsVUvcSS0JBDvZY4IEG17Aflzl1SrrZ8Z38OeaUZlTSDcen/s0mtquXLJl22g+6ZCOrEBNHL5duaEAk5RsoVULPbt6at8eDk8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768652576; c=relaxed/simple; bh=HHdfMtrK+bmGVYj7ahqR9WU8B1Kz4HjTRa7EEgx6X3Q=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Zo1ceHCJ9T3M3/a9yNopctP+HpNHOL+R/T5tLf2iJ3D2xKGVrJq2dTJ7anLLTQNXBbszXF8c1VGo+/mWvtsDmrMVYkLeUEGv0MyP1Hg524M7ixbajhiMDri2O4tjPlFHLd98SM42Rd3UDLF9ki9m5vtFdwh9Oc60l+gGRTxvJPo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Nu45kaKO; arc=none smtp.client-ip=209.85.219.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Nu45kaKO" Received: by mail-qv1-f53.google.com with SMTP id 6a1803df08f44-88888d80590so43409116d6.3 for ; Sat, 17 Jan 2026 04:22:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768652574; x=1769257374; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:feedback-id:from:to:cc:subject:date:message-id:reply-to; bh=12jZWVyIBthP0eK9MRhtgrjqCiALPkPet5YpqzILAWA=; b=Nu45kaKOUcSanpEbRhBikMlJZcAUJwGkErvJHv24q+lrjfIQVnilQ/+Mw6r8/xSV3F vgyJnNWwCNxtvTIE44LV0QABtJwQO6yiTvqGaKs4Mk/UOetYkS1YFA+uohmIeBYG0K/I i0kKGjbkgnvgjlGP8XiBmuwll5RwsMVi2TSZPPjdQa9JODYk+w24wDEmb329myY36vCF BUkEPF1h85kgx3Iw0qGOsBKS1bMoLJhQIkErZCbgVEZMTSE56NbXoevO5AZqKTX3VRMb vzICeeyPi/bgSY+/il1tupZkUXPa2cL7NmzPsf5dFGQh+lX2WZIerG8kmztAJpuIOF07 kp2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768652574; x=1769257374; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:feedback-id:x-gm-gg:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=12jZWVyIBthP0eK9MRhtgrjqCiALPkPet5YpqzILAWA=; b=ZVceQSiOWSuFVRVk73mOc30jIKMNkZoTfy76n+YRePn7251zaXAzUiTX+roPqlUT3+ boiGcXaXMqtRIBPVUX5sWrbjtczzU7pvL0I55312bEd4S4IiBJTXrylwj4XRH/d/OGTA q4FKSTD1on7fVWipDMMM1X4hQ+Xjx5IxkjUMoF+LEIOAyPnuJCY3saK1dhXrq79BrZNW 9WX5OvOSvuHCWYJqFN6/6+itFotMJydJcs7CtjISprrPcD8VJecdMlePzf93krbGLQKF xM7rzZ73dXh4lFqzeifFZdylLNIym8qm8cdnjsH2/PyCxqBze2gFF5dwxa7KQto3WQ1X il7w== X-Forwarded-Encrypted: i=1; AJvYcCVslE4RgAjcDvD8h/RuO1MMdGk0bKtReLh13ie3OH3r4XXqepOpHgUdHIfbG6XbV9AQVFcTruYhROR6d4I=@vger.kernel.org X-Gm-Message-State: AOJu0YxW3J/p8v0QaxGMSxKVzgUIKFRTGIs2TlRJyPtYfnXGyQsL3xlL UAzmws3aVCctmni8e1hv97ZTtJCfP573+ruYhr83Zf1iXFzdpD7YgG+6 X-Gm-Gg: AY/fxX6P7dQT0DIzRPB9lMr3VZqISFzR0sSl7wg5essRC+dcjguNCgXj5mRRIlvROqF jnjHmfvGDWw8hlA2mQKI1VMFgt4C+BDHYqTcBIgiLD2H9qbHToKdPxWmD1x8bNAaiTKtRMBqI0N LhgEHRxkUiRtg/HxuStqeTrtVYsSOzuKvyWfqGGyFVa/xzp/k7dMqJZtfblyN0kUjOFIonc9UkU R3tPY6j6hKw6jAm2PPLdR3Yicg+uepSV1Dyg0Y/4ZK3Do4e48+VLAAOiSWxs+JS8gXPcC2zSupN o/feAv8BF4bKSJbvSunzuCWPVN68Q0Xi1TnJsjjydDZ9otBhYbFJAC2ol5gjDJhyrr79fK7mXWI Kea0ch07kVnJdgdjSinofqAg9/OGhIi6Bka8ODLQYXaWdOiompJeYGHEyLJtgD1cSUBxPGLToFN q+5JzY6QAW7ifj7WMQv0S7Y+T1TUqR06TG2W4kaeU6PIa0yLoZf5GF4QAy7JE8wpkZl7Gw8wqHt RFHoK2aJLN6jgU= X-Received: by 2002:ad4:5cc1:0:b0:890:6f67:4127 with SMTP id 6a1803df08f44-8942e421af2mr74248266d6.4.1768652573750; Sat, 17 Jan 2026 04:22:53 -0800 (PST) Received: from fauth-a1-smtp.messagingengine.com (fauth-a1-smtp.messagingengine.com. [103.168.172.200]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8942e6d886esm44612926d6.57.2026.01.17.04.22.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 17 Jan 2026 04:22:53 -0800 (PST) Received: from phl-compute-02.internal (phl-compute-02.internal [10.202.2.42]) by mailfauth.phl.internal (Postfix) with ESMTP id 9F6B0F4007E; Sat, 17 Jan 2026 07:22:52 -0500 (EST) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-02.internal (MEProxy); Sat, 17 Jan 2026 07:22:52 -0500 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddufedukedtucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepuehoqhhunhcuhfgv nhhguceosghoqhhunhdrfhgvnhhgsehgmhgrihhlrdgtohhmqeenucggtffrrghtthgvrh hnpeeggeeukeeghfevudektdevjeehhfekffevueefudeivdelteeltdekheejgfeiveen ucffohhmrghinhepkhgvrhhnvghlrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepsghoqhhunhdomhgvshhmthhprghuthhhphgvrhhs ohhnrghlihhthidqieelvdeghedtieegqddujeejkeehheehvddqsghoqhhunhdrfhgvnh hgpeepghhmrghilhdrtghomhesfhhigihmvgdrnhgrmhgvpdhnsggprhgtphhtthhopedv iedpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtoheprhhushhtqdhfohhrqdhlihhnuh igsehvghgvrhdrkhgvrhhnvghlrdhorhhgpdhrtghpthhtoheplhhinhhugidqkhgvrhhn vghlsehvghgvrhdrkhgvrhhnvghlrdhorhhgpdhrtghpthhtoheprhgtuhesvhhgvghrrd hkvghrnhgvlhdrohhrghdprhgtphhtthhopehojhgvuggrsehkvghrnhgvlhdrohhrghdp rhgtphhtthhopegsohhquhhnrdhfvghnghesghhmrghilhdrtghomhdprhgtphhtthhope hgrghrhiesghgrrhihghhuohdrnhgvthdprhgtphhtthhopegsjhhorhhnfegpghhhsehp rhhothhonhhmrghilhdrtghomhdprhgtphhtthhopehlohhsshhinheskhgvrhhnvghlrd horhhgpdhrtghpthhtoheprgdrhhhinhgusghorhhgsehkvghrnhgvlhdrohhrgh X-ME-Proxy: Feedback-ID: iad51458e:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 17 Jan 2026 07:22:51 -0500 (EST) From: Boqun Feng To: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, rcu@vger.kernel.org Cc: Miguel Ojeda , Boqun Feng , Gary Guo , =?UTF-8?q?Bj=C3=B6rn=20Roy=20Baron?= , Benno Lossin , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich , Will Deacon , Peter Zijlstra , Mark Rutland , "Paul E. McKenney" , Frederic Weisbecker , Neeraj Upadhyay , Joel Fernandes , Josh Triplett , Uladzislau Rezki , Steven Rostedt , Mathieu Desnoyers , Lai Jiangshan , Zqiang , FUJITA Tomonori Subject: [PATCH 0/5] rust: sync: Atomic pointer and RCU Date: Sat, 17 Jan 2026 20:22:38 +0800 Message-ID: <20260117122243.24404-1-boqun.feng@gmail.com> X-Mailer: git-send-email 2.51.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi, This is a respin of my previous RCU pointer patch [1]. RCU protected pointers maps to a "struct foo __rcu *" on the C side, which although RCU has its own API, but fundamentally it's a pointer that are operated atomically, hence using Rust's atomic (pointer) API provides the necessary atomic + ordering. Although asynchronous reclaim is not in the current implementation, but it should be easy to extend. [1]: https://lore.kernel.org/rust-for-linux/20250421164221.1121805-13-boqun.feng@gmail.com/ Regards, Boqun Boqun Feng (5): rust: helpers: Generify the definitions of rust_helper_*_{read,set}* rust: helpers: Generify the definitions of rust_helper_*_xchg* rust: helpers: Generify the definitions of rust_helper_*_cmpxchg* rust: sync: atomic: Add Atomic<*mut T> support rust: sync: rcu: Add RCU protected pointer rust/helpers/atomic_ext.c | 158 +++++-------- rust/kernel/sync/atomic.rs | 12 +- rust/kernel/sync/atomic/internal.rs | 21 +- rust/kernel/sync/atomic/predefine.rs | 23 ++ rust/kernel/sync/rcu.rs | 326 ++++++++++++++++++++++++++- 5 files changed, 427 insertions(+), 113 deletions(-) -- 2.51.0