From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-43172.protonmail.ch (mail-43172.protonmail.ch [185.70.43.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F080330E82D for ; Fri, 1 May 2026 19:17:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.70.43.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777663046; cv=none; b=rN5MZovBtCL3Ch3XfGt63ZiY2mF36RLc66IjSTQLzMZdO7nQo2OHXCaN5PwIiA+TLoyNTNgEDM3/kVHZZU7PJLB8C78Xh+zglKCLJnkzmi5AUfd8Szq3d4CzzwC/S8O54cI5dl5UbjKbBONsl8IHMrxajBGVLezv0mVfxpE1UWo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777663046; c=relaxed/simple; bh=jdWXGJXsIRcKPhT+m0CDIajFNFIv1R3D1DTqS8xY6UQ=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=KmhfsEDuOyPyQ6OIqZ3cnCwZYdEW7LJ1AiQsQGtiLv29eR3X5wwb7FvhzKSfWl5f2V30MZo2Isj78efeL8ctNQnrhQczgaoUwCNG8pfqt/6vpVCMOxnjanja6OCwBRr7YkkHlofejApD/xFpwkr2iqC/EKzgYIeG7hm++8Ac6vc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=onurozkan.dev; spf=pass smtp.mailfrom=onurozkan.dev; dkim=pass (2048-bit key) header.d=onurozkan.dev header.i=@onurozkan.dev header.b=K+j4rjmx; arc=none smtp.client-ip=185.70.43.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=onurozkan.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=onurozkan.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=onurozkan.dev header.i=@onurozkan.dev header.b="K+j4rjmx" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=onurozkan.dev; s=protonmail; t=1777663032; x=1777922232; bh=SxTh38i9K+xyXn03fz+j8DdXJTzcEFv933v9THsiQOA=; h=From:To:Cc:Subject:Date:Message-ID:From:To:Cc:Date:Subject: Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=K+j4rjmxzcScOmZcPiClO3WLYNnS9cY3PkZWXStzBviujE9GGkazvBO3a4HzWgf3T 4igvyp9T09Ew06mIGdz6wUCQCssSoic9KmzRqfY/OxiKRz4rAnlaFPDgt3AbcR63AC qGpKfaFq9OYo5wCyVDb99hGV9zje1UbJWKONRw/zAKFf/+JWribFxvSkWmMft/1cT4 jWjB7PCgNW7+8ESdf3VskVbY6KBNJu0v8/oTMUThQ7ceDqzvZEeameBrf6ubqGlXxM +HbeZkjbxb8rxirNW+WKHNvZoqTZ1iB4+91rgFkKTSD+tCE4ealdyvYnyzT28g5KIa dQDtlWwigiuVg== X-Pm-Submission-Id: 4g6glR0cG0z2ScP4 From: =?UTF-8?q?Onur=20=C3=96zkan?= To: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org Cc: ojeda@kernel.org, boqun@kernel.org, gary@garyguo.net, bjorn3_gh@protonmail.com, lossin@kernel.org, a.hindborg@kernel.org, aliceryhl@google.com, tmgross@umich.edu, dakr@kernel.org, tamird@kernel.org, daniel.almeida@collabora.com, =?UTF-8?q?Onur=20=C3=96zkan?= Subject: [PATCH v2 0/1] rust: add Work::disable_sync Date: Fri, 1 May 2026 22:11:21 +0300 Message-ID: <20260501191122.64311-1-work@onurozkan.dev> X-Mailer: git-send-email 2.51.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The immediate motivation is the Tyr reset infrastructure [1] which needs to stop queued or running reset work during teardown before dropping the resources used by that work. The reset series started to require too many independent dependencies, so this is split out as a standalone change to keep the reset series focused on the reset logic and easier to review, rebase and land. [1]: https://lore.kernel.org/all/20260416171728.205141-1-work@onurozkan.dev Changes since v1: - Fixed a soundness issue where Work::disable_sync() could make a later Pin> enqueue fail and hit unreachable_unchecked(). - Removed the WorkItemPointer::cancel() helper and explicitly call drop() in disable_sync() after C has already canceled the work. v1: https://lore.kernel.org/all/20260428104459.174602-1-work@onurozkan.dev Onur Özkan (1): rust: add Work::disable_sync rust/kernel/workqueue.rs | 121 ++++++++++++++++++++++++++------------- 1 file changed, 81 insertions(+), 40 deletions(-) -- 2.51.2