From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qt1-f177.google.com (mail-qt1-f177.google.com [209.85.160.177]) (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 4530D3D7D80 for ; Tue, 20 Jan 2026 11:52:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.177 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768909940; cv=none; b=ofrEinz0ZCfDmgykL5fTYO+HULzHKoar0fXVecfH1eQjhGHz1vDYNo+KoZfRvnPsv9xLR1Ua9zA5XrlCeTKpUAUoPE5RTfKsT3v9cjjHyR6O9ffwph0PxParjAfj3qMK+BF2PdjaAxa40rx50hBCw6XxQKASsUfITVXEmRebAT4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768909940; c=relaxed/simple; bh=eZ7TJKGaYF3Btsft7zsIUPV8gs07SrfjDP9DbiNuoFg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=ct72tpLOtCpZp/E1Y2IPV/guuGBmwo9UDiS195DZsvYsYA1gYwCvFCv+5hcxxBaaa++zO3gvqBXbyT7cz5vcQZZhDEka27diuQIYxaMkhu6v2BphDCxocIsb1cGtyPDBkpkQag4qnNMKcoq1wbuzSGUinT9AYakgUImecwCXCdY= 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=Pue9Cpys; arc=none smtp.client-ip=209.85.160.177 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="Pue9Cpys" Received: by mail-qt1-f177.google.com with SMTP id d75a77b69052e-502a789834fso31017131cf.2 for ; Tue, 20 Jan 2026 03:52:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768909936; x=1769514736; 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=3jCOHRzv4aKjnldOO0XQggF0Di9XNaJfQUF6T7RtB4A=; b=Pue9CpystnGmZrx/fluVZjLHebUi4aNWTlVUOrz4/swJm2oUVrnZWaBt8cGwYP4Fv7 TVvPMJf3UGwSwgir6uSBUZiqRD/BnPnkcD947UDirU6VThgByfPQ48orS4l5f/1L5dud tdemvgCUXNfjYGDc0vdm8pf3kFbYV42gsYGnzxA9aF8yYiLDF0oEbL7dx9VeSwAj2YlY NDNspL3+L5Tp2/aHdBPwBdMYmU/cscIFz9p4ab6AYCW9PZG/seDVIppUMQcLi5SVOphF a0e0r+0PJgjijGrWbNjnnxyJW0PVZIW3JyMR655YN+/3VR9TgddbdmBH0lgCB1E8xMN9 LXNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768909936; x=1769514736; 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=3jCOHRzv4aKjnldOO0XQggF0Di9XNaJfQUF6T7RtB4A=; b=RJnLVlevyDxAY9DjHjY1ubkIjm2aKYhmH+/bMaQfAW/wO1vJj8SuspoZrju411fnqf FQGBj2pMMN2KFU63xXnhBhDXJGL+8jpB19mKzMWyh9fkTAR1bn1hwr1ZZ8E+fjMsp/Yo 9jbDRLghv5Cln8CDJbGjpfw9Idp1myDv9Kzy5rD7tHmWuE3ug+Fhwgomn/15mPaHxtNg +EfAlhWOAzNV8V1Ag1Yd4ufnfZBE/DUWfgu5ntEQoDg+ijAbaGGVFMMeg+/DkOEBg2GR OO9ECslDU9pWKvzCPyAhJ/LpMTkjM6exqpu9mxFEDY6ScvjdRd1qyt+ZFGLIyw9iH3Gs JGGQ== X-Gm-Message-State: AOJu0Yz748qoLOOGoip85MAoHaT6sdFEboV5mSGrqdjgg/RMS3WzhEFB irkotgUchHzQk/C5mTlDVeHMQo2uhPO5Lk3VKumVHV+iNHJiEQ+zPTbR X-Gm-Gg: AY/fxX5g9d8J9SYd7CslNdGQrUAY2JhzF9EziOvyBz5gSBUapWEiLV6w85Nq+PsS25i G994e3Ae7d6ZbyXO72EIzjWrxeZy6dEbgZvgBTGRw3+CxZx012tfc1dpNiIrUkPkUBz1od8+Pzm wv6f5VNvcNXotWdDkRvu4UV0sZOFUZNi08K7kScjpPv+HOXF4iIv2giRhtzDxWPoDzsy3PeZqaW nTmSsnDIi3tHz+M1SqSi4sqhg+2+spXGg5FhxQM+s8T+mei7DhaNWdiH3OMuAbqsa4s94qHHnFg 6RlLoSkduPjVtzPiCZSM4m2fj2gxjAgQysXoMLnX9am/cgm+DjDdcCjVo280k7GT/amv/1Nmr/0 STL2ywYqqlz395iEa7AJfUZzhlAY1zmvhC+2J2jDPCWVHkpxeTRnfRvW3apYZvrUSQkiIE4TQkq iwKVI5lI05xuKSOU9W0ns+fd9M7EzjDmVmHHkxf0VN3OIe5N1oUsfWNBvZ0DVd6C8KkHt0P5XPe MoPl4XWSYtRT3E= X-Received: by 2002:ac8:5ac2:0:b0:501:4857:62e3 with SMTP id d75a77b69052e-502a17567camr193852581cf.50.1768909936488; Tue, 20 Jan 2026 03:52:16 -0800 (PST) Received: from fauth-a2-smtp.messagingengine.com (fauth-a2-smtp.messagingengine.com. [103.168.172.201]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-502a1d9eca6sm99050811cf.11.2026.01.20.03.52.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jan 2026 03:52:16 -0800 (PST) Received: from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44]) by mailfauth.phl.internal (Postfix) with ESMTP id 8333BF40068; Tue, 20 Jan 2026 06:52:14 -0500 (EST) Received: from phl-frontend-03 ([10.202.2.162]) by phl-compute-04.internal (MEProxy); Tue, 20 Jan 2026 06:52:14 -0500 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddugedtfeegucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepuehoqhhunhcuhfgv nhhguceosghoqhhunhdrfhgvnhhgsehgmhgrihhlrdgtohhmqeenucggtffrrghtthgvrh hnpeeggeeukeeghfevudektdevjeehhfekffevueefudeivdelteeltdekheejgfeiveen ucffohhmrghinhepkhgvrhhnvghlrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepsghoqhhunhdomhgvshhmthhprghuthhhphgvrhhs ohhnrghlihhthidqieelvdeghedtieegqddujeejkeehheehvddqsghoqhhunhdrfhgvnh hgpeepghhmrghilhdrtghomhesfhhigihmvgdrnhgrmhgvpdhnsggprhgtphhtthhopedv tddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtoheplhhinhhugidqkhgvrhhnvghlse hvghgvrhdrkhgvrhhnvghlrdhorhhgpdhrtghpthhtoheprhhushhtqdhfohhrqdhlihhn uhigsehvghgvrhdrkhgvrhhnvghlrdhorhhgpdhrtghpthhtoheplhhinhhugidqfhhsug gvvhgvlhesvhhgvghrrdhkvghrnhgvlhdrohhrghdprhgtphhtthhopehkrghsrghnqdgu vghvsehgohhoghhlvghgrhhouhhpshdrtghomhdprhgtphhtthhopeifihhllheskhgvrh hnvghlrdhorhhgpdhrtghpthhtohepphgvthgvrhiisehinhhfrhgruggvrggurdhorhhg pdhrtghpthhtohepsghoqhhunhdrfhgvnhhgsehgmhgrihhlrdgtohhmpdhrtghpthhtoh epmhgrrhhkrdhruhhtlhgrnhgusegrrhhmrdgtohhmpdhrtghpthhtohepghgrrhihsehg rghrhihguhhordhnvght X-ME-Proxy: Feedback-ID: iad51458e:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 20 Jan 2026 06:52:13 -0500 (EST) From: Boqun Feng To: linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-fsdevel@vger.kernel.org, kasan-dev@googlegroups.com Cc: Will Deacon , Peter Zijlstra , Boqun Feng , Mark Rutland , Gary Guo , Miguel Ojeda , =?UTF-8?q?Bj=C3=B6rn=20Roy=20Baron?= , Benno Lossin , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich , Elle Rhumsaa , "Paul E. McKenney" , Marco Elver , FUJITA Tomonori Subject: [PATCH 0/2] Provide Rust atomic helpers over raw pointers Date: Tue, 20 Jan 2026 19:52:05 +0800 Message-ID: <20260120115207.55318-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 [1] indicates that there might be need for Rust to synchronize with C over atomic, currently the recommendation is using `Atomic::from_ptr().op()`, however, it's more convenient to have helper wrapper that directly perform operation over pointers. Hence add them for load()/store()/xchg()/cmpxgh(). While working on this, I also found an issue in `from_ptr()`, therefore fix it. [1]: https://lore.kernel.org/rust-for-linux/20251231-rwonce-v1-0-702a10b85278@google.com/ Regards, Boqun Boqun Feng (2): rust: sync: atomic: Remove bound `T: Sync` for `Atomci::from_ptr()` rust: sync: atomic: Add atomic operation helpers over raw pointers rust/kernel/sync/atomic.rs | 109 ++++++++++++++++++++++++++- rust/kernel/sync/atomic/predefine.rs | 46 +++++++++++ 2 files changed, 151 insertions(+), 4 deletions(-) -- 2.51.0