From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020080.outbound.protection.outlook.com [52.101.196.80]) (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 63C211A9FB7; Tue, 28 Apr 2026 13:11:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.80 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381875; cv=fail; b=U3rAxt8dylj2wUE1Q8zluCM+uSsKy7nRbdE0/ABgVrPBYnXWNYg/FSAWWv3xtJGZB8wZcu1P3SBrT/HqUFzO2UxlBrKCKCW+yK4z3o4lfwvXwDigMBW8MxN3jVQMlbL7CuhT71JRJq3mNQj2cycA741/zr2opXvmGnbvb1JYX6w= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381875; c=relaxed/simple; bh=vE//mnTDd+4hPWmsp1fYd8wMFmEUgdEuYDG3PwBtyT8=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=hEJmskMcS/3ZhGFOz9ov5lQzmzXw5wwVX9w0xXGwFvzNMPRgb4JcvvutvA2SKHlT67YthELyzpaicSc1kKGaJiJhl7xpyxiRnnV1Vxe45cmNjl75BJl57syKCOxOjsCwDFE5nSaX/fAb0H3fvdX0bOnXGGHM1+b0N4o5e56OrUo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=AQkdhOyO; arc=fail smtp.client-ip=52.101.196.80 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="AQkdhOyO" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=EAxHpKnjPdPWjTfem2lBj7mupZ6ihOLDHUUKqa2BmzN322/Ghhk2j80tNQojSFQy9ebVa1MckEUh3aTSqlNQLXw8SgaE+xBBD6e2lUqzDhUZJg6bYjdBinhODk803Hmd/WexJaR0HvNhK/bVMziiLCbMvnB/5xPjFZ3zPPbEZYqJ9EwwligmEwfsw6o/j2DOzrjGbdRt6Mv+g5uHJqcnr0i3oUQSHabw2N/0sdxl3cOBWVPIK02zx34GPoNyPFMIpWjdxC12n7b7/MIXSA8Y+Zde3K2piHiJqiOEBm51umNFEWuWZERlthVpK1WrbKFOxL8aePuugWnvFJGsW+LrrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=HNRW7UbVIosfkOqO1SsejiTmwT5/RIn0KZSLbddB2iQ=; b=ekYQmFA3Juo3zRXtYcNms4mAtkjgiHkfD8rAjCJGcC7EZlptDhUTNEbG7vIyxU00Pz6A4DZ1hQmAOPvtTnO25twPL9hIRv27QBNypT77chxpw7W7O+L/2jnjAefxV2GqENK1QmHI4fW+mPrYGMvAeeVFCubL8x1KG2V7L92hjZMNivxLVNytGetR82fdOtuKwmAJfxgw4oLE/eb1JbhvvHCsj2DdDS5oixBnyAW89dt7UgK8zwpuFXP5V0mKqi4NZoDpSExokdY6ckFHPPvubI/PSQyShli5CS76zTxb/yvWIRsSGiH8YBeq2A7+GN99tkuch1gUnVhmc+VMh9JtcA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HNRW7UbVIosfkOqO1SsejiTmwT5/RIn0KZSLbddB2iQ=; b=AQkdhOyO47D9SR9k1KDsURN6c4nHWZIpBxhNix20/gLVRaIgQyiZ2ZlfnB5VeRhBEd723qsiY+Zj/qop8YKHnTnn7dksWilt8HaHG31Ly0ZeNrZjhlmfQe/BLtBfrvtJL1OVgcHJdDz15KLXcWJSg5ft839V9LrmoesmkJBWP2M= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by LO2P265MB5208.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:257::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:10 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:10 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:50 +0100 Subject: [PATCH 01/10] rust: pin-init: examples: mark as `#[inline]` all `From::from()`s for `Error` Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-1-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Alistair Francis X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=1387; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=B7CgVNxqkBchDbE2nGdqZ0FSZ6ADUuua2pfRPNRvztw=; b=7ykDAbWjye1mQXg4kzvwCvGiX7qSDPs+yf35DkkQBw7GayFqMzEOm3RazUJc2FyicgCeAmcyA m6ET4e5EkUGCrp36GAga7/LDJCJhc+iL2NpC3CYffCjCkDIplqlAEYS X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|LO2P265MB5208:EE_ X-MS-Office365-Filtering-Correlation-Id: 358de151-0a29-4039-47e9-08dea5279dd3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|7416014|10070799003|376014|1800799024|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: VoWi9g7lCCaZiKE2Ebcpnxn1QtHvoO2XkMl7lYLmBqVA8xrxUwG3/tak5GAxIaozr8A/rppvknwoYZEXZDFKyGVNHPPhwXUTfHnh055uC7AG9RH6jYXm0QNaAIVlwzdYVkYSvt/j+YlygFXWBqSe4IGubLDB9vY7DTP/lBrSBClRB6HCNQXDZg4YAoDnwh2as8LhW76Wt6Wq1A6e31Durdeooz/zU6jFHWNO+NfiRBVwxdKjJo3TZYfd7mXp4+EvDalkiHS748EoCONQ6a6mzuMxjgCETzXFUIMuE8c0LJNO0oU/TofExuvfl2Ki53LuR3onX0ncqrmWaeCwO6FhUvcFEY+2QFNhc5WYq0nCHZ0On26NpdFOTzUB+N1B7Jof9o1/9qhuJOt/PjaycqUAW5IAQFaTEcYR38Ja6vL5jJdICFID+yEyYaNGvU9ZcMaKju7EsCqcEVMop8v4c4kOu+ck1z3Okuchd6Pv5lGNGFvhYXax11IdwN6t1e690bfCAuKAgdb1pweqdpE/JewwhU6MZ90K4O56sYu8nb/yY2ye6c7J0sLxEU+9gDoB9pNhxPPdUaJrAhXN/ZBPRnCefIjwAyLunBkWlbm4oKSC2R9zzfx/a5jd5vY7RwaX4hWCofkia60LPC1zdqWmSYNDzycIIungSHRKbznsec6xmOjWjt1GLTTCkBojH6wnpmwyOyRBCpVU5d7qvb7AdtS01v1ggBoGjCj1LTeIYIq7FOY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(7416014)(10070799003)(376014)(1800799024)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?T3paS1BJeVA0aExNT1RRc1ZhOVFEdkVGdEdvdzdZd2ZTOVZZMC9QbXQ4UXFG?= =?utf-8?B?VEZsRDFJaUtuWnFmK2ZxdUdvQUpuOUczRGJNV3ZBSENISzdRbGVraldkOWNw?= =?utf-8?B?V1pZNEpPZGlrMGxEeWhYTlY1VWdsS1dGdE15MEpuSVN6c0pDSGJjMzgyR1Jj?= =?utf-8?B?c2FjUitXbzA1K1R1Mk5MODhEL0ZFajJHZUtEVnh0Vy9kRUp3SUxoeXYvWWVi?= =?utf-8?B?TW1zK250R3hkZE1lV2tRamFzMVc4SHd3RERDNXNtRklvSlA3QkszMm02c05E?= =?utf-8?B?bytIMkJWdFZ4QlBxUGFWK25lV3hyTUxkbTB0M0l3MWptdFF3WXdDMDFDeW50?= =?utf-8?B?eHFNeUoxd3dVQ2pLSS9zM0NlS3hITnJ0aU9oUEFjUjZRWGtDMjNySXFLTVZH?= =?utf-8?B?SmpTTUJacmpRWnVVMUVjdS83KzMza09rTHdTTDY2Ym80bytFc3RDaThMQWZs?= =?utf-8?B?c1diSWtjM1JPQzNRMTJoY09NWk9Ea3B1RlZUOGxSTFg2N1gwekhVR3VUYmds?= =?utf-8?B?UEdnRUJvQTVkT1FLYThHdWpCRml2bGxlbE92aDJJMCtjNWVUQndrakMyM1dj?= =?utf-8?B?WTYwZ3lCQ2dpRm5BQTVUa1k2ZlJpMW5LNjVNRkFxaTd1d2dPQTRDRkNnTS83?= =?utf-8?B?WnJEU0pXV25SbG9IaTVHaFloTEZNSGQvTFE2Q2pMK1BWSXpzOTFDT2ZpcXhK?= =?utf-8?B?UWJwYjNya1g2WnFCS0dOYjJGN0lvMjdvVXlwbUt6aFh4OE5KNWJZb3dpTmJB?= =?utf-8?B?UXhtWjc1blU5c0h4c1dtdlBQbVM3TzJkRm5leXY5d2lPWFRVUXIwMjJFQnYv?= =?utf-8?B?Ky9aY216b1dKQlpNUFlFaGRCQkdmMEk0cUpBYVVpdkloTTBQUk1tMk12WWFi?= =?utf-8?B?SnNyNEtSaDlHaW5vTW1iajdpWUhXczFnN2FITkVHR0d0YUt3T1ZpWGpZQjkr?= =?utf-8?B?cTNqUFRJNFltcU5UR0tnVGRnQUJ3eFZCZzNkckdLbzQxOGJNd1dlV2oxM3Y4?= =?utf-8?B?K1FhOW9tY3BkN2plZXgrK3VOL2xEUnZNU1lRV1RpYXlEUGpqV3lmOFVGOUp2?= =?utf-8?B?aE4wMVpNRXZhMjN6QjNvUll4Y1BBUjlGaWtVZExuRkNGWmloMkZTMk14WkY5?= =?utf-8?B?R0EwQ2RGV3pVazBibTNGRUFpdzdYakZmTjhzcWhoaTNLK1lyQm1aWWJlR2VV?= =?utf-8?B?UEo0UGFFQWRBYVpFWmsrUDJwMnVXU0U4bHE1NHpUditnTllWWWVqTFhyb2dY?= =?utf-8?B?d0JaSjVPTUM5WUVtcDN0MjVIbHQvakcvRDAzWjJhSzkxbzl1QWc5L2wwUEcw?= =?utf-8?B?Q1JOQVRFeUtZbWlpczhWSEV2WThaMVFKRVlwcndxTlU3LzlLMHY4akYzRktv?= =?utf-8?B?aDhsUDM5U0RvVS9aNXVBTUZiV3FwVVgwQzdVdU41L3Vhdm9RaGNJdGNoYTQ2?= =?utf-8?B?TVRjdTVkYXRGdVNyaG83Mm9VSXdzeVJSWmxvUEZmZE4zb09BY2NBQWE5dFk0?= =?utf-8?B?NDJNcWplVlRpMmVic3QvNEhPSXZNU1hidXRRcTVMSkc5anROUHpsYzFCTG9F?= =?utf-8?B?Q1lFeUxEL01VNkg0YmpXcmZYSS92bUhONzY0NjNLOUdTTUJaUldYUUZWejgx?= =?utf-8?B?TXR1VWR1ZUhkN1IxcWVCNEp6OGxHeDRXeGRVbjd6aWJ0UlhzVlpWdCtmZ2Uz?= =?utf-8?B?Z0xURUFWWVJUZTFmV2VvUGRGRzk2bDdwNUZQb2lJNy9SRHMzVTJiNVpQNSsr?= =?utf-8?B?b29HbkZrcW9mbnFNeXB4Mjk0a2N0WDJ3eUczMWkzM0s5a3J3TTcvVTlaQXA1?= =?utf-8?B?bzRkdzEyZkFEenhoNDR2dUl5eG1Eb0pHR2pKZFB3azN3RUc2SVAvRTJwSzc1?= =?utf-8?B?VDhObVI2Q2R3ZXVVeFBDYlplWE9PbnNiQmpvSXkxMUlYcHlxVTcxRzB5bndk?= =?utf-8?B?TjlKVjJhaFVwc0hSWnBrcEpBNk0xKzYyeWRST1grRzdFbldTNXMvSDZlU1Fu?= =?utf-8?B?WkZrUXo2L25wUE9zYUFTaUpidjhpcVlQR1VaZ0xScjRuNWFGQituS010OUVY?= =?utf-8?B?cnlOK0RRUEZlMUxhK3Uvdi82b0dtSHBoWEhLZkNoeXFwWE5LWWdmUGpldjBX?= =?utf-8?B?ZG9yQXdPUkVtUm8wcVQvUGdJRWdiSS82cEgwM0ZHRXZKa21NV2hCVU50Mll0?= =?utf-8?B?bE44aGhBNno0K1ZFN3pvT1RyWE9yVTBzMXpTQWwwNzhZcm1jeHNUTGdMZ2xz?= =?utf-8?B?L0xNUk9FSXBlaDk4YjRlalNBSElPZjN0T2lIdTRnUHIrazIxMHNOSVNvT096?= =?utf-8?B?WVkyWFNmaCtNRFRpV2tHUzRTc3RQTm54dFpZR1ovTW9VM2V6dkdadz09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 358de151-0a29-4039-47e9-08dea5279dd3 X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:10.4043 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HyiUtvI63K5UrPdagF6QTeA0S9JBi0n2xBM9HCNDqJlwm/sNZDts5qA4kKfgdInRA2XLG/cSuPcsPrUKf8z23Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LO2P265MB5208 From: Alistair Francis There was a recent request in kernel [1] to mark as `#[inline]` the simple `From::from()` functions implemented for `Error`. Thus mark all of the existing impl From<...> for Error { fn from(err: ...) -> Self { ... } } functions as `#[inline]`. While in pin-init crate the relevant code is just examples, it nevertheless does not hurt to use good practice for them. Suggested-by: Gary Guo Link: https://lore.kernel.org/all/8403c8b7a832b5274743816eb77abfa4@garyguo.= net/ [1] Signed-off-by: Alistair Francis Reviewed-by: Gary Guo [ Reworded commit message - Gary ] Signed-off-by: Gary Guo --- rust/pin-init/examples/error.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rust/pin-init/examples/error.rs b/rust/pin-init/examples/error= .rs index 8f4e135eb8ba..96f095398e8d 100644 --- a/rust/pin-init/examples/error.rs +++ b/rust/pin-init/examples/error.rs @@ -11,6 +11,7 @@ pub struct Error; =20 impl From for Error { + #[inline] fn from(e: Infallible) -> Self { match e {} } @@ -18,6 +19,7 @@ fn from(e: Infallible) -> Self { =20 #[cfg(feature =3D "alloc")] impl From for Error { + #[inline] fn from(_: AllocError) -> Self { Self } --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from CWXP265CU008.outbound.protection.outlook.com (mail-ukwestazon11020105.outbound.protection.outlook.com [52.101.195.105]) (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 9715F451069; Tue, 28 Apr 2026 13:11:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.195.105 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381883; cv=fail; b=m1UDaPmO4NZJ2oJdgVRa/RIMiqzhb4EXuBjXJhgP6Df/RY3GPc/wczj/ffXj31ZNmwiGR5056tYoaHsxFJFF3+J15sIk9yV+6wlCdFs63RcObVCIZs4cu9NkNYBNIMmBYLznoEjP45nus8yrpqhgJ5TQKe2NJL3GueIxBlQRJOE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381883; c=relaxed/simple; bh=2zD7rENeWYECm/v0h7v8fvXpUA6s6H3xWjO1IwMe/N0=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=ZBuf+1XYQkIEGL/a1qZswRXHeFmceXsI0KTYMsUFl76xmfQgwLSfgzuQka8QFIH3NYJ5HcyL++pK6ZndI64Hf1nuJXbQu8HQnDpwzwr1drYdCiQqY18JNl4neq4SMMt37/vngyKIg2fQVIp/LjOoN3swwBJTFI+gL8/XJJJkPOs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=QSvoRgwA; arc=fail smtp.client-ip=52.101.195.105 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="QSvoRgwA" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hgLFeZ9wVlPnyQ4NToDXDfWu//9fdldheIj10rURUlMk/ChGnmlyeraw0Sidd7hbE90GrY4VS+d0pPGBzzS6YNItehG+cfhBS1QFHfrAPXsVysxiNkf+jW7eMZnJbTkiGbbB1uGscJ+2m45AvNUv+agLK1jj3jlSoTOEJVGc95XBEs6dHQEiK5WQTLm65y7FZ7hOksQ4dTU45MafNPKtTAyqXEGoKjcWF9AE5tmRWe6iE4gk11oy2sUJPXnnkUlV+5Y2vinyKl2wHMpV11jmS+B6VqY9TijrAyUCdFX7jzcXSI/btYjkdLxRvbcswuAm04lJyqI1eJt4K2PBXc6Ouw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=b3mjyX2YWd+oF9rfmuRPY5bic8lJ8hWEd+02s0UHsKw=; b=Pys8TfHxaZlqZ6YEXoOTXdKv0aemdpiS7N+tHqlzJnv3sAW3tWlTDtoh0k0mISmsH8IFLNXoDs5bYvCr3QKyP1hcxDaMx+ul9z1rUlk+T7NcZksolGqb9wHgTs56lUbuWyOk941c9vtl8TYaMAtTGR4Q8volnNy9ErrNZZa0qELKS38L19E+I2GJd6O4VdeJ805YmTQNKadS7W9xoaDZsle9hDHFJ7TdQKhjF/efgAdPX7kNRiQMmx4Q/B0pBB2kwrq7i4vb9JaRvRBWoME52Fo7jeNJ2HUcw1/+WkiiYY3S2aYI5EtmAf7VRcJ4bGITwtS+3hU34ExG2xT+tIUenA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=b3mjyX2YWd+oF9rfmuRPY5bic8lJ8hWEd+02s0UHsKw=; b=QSvoRgwAiZ7+fJV0kKij8gWHyFMMIdE5yuffhe4RDmJLWyv001malkLrRJgXudR2RGj6i/YigouSWBR2NSdb/JACpfmJ7dc/Ejzru1YfYYK3f+ndy9EUPFj6TponEmIxv+To5BnJ3ur9lYE4Ajm9QO2i7JtwC3Rbm9I0IXd2F6I= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:10 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:10 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:51 +0100 Subject: [PATCH 02/10] rust: pin-init: bump minimum Rust version to 1.82 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-2-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=4783; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=2zD7rENeWYECm/v0h7v8fvXpUA6s6H3xWjO1IwMe/N0=; b=J+cmGwOhMeQku6Kq5jI5H9dO7pFsBHXSuAk+zNAC5eYuPumUs9A11X6tEFzf/Y0j7P3QR32Wz AkuAdyXIL0UDK4JpDfNtBZewJyT/3DvDhc81fyduFUKJwHLTEHlTN14 X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 2378ed0e-0470-4b01-9004-08dea5279e08 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: MvSks9W+miEQJnyPopc0Q/bp9BeKkhkSQyfZlxTllTYxz7E28nms8XouDRTkS+IEJUgPFCqoqwi6HBP11jqUUoqDd+RWC39uCQ63GKkMr/PiPIN7nekm/RPyB9KxqUAuSAocUAQBFwt1U0vN2Plh+DMuBaqVMdBQTDpFc3bqDWFCih1xFj4v88yFo+c+IukoxK5guEivVBSoUQsvXmbrSmMsqtQLsxSWDQtiqeNrG0Xb3lhYoQ6oIN37gioDMJbyzEfsIi9xYIKLWC9pRmu6OWqNBo54lnDaBFgMUAKXiT6Z6kP+J7VsbtMJQLVe1N6+pCqywZV6G44Wo6NqfjxoELFnC+j7RGwkKui3tTOcAWU2BTDpJ3H2ov7gv/1o3aBDuK9ilB7y727gsr9KsMm9TwF6hwJnFAHGyDsu3urn4TQIz64RQhXGfxdDTOZ3u+1cMPDVLQ+AD6UiTBcVwFDMGDmjlUWnTB8y8hYZ10Q3dANfvjVukkkHrn7T9BmytPsBe02Q9hg9vCsogKSRzEHUfmExX0n5CM2mQdpBeYp9vFuSCG8PXKt4IDJ2TNxC/iz+CoGWglQXIE5Iw4c6Lv5ZiV9M9cBGVOUhcXO3OCfS6MGGhACHFSBVrpCBk5efH4WbnYnmnBsZBAuHhC0t0jkgdOVhyagBhg2jEX1J2EdSex8= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c2tFL0FKWU11WXlXS2xHV2VsSFRHdWRCYnBacnhQZ1BoL1ptcVR3NGV3THd5?= =?utf-8?B?c2ZoRUhjaXRuekUxSGVLdkVtNWZZT3JvTndJaGdnYXhYb0IrWWxraDlyNSs2?= =?utf-8?B?MG5QL0loQVFWVmh6ZmduUndoSnZ2aU9HRUVDT2NVdW5OTFJEeDFaUzRGN2E3?= =?utf-8?B?M2ViK3BWa3hkRXFSRWRPbDhHRCtLanNFbDJmZjlCMzFHR3ppZUVqaWpiWitO?= =?utf-8?B?aU5MQm11aWYwcWFGd0RMMGlxbTFLRFdyUFpJL1JzNHd2UkYwVFpYODA1UTho?= =?utf-8?B?dXFQbUp4UHU5a0JvSXJMc0owWXRiV2FjWnpkcE9ZNTBuU1BUQmJSV3FDU1po?= =?utf-8?B?YWdBOTdTTGhqU0M1MXF0WXJYL3pvVDh6UDF3YlNiSW5aYm0wclFVZ2FmTXRV?= =?utf-8?B?MHpMWXFNS0VtK2VFcUZNVmdicG4xaTF2aVZ4VVVEYmRpZURJekw3Z1hjMkZj?= =?utf-8?B?bWR5dDVlZWh3cTQrMUF6UFJwaGlZZ2VhL1hRZXZPVjFiOE9IVTRseVFMN0Zj?= =?utf-8?B?UDlHSlptYzZaRmQvaVhhYk9aeUc5MDk1b0Uwc3FLN2U2Q0ViMGNYZ1hyRHB6?= =?utf-8?B?N2g3Ny9xZHBYQjFHcUJlVnBTMS9xa2NuV3B0OVM4azdreDJETGM0UnNJYjZk?= =?utf-8?B?QUVqQnE5YUcxemUxNkxzbHB2R21uYzZycXo3ekFVMWdmSi9rRkMzcktsWmJ2?= =?utf-8?B?bWNLVEluTE5EdEZRZTBuYmhjUllneVBzV2JPYkk1OXJqUE93amxSeHdZbUs4?= =?utf-8?B?ZktqZEFRMkJ4QVdTTlJoZi9DUXhIT25ZUm9aMjBIbE5vUUVvNC9sK0JRWnZD?= =?utf-8?B?NG5ra29RQklTZDlFTmJxbVZWVzRrYjVGNWZndUk5dTBtc3l3dEVvNnJVeXFh?= =?utf-8?B?bnh5eXZjLyszM3orU2FXZk5jL2VVMWkvYURad3UwUUkyTTkzRW8xZzRYMldj?= =?utf-8?B?WFVLTm1yd2RQOVBhQzY5QnFIS0t6QlhzM0hQdlhlVkJtZHRjVHE2V2lVdnZt?= =?utf-8?B?YzZQbGlYa2JoOTVqcVlZOTVMcFZrbDNYS0VJUnV4K21VUmQwMGNiaXpiQjM3?= =?utf-8?B?cUY2RDgxZ2FUQXluM0FyaHRvajI1bWNPb3orb21UekFsT0ZtT3VkOHFYMHFV?= =?utf-8?B?YXR5SFRyejRRTDl3MkZ3RkdNb2NjNXdzeGxnQU9NZkk1ZUp0bFQ2M0dmQ0w3?= =?utf-8?B?aklBVGhrMW0zQlR1T0swTENpQWp0WUI2VHd1OE1jcnNaNGRVWnpkZzZhWjNZ?= =?utf-8?B?SVZ1MFhtSHFhb0hNS1o1Um03YW9Fa2VlUjdpZTRObUU2VDhIclhRcEhQcE8w?= =?utf-8?B?ZVowWW0wM3J3TndOTlpBUVhmMUQxSlI3Yi96QlBNVWU0L0tabVVLT01id0pQ?= =?utf-8?B?RnU5MmUza1krQVdGRm9UcVlqU3cxM1FKYmRNWCswTHVTeCs1MUsrdzJGVEF6?= =?utf-8?B?S2poQkU0ODN4T0t0OFdJcEFJeklYVkpaQlBISG4xN3FTa2pHYXU5TDJ3T3Er?= =?utf-8?B?dE53b3dyZjNkNkc5K3NDVERvZHErSkRXaUJoM1Ayd0FMODh2VzAvYmtONUFY?= =?utf-8?B?Mk5hR0RyS1ZPWXNleXFXTjRXNmhYKzVjdmE4VTZ5bkxmaUhBUU95KzBlSzEw?= =?utf-8?B?bEY4SDhhdGJZRmlkWXpRWW0rSWtmc1EvYklrZStRZEd6SHZzTERHa0pMSHhY?= =?utf-8?B?STNUZ0NmbG9HM0RpMmRKcGRFOEI1VVhvdC9ma0Y2OUdBajgwQXFwZ2hKYkgv?= =?utf-8?B?eWJXQjFjK3lqOHUvOFM1dWZQNDI3K21JWTB0SFh1ZFVqRkwzV3ROQ2FkeXpV?= =?utf-8?B?Vlk1TzRNM2dxSWVib1JqbGZNNlI4NnRLTXVrNzZBY1dSYi94NGR2MHdaYW13?= =?utf-8?B?Z1RrMStweDYxSmFHWGpYcVhUWFJsZFcvZDg3dHZPR0FVWUdzR2V2dDhHQkdN?= =?utf-8?B?QVozVXlCUXJvKzlOLy9oV2YxRG5aWWgxNmxOTWtuSUNKTkRnV1NBQ0dTdWFF?= =?utf-8?B?eTJkTEtRM0RnVG5XVzlBN05hSU9UZk05UXdoWFUrUXFZZTZlU2IvWEQvUWVh?= =?utf-8?B?YWFZN3Y5NlBIN1VGdE9sNFBtVUFLWUxGN1ZGUHRQeUdTdWJIc1ZsQW1YTVNm?= =?utf-8?B?UXZlMlhwekRPR2lvMStQaXNiTnZUZms5Y0paVjlIbURySW5vUE9rN0NteEhk?= =?utf-8?B?U2RrbnJFQU8vRTNxckUvcHl0UVBsVml1K3pjd1FuQXBaSTVEOElRcm1GSU4z?= =?utf-8?B?SzFXWG9XY0RoSzhLUUk1VmRoUnM2R3d1a1FiaXRNb3JmdFQ4bHhWVXR3bnM2?= =?utf-8?B?eTZsQm9sMVp5WFBXbTEzZlR5MGdVK3M3aWFsOUlsR2h5c1FLSTdZZz09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 2378ed0e-0470-4b01-9004-08dea5279e08 X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:10.7440 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BEjeHhD8ckDafWLs126boNYM5BMwX0CS+NIlCLrEML451JUTJClTNxYeidy832MzmHxtmgumOaMdNuuRjryKaw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 Following the kernel minimum version bump in commit f32fb9c58a5b ("rust: bump Rust minimum supported version to 1.85.0 (Debian Trixie)"), bump pin-init's minimum Rust version to 1.82. This removes the `lint_reasons` feature which is stabilized in 1.81 and the `raw_ref_ops` and `new_uninit` features which are stabilized in 1.82. Given we do not use any features that are stabilized in 1.82..=3D1.85 range, and pin-init crate is useful for other projects which may have their own MSRV requirements, the minimum version is not straightly bumped to 1.85. Reviewed-by: Benno Lossin Signed-off-by: Gary Guo --- rust/pin-init/examples/big_struct_in_place.rs | 3 --- rust/pin-init/examples/linked_list.rs | 2 -- rust/pin-init/examples/mutex.rs | 2 -- rust/pin-init/examples/pthread_mutex.rs | 2 -- rust/pin-init/examples/static_init.rs | 2 -- rust/pin-init/internal/src/lib.rs | 1 - rust/pin-init/src/lib.rs | 6 ------ 7 files changed, 18 deletions(-) diff --git a/rust/pin-init/examples/big_struct_in_place.rs b/rust/pin-init/= examples/big_struct_in_place.rs index 80f89b5f8fd6..c05139927486 100644 --- a/rust/pin-init/examples/big_struct_in_place.rs +++ b/rust/pin-init/examples/big_struct_in_place.rs @@ -1,8 +1,5 @@ // SPDX-License-Identifier: Apache-2.0 OR MIT =20 -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(raw_ref_op))] - use pin_init::*; =20 // Struct with size over 1GiB diff --git a/rust/pin-init/examples/linked_list.rs b/rust/pin-init/examples= /linked_list.rs index 119169e4dc41..424585fe226d 100644 --- a/rust/pin-init/examples/linked_list.rs +++ b/rust/pin-init/examples/linked_list.rs @@ -2,8 +2,6 @@ =20 #![allow(clippy::undocumented_unsafe_blocks)] #![cfg_attr(feature =3D "alloc", feature(allocator_api))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(raw_ref_op))] =20 use core::{ cell::Cell, diff --git a/rust/pin-init/examples/mutex.rs b/rust/pin-init/examples/mutex= .rs index d53671f0edb8..8ed2d3219eb1 100644 --- a/rust/pin-init/examples/mutex.rs +++ b/rust/pin-init/examples/mutex.rs @@ -2,8 +2,6 @@ =20 #![allow(clippy::undocumented_unsafe_blocks)] #![cfg_attr(feature =3D "alloc", feature(allocator_api))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(raw_ref_op))] #![allow(clippy::missing_safety_doc)] =20 use core::{ diff --git a/rust/pin-init/examples/pthread_mutex.rs b/rust/pin-init/exampl= es/pthread_mutex.rs index f3b5cc9b7134..4a66316471af 100644 --- a/rust/pin-init/examples/pthread_mutex.rs +++ b/rust/pin-init/examples/pthread_mutex.rs @@ -3,8 +3,6 @@ // inspired by #![allow(clippy::undocumented_unsafe_blocks)] #![cfg_attr(feature =3D "alloc", feature(allocator_api))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(raw_ref_op))] =20 #[cfg(not(windows))] mod pthread_mtx { diff --git a/rust/pin-init/examples/static_init.rs b/rust/pin-init/examples= /static_init.rs index f7e53d1a5ae6..906b96c5d4b9 100644 --- a/rust/pin-init/examples/static_init.rs +++ b/rust/pin-init/examples/static_init.rs @@ -2,8 +2,6 @@ =20 #![allow(clippy::undocumented_unsafe_blocks)] #![cfg_attr(feature =3D "alloc", feature(allocator_api))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(raw_ref_op))] #![allow(unused_imports)] =20 use core::{ diff --git a/rust/pin-init/internal/src/lib.rs b/rust/pin-init/internal/src= /lib.rs index b08dfe003031..60d5093f3128 100644 --- a/rust/pin-init/internal/src/lib.rs +++ b/rust/pin-init/internal/src/lib.rs @@ -6,7 +6,6 @@ =20 //! `pin-init` proc macros. =20 -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] // Documentation is done in the pin-init crate instead. #![allow(missing_docs)] =20 diff --git a/rust/pin-init/src/lib.rs b/rust/pin-init/src/lib.rs index 64eec095c859..4f50994bd268 100644 --- a/rust/pin-init/src/lib.rs +++ b/rust/pin-init/src/lib.rs @@ -263,12 +263,6 @@ //! [`impl Init`]: crate::Init //! [Rust-for-Linux]: https://rust-for-linux.com/ =20 -#![cfg_attr(USE_RUSTC_FEATURES, feature(lint_reasons))] -#![cfg_attr(USE_RUSTC_FEATURES, feature(raw_ref_op))] -#![cfg_attr( - all(any(feature =3D "alloc", feature =3D "std"), USE_RUSTC_FEATURES), - feature(new_uninit) -)] #![forbid(missing_docs, unsafe_op_in_unsafe_fn)] #![cfg_attr(not(feature =3D "std"), no_std)] #![cfg_attr(feature =3D "alloc", feature(allocator_api))] --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020087.outbound.protection.outlook.com [52.101.196.87]) (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 AD27844D021; Tue, 28 Apr 2026 13:11:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381878; cv=fail; b=Gv11eVOVUHkYtynLhpZGdOaF3+t4eKWQIPzZ8lZPQ+Y5B5dwczcqn/NRrmTb22Lt98VfXSZR2Ua5EP9lbwys2UCWaRaAcvjlBWh+BNxf4XnKYeh5fIa7G9k5U1fulyk9soi09TrcXBG/RfRa/SwkvINpib+D5Nf/xr727Ol7UdM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381878; c=relaxed/simple; bh=X7s5IGZwVPubS9XdPvDS01po0y/JfhuQn7Vwn/LzFaA=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=Yk/En21dHyx7WS1LyQkg5oK4EGfzjOW8Akg+T1s/Htbd2A8scO05EFgSMqjL3U3egB5KIlvnL/4gPANWhBkj1RwgmYM3lNijbG30SM08BVD9DHnZP89S8tpmG2vAm9VvG9Si5TtEhs9J+FcPRSzUHPYmxc0Gn26xUJqS0/McEnM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=n1L9i1PJ; arc=fail smtp.client-ip=52.101.196.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="n1L9i1PJ" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=N+KOAWSUUZ5894gepTdL55FM3DwE8hjpfuGLu2gGXSvwXg2Q9yczxvTSxRB/WINlqq1ngepzw6B3qwlGPauEJ2Fh/yaeragvKu9hjwPBcEJZVzDEa8M+Rlq8htYbhUYWUmsJcyT1H38fmtytv4W56V9DCxQCZNqLDKsh/kilDoFIGsLN/9x+ERVtBlgizH6Zpk283I7idu9SiQFxFRVl3jIiMk5XFuq0fLpLp+6xIXBH7HFHrGYQSQSzkZuv+4aI1cjXnnRnJhtrC0ySPeID1eP5LV2LGsMw7CM9+sY3Qi9nxXzgnSqlbfVhsVUwq5d9epwHuKEy/wfTPbE51ZKE3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=MUBc7rG8NDQxBp9o5dYWsOrkII6D852QEAURiyJxBds=; b=r/aTUjJnaFHx0tBS3jJrOswUKs03n7q7R8vdM2BVx4PMUKIV9Ou511oAwpoCSnEVRdURMT6Iv0GW4RQtWIYRnJIAujdIGyjR6zR2VBbu2CBCuBndTCLKdQc8eacLLf2GweMAsSjsEn67Meb/QlX3raIeZo4tHoQEBo2jRgTd5iMHgJ3BB5vWiwIcj+b+Yu59BAaXq7tVDdt3I4RcQPjLMT7FuAt6LR7s/lHiq+99CvO94NnohChQccjx5InOHwPipAb3JKJIGgvNmF/XjQ0IOzrMByqba4cxxm9dF+y/f37exxPX9we9Wy954tPk2VQFofklBooc3mS6AtITnyK7rQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MUBc7rG8NDQxBp9o5dYWsOrkII6D852QEAURiyJxBds=; b=n1L9i1PJ3mac8bbYA876tDWqgnhUckUrWjxhkJUOI7T4tF2AsQc3EsvHDHJM2aHTMdR2QzVPSE4gVQcWu/80xuYe6OkWYyTNUm+Wbq+YzXRb36ijaSvck3MVw9JGfPml9ogLzRguvItlBBbS/FNeBlWN4KxB3uxB7s4nMEzxTTU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:11 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:11 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:52 +0100 Subject: [PATCH 03/10] rust: pin-init: cleanup `Zeroable` and `ZeroableOptions` Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-3-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Mohamad Alsadhan X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=4219; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=zMvjejozGCqR15/HWhaVUL+67lojabvLLHBJEUmA99g=; b=DvsSN/pDOV3bYF+TJKBKdVDozrdWdK/iL4mGheSW8QnzAMN108+r6b15UyAC2plToFyyrmzqr GvUpOBBRjmVByp25Gw220rAisBebv8YJupBtcwqEKyoQ978BiaUBoQi X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 90036bb3-1e13-4332-6a6e-08dea5279e3b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|13003099007|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: NlNQfEEyKDdN0JTgOZzYJTwB36l9oRqrk8s7pM8OxBbcizx5BOLtjJuYoZWKwgVgtEXttR5yUwxJoxi4mjmaHpjDvedNWbthSZrenWTkP+78X87L4taN4o3eZgDHNOK73NmYhCefGoORiLTtvfEM2yP56avtWYPlMLuERIDPNCVo+ANtjSZZJ5FNlyL5/6l4EM6de8VbYm3X0MdbEPt4hkC1t7ewIM08Jo5pcZpYJOuHdX4G41N4QQkaPWCmfGK/oAo3h59QX+VEGDdapbrVFeRRrCwzM7Kj5X/wWYIh8DGnXdJoXvOlOEvDxgG1DZlxysk+L3YDnWqPbPqP6OC+zyniBweiOHzxJvVvBIPeVUC8vRf5232rqDxZJT8bsy5Y53VFpMeLWLjMRQylRPwP8IT9PK7hEODjlOAr4pfi5m6LUYIm9c48p9Cw1+8kIQ65dr+MK4GtDmfQYqrWKJx2McaE+FMBS1EGOHI040a8vB4hdhqJ0xJv6hXCVA8OAQ6FjZQ1o86iDcPHe+QW3sw74lrNwjwH7/UR19AFGz1FV13vb9fK3WSsRUkoivSpGyzRem+x/Y27DgJzzLqjwASBGRXH5uHHUXoiaFYd27V9mszAXKH0/MgDoRZcR0ijq07A3svfXgFGVqiJCV8P+h7O+4/oXsQYjk6LumyArpZW7UjXtv7Fmkratj36EpFiKllc X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(13003099007)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U0p0YUR3K3ZycDFhYmhWWWZVU0FLRDduL3Ftcm91UCtXWFF2dUFwWFN5QkU1?= =?utf-8?B?RkdnTWNPQWFvekdYYlJIK0VhOGhYWXR2bzA3S3B3d2tWQjF5YXdUVWxucmxo?= =?utf-8?B?L3pGeWJNM25naUgvQ25mVFUzV0ZqbU96aXBmVjV0eTBlWk13aUxJWnIvRGhk?= =?utf-8?B?RHF2Ri9KeG53ejF6cWVuTVdVakMzenJnTkZJWnRFZUcvbC9UQUJDYzJnU1dr?= =?utf-8?B?cmNOZnBNbXBvTk1mMHdjWWNKR2dZTWhLa1FpM0NCMENSUnRvdlFRbUNDeW5U?= =?utf-8?B?d05yeG1zdi9HWmx1dStNcHZaVWY5ZzZUOVFraHo3M2poMUx2R0FobktDeEJM?= =?utf-8?B?dFpRdit5dnpWNWMvZ1IxeGFuMEM3UjE0Yko5WVZtbjVTL1NPMkptNW91ZmFH?= =?utf-8?B?QWpPVkR0VzV2QjY5WldBcTNYWUtFYUZhSkEvNEFmbW96TmhJVzJYa1VmczVt?= =?utf-8?B?K0RlUUdsZm56dEZKNnBua2dxMitlYmFVU3U4UDh6dTk5UVdFZFhuamJFY3h1?= =?utf-8?B?M3gxM0FabzZCc3pTaHNsTG9oQll4REJrNko0Vmd4cjNGQXBqRDhuREl6cVFV?= =?utf-8?B?ZitGck54ajh3NGppRm5VVi8xYllJN0dWMUNLQk9Da0RzUlFhTXJwV0xGcFFj?= =?utf-8?B?Wkt0NWpCQklDcHZoYUNxRm9ubkU1ZDBUREo1ejJUWnpRYlhobGljR09FOXcr?= =?utf-8?B?bzBXU3JuUCtLckJkM0grNnQzOWhTMTJXaU9HMFc4R1lGRGNhd0E3SjdKRmdo?= =?utf-8?B?K2hUeWZxTHVUbm9MeUFnaHRUMUhOTWUzSGY5VktDc0tDempJUWtTRkFsSWFi?= =?utf-8?B?TkpPaHIzVHA4dkQreHZlbXVjZlhHZGZZUDg0QU81ZXYyWDFqL2Ewd3F4ZzlW?= =?utf-8?B?R2l0NE1mclB0SEgzbk9VMUc1cWticVhHRXdqVXhqWC82Ry9rcHV3V3ZBcTlY?= =?utf-8?B?UjJERmJBbWZKOUYyK2JTcDVjUlNzT3V4cGNVZnFhaDJsVUpKRTRUS0tWYmJT?= =?utf-8?B?R2VPcStldDhBMEF2cll5c3FMK1VYaXhGK3VaUldpSHZKdll4eGY4QkVDRDZ4?= =?utf-8?B?d1BRM3ZmSDdpYmdmT052cG92TjdJK1R3Q2ZtOHExRDlaZGFKbWZZd3dXeFJX?= =?utf-8?B?VXRWbGFrY1JOeWhoa0ZlYW5LbjRWdXRBQ0Iyb0k2Q3BOd0YyUXFjWjlhb3Ir?= =?utf-8?B?aGY5ckgyYTQydzkyaWhIN3FCZ3dZbW1kRnFhNHd2ckZZMzJ4a0d4Nlo5Zkhz?= =?utf-8?B?YTFBVjFxVUlDWXc0SXBydFlDSGZsRTFQUGpHajlseTU2ZUwyZDlsYlZOc1Fu?= =?utf-8?B?aUdEdmFOQ242b3l2YWs0VWlRZDF0RllEQWRyWHdKdWpQWmQyR3RTVjBZbFA4?= =?utf-8?B?NlZxek9ZVmZ2NXJYWFVTNDc4Qlp1cnlqd1p6NTc5OWZGT2Q2SzNBOTFvem01?= =?utf-8?B?RW1mbGdEdVE3QXBMMHJOZzNTZGhwVW9XNE03RXdtYjFwcTZrZWpwbDBhRG5D?= =?utf-8?B?dU82MlNJMGtjNXcrTWdxTkF1eE9rSEpPUHhsNEtYR2dsbmZ2NmI1N0gxYU52?= =?utf-8?B?YXNqL3pIL1hBR1B5azMySXRNYWN0bVlFV1hFYjgrbDB3LzkxZ0dXZmFFelNU?= =?utf-8?B?MDB6K3VxQ1dUSndBT3l1c0prRit1R0NoZUsrTWxDQjUyWjU4b2FOS3ExTFdm?= =?utf-8?B?M0dFaElJTWUvM2lZcEI4NEJCZnhvYjBLbGpTcGtBcVRNWFJRMVR3QlNVRDBq?= =?utf-8?B?TnlLcVVFdmVmK3JtK0ErcU5OOGNmbndWV0ZicEhVMVVxb3NtczZ4ZXBYQTZz?= =?utf-8?B?aHlwOHJEb3FpdVNOWFZUVytJVm5IeG04bm16S0ltaHpvMy91SHNUNVpyNXRq?= =?utf-8?B?UXJjMzFtYzdYTHVobTlpWHZSUnBqNFBmbTJndlRTa2lzVDc3TksvUWkwQlB1?= =?utf-8?B?NlExTFVwcEZ1dTRTbHZrWmZYd0hZK29RZ0pBbWJhNzI2a3hCUC9jMWJQeHFx?= =?utf-8?B?cmlMMTUrWUdwd0JZSENCd1hsTk1QQmNHcEF6ZDZMYUN5RnpKNFVDRko2TjRX?= =?utf-8?B?SnFlMW9yYjNrVGtUY0VFYnZRa0NjSEQ1UGpXam8yNkRUc2VnaU0wZ0J6NFVs?= =?utf-8?B?bmJzWWlsK2hTbXVUbjRnSXR0SVdjSEhVR2xmWWo0cUdkd2YvRHA3cjZBa0dl?= =?utf-8?B?cld4eENRakJ6dXpNY0NWR0dyaXdwRElubGFPZVk4L25aVHBZNWN2VEdqajdk?= =?utf-8?B?dVdHcGxIMlR2dE9TajU1QTFIUDJLYnZGeFYya1NzV1NHZ0VaNjdmcStabWdo?= =?utf-8?B?OUlMYlN1OStxNFNRUkRkZDFQcUJndEwwMUJCWEFrWnlEZ3NlTXpDQT09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 90036bb3-1e13-4332-6a6e-08dea5279e3b X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:11.0868 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Uaz9MpEjmmKmMq0XWWSCyYkctLxGQVh/49G73k+m7XDgIR4yEocvmtaLbADbY7XC4g+2DPqO6xSvQwWMjuoO8w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 From: Mohamad Alsadhan Place definitions and implementations (incl. macro invocations) of the `Zeroable` trait first in the relevant section of `src/lib.rs`, followed by the ZeroableOption trait and its implementations. Rename `impl_non_zero_int_zeroable_option` to `impl_zeroable_option` for consistency. This commit should not introduce any functional changes. Signed-off-by: Mohamad Alsadhan Reviewed-by: Gary Guo Signed-off-by: Gary Guo --- rust/pin-init/src/lib.rs | 46 +++++++++++++++++++++++---------------------= -- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/rust/pin-init/src/lib.rs b/rust/pin-init/src/lib.rs index 4f50994bd268..e34c9bdb88c3 100644 --- a/rust/pin-init/src/lib.rs +++ b/rust/pin-init/src/lib.rs @@ -1517,27 +1517,6 @@ fn zeroed() -> Self } } =20 -/// Marker trait for types that allow `Option` to be set to all zero= es in order to write -/// `None` to that location. -/// -/// # Safety -/// -/// The implementer needs to ensure that `unsafe impl Zeroable for Option<= Self> {}` is sound. -pub unsafe trait ZeroableOption {} - -// SAFETY: by the safety requirement of `ZeroableOption`, this is valid. -unsafe impl Zeroable for Option {} - -// SAFETY: `Option<&T>` is part of the option layout optimization guarante= e: -// . -unsafe impl ZeroableOption for &T {} -// SAFETY: `Option<&mut T>` is part of the option layout optimization guar= antee: -// . -unsafe impl ZeroableOption for &mut T {} -// SAFETY: `Option>` is part of the option layout optimization = guarantee: -// . -unsafe impl ZeroableOption for NonNull {} - /// Create an initializer for a zeroed `T`. /// /// The returned initializer will write `0x00` to every byte of the given = `slot`. @@ -1643,6 +1622,27 @@ unsafe impl<$first: Zeroable, $($t: Zeroable),*> Zer= oable for ($first, $($t),*) =20 impl_tuple_zeroable!(A, B, C, D, E, F, G, H, I, J); =20 +/// Marker trait for types that allow `Option` to be set to all zero= es in order to write +/// `None` to that location. +/// +/// # Safety +/// +/// The implementer needs to ensure that `unsafe impl Zeroable for Option<= Self> {}` is sound. +pub unsafe trait ZeroableOption {} + +// SAFETY: by the safety requirement of `ZeroableOption`, this is valid. +unsafe impl Zeroable for Option {} + +// SAFETY: `Option<&T>` is part of the option layout optimization guarante= e: +// . +unsafe impl ZeroableOption for &T {} +// SAFETY: `Option<&mut T>` is part of the option layout optimization guar= antee: +// . +unsafe impl ZeroableOption for &mut T {} +// SAFETY: `Option>` is part of the option layout optimization = guarantee: +// . +unsafe impl ZeroableOption for NonNull {} + macro_rules! impl_fn_zeroable_option { ([$($abi:literal),* $(,)?] $args:tt) =3D> { $(impl_fn_zeroable_option!({extern $abi} $args);)* @@ -1668,14 +1668,14 @@ unsafe impl<$ret, $($rest),*> ZeroableOption for $(= $prefix)* fn($($rest),*) -> $ =20 impl_fn_zeroable_option!(["Rust", "C"] { A, B, C, D, E, F, G, H, I, J, K, = L, M, N, O, P, Q, R, S, T, U }); =20 -macro_rules! impl_non_zero_int_zeroable_option { +macro_rules! impl_zeroable_option { ($($int:ty),* $(,)?) =3D> { // SAFETY: Safety comment written in the macro invocation. $(unsafe impl ZeroableOption for $int {})* }; } =20 -impl_non_zero_int_zeroable_option! { +impl_zeroable_option! { // SAFETY: All zeros is equivalent to `None` (option layout optimizati= on guarantee: // ). NonZeroU8, NonZeroU16, NonZeroU32, NonZeroU64, NonZeroU128, NonZeroUsi= ze, --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020087.outbound.protection.outlook.com [52.101.196.87]) (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 AB8563B19C0; Tue, 28 Apr 2026 13:11:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381876; cv=fail; b=pcqv4hiEDiIUjEcaYal4GIzHrgRV4qJ0CWSq1LNOg7C1ZddOq8Xaqz+wHJcHVJto+DMUieLVEHTokDsGPnn/KPKZuf/bImesdv4Q9QeGuhFgvFAUihSo/x16gs22xfLaelwWU5PRpoJxmPL628Ecl33USFVpli8VlktSpZqbEeU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381876; c=relaxed/simple; bh=Kf/N0paQ7XX909ZjgmpHr0Tfx6ffyg8Ro0lY9itfpLc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=LYd/n4L99fyT7//hOrOpAz9FKAs7pAdKvkLnhkY2MX9EMxBfuzMKYd0MrOa6wu2DOXN2/zAZ5bRooEKCPZl44E8tVPMyCGjAglbjM0D7PzzYpoG833htV6YbFK1bCH3UC0U/kv/fgkWujm0HwHJ04Vs7jhN2p8BHBPJU3IbV89w= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=bVy/t/QT; arc=fail smtp.client-ip=52.101.196.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="bVy/t/QT" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=WVYu0K9qF5iXjPJbssuoFgSMQ4yKxByHzT7C9EsjQQzdxdYIiruPNctPhKAu8y8fDZV/C2U1PAuDr8XhMXaAZSISSOlkqLzR0RnIYMuvPEHD8fSrrmmNVgO9OqpXMP/c2CbT4+LRCxsghGA0KP1C+oeHwFmRvIDb4EnIxkQHdfHoc53u8s7FzF+Cs8bdxjjDbtQGG/qdQlUWvfGxAYCAzG3rQRSLUVJrYgGr63wb3SrPYN/DqQtkeCVJgIk2VLAKNrpElKiRSlstOb4kKCpYNAof8yEqBgEUqVroC7qPmoZMuT7svrxf5MgLOC38+AlWW87EEVqHOHancKxGJlxfVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=s/Nro99t7JF4FNkaBvGYRrBubLNU8/NFEUvBvMc7N3o=; b=DSXIv6w97TZogjd9YVDZeBOESl564TZTVYSI1Luna3pavAi7gC76F/FhLpcLViayY9kRpmvwlRvnvp1Lo7z3JBZv/5sj8dxJ+aMsK2JQ5IeL+ei3VQb0oQfe7wBZDjw6nHpTplqXixspZrQuUdM8g8VpQxHVVA5Q61Zn3yqXtHbMJv8jH/IJd12FjQ/YJyC3O5DzccPymcK7M04C84cLX673vkVLjaisgzHLJR1J1OBGtNTWY21gBv2jNhZAizqXX2yySfnv4/JxXc7qirqlT+qdxt7mNu/vj9LlbxYB8Qt7K5gRoIh2rnfU+Q7oi1pWQgFmnP/OrUs3uPVAmj9sSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s/Nro99t7JF4FNkaBvGYRrBubLNU8/NFEUvBvMc7N3o=; b=bVy/t/QTcoEyb6vgnP+CgBl2PuTHXRp8nZdzy1UIjAwL/djPs1KCawUsiZRgxY9HppKg7VeSv6OrV35XTtq9laBn3FdOTevz/r+wybsQacyGzwvIcp3I/XC/GtyHRy/Yzlfsi6RoGdEQ+gBQoen7iSTO5t58PuQOzsW0EY5mK38= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:11 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:11 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:53 +0100 Subject: [PATCH 04/10] rust: pin-init: extend `impl_zeroable_option` macro to handle generics Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-4-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Mohamad Alsadhan X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=3545; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=mtIRdXbj+B4CsCp7xZxjzcpmKUlJ0VKLK/u5aWLR7DI=; b=zx7detLcz9Sq2fZoNuz6nJ9Dx/j3ofakZhxzJZAr+2Muvi1s1oF1BeHXqTuX9ady2MVHOAI1c 6rMn9kuyzdJDFtnCamBCah7Hp/0MtI996ey+EV5kryu9UzYvdcjTLGJ X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: a9071ba0-7e10-468a-7a65-08dea5279e70 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|13003099007|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: DzQfKItskhLqkQVtDlbwb6aCP7UXuYdYHGBTQz7ywlG7Vnf6E8JNTu3NLba4CGkKe/sz8bkSud7G1QzRxSuiYt6UktIF6cIr0XOl2Hx3TyZVzV6mjHuMyNtDwTxokalb+cRW3cgKFdmFP76To+Cl/msmOAADiprLimTGsusKQCuezJQy0MYRjDnunLH1jfXGw4fzGHmwLmSGl5Uj2f9BwJymAeC63VcqldsNIaMwT91UEukGTS9xj25ZpQ/KBBWawvzB3Rhaee8K0RLOY/gedYx/XEchBSHDbLFWoFV/gVJfy/lzXIzxcvfPbnBfdutbqMff6Uzg2I8b7ef9ftzWu2iE5dQrac04iBooCNl0GJzkIrn1ZzhX2TyEtWE9VyqYMntgol8KRxSCXzeuKzP2HW9nKs2pSQAn3Ennebfswc+AONMd3wqvggP0wLupFn8VqX4Y2NyWuh804qPkKSBnaG0qpnUimVOPz7qyFzlWhzFf+cFVUiKnxAjG6RpYT3ETnRmW8IJDLwUCry72n9K/xwSeKJ1xyuMDVQEI8ATlU8OWk1a9kOMSRGe7xKDR+7bsAlDbTlkHPO52sk9+praL/5Rqx1MvrdEsSAQGuyDN1Elts2RrCPpWyw/Kz4uIqdAwmNlm7zOEzkihURGhArnTAdqeKdLK2SYXRqMqMBb+af1OKQgjhUc0O+9aTczgFy/4 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(13003099007)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UFRkYkU2bG5DNHVZdTBRRlI4TXBNZVFMY2p1TTNkMjVzZ3NTdy9TYklSUXd1?= =?utf-8?B?SDNVOGxsck5NM0hlU3pZL2VsaUVRaDZPSHh1T0hwdUpPQmY0WWEzRTg4NWJV?= =?utf-8?B?c3FGRjB6SGEvdXJUbG16Mlc4VTNrdnZDd0plZCtoNjdza0VrY0VBa21XWkJS?= =?utf-8?B?OU5nUEFzODh0WlVPUWZjVksybDJYWE1UVmlxRndMa3VWeXNYUjNQaEw5ZnRw?= =?utf-8?B?RVZiT0FKMGh0eUhFbFlBZlJVdENMT0RFbnBWNFEwZVBGSVljKzR3U3REelgx?= =?utf-8?B?RXI5Y0dSS1dSdkxieWxpRnpFMzdFaTBYQjBxRnpjRDJnOEdzcUsvU1RIT290?= =?utf-8?B?NjErYlo0MTJGVm00c1BvUkJab3dmcXh3SUozdUgrNkwvWjE5VmJDZlJHaHAw?= =?utf-8?B?V1BneTNqTDJCMENPVEhyMmhZUmZMOGlDM093Nmtvek1tbEJmZ0ZFdUR0bnN3?= =?utf-8?B?Y1JrNWJ0bWlHUVZzUE5CbDNuUEpjd1g4TGJrTnhwa2VKTDU4Z2RCSHhEUTNH?= =?utf-8?B?ZXNWQkVMQnJvVW1scWRQSFlDK29DTGxyMVJGYi9QUnc4L1VaRVBZdW5xOUhz?= =?utf-8?B?cldUNnpFMEhKN2JQNndlVmxCNGp0ZzMrQ3l5dnVuNldnVmRuUlJqQWZUSHNl?= =?utf-8?B?ZUpmQUNZaGdKdlNZL0VVMWJkRldJU1JCaHNWMDREVEJ1M09ZU2VnaDNOeTdL?= =?utf-8?B?OVJpdXcwQS96SENYenhLVEVFRTFVa1BDZXBGeThxd3Z6S0RPUngyNEtxcmdP?= =?utf-8?B?eHNGa2RTcFhjekdqNk1McFRyUGtYUzVqd2FUZlR6M29SYVBuVzRSZm82ZVll?= =?utf-8?B?U05IWXhnbENyZlFtTVdBWDQ2R2JmS0xCd0FPVFRFb2s2RFduUy9PM1dHZmg1?= =?utf-8?B?Sk16MmJQazF5ODIrSEpHUExINjZrTHZaTU9zR0dFd3A3cFdRVml5V0dCRnQw?= =?utf-8?B?RCswMENUbjNpUitocjRFakhCcXMrbEM5ZU8zaGNLeVQwa1FZOUVFSjVKYmEz?= =?utf-8?B?cFZUZzZNM3dHMUFVVTVoTkVRMGpNK0pWMmx6QmEyb3dOcUlsRjdwdWVDWEZa?= =?utf-8?B?WE9mN1FWMTFlOGRnUEpnOVA4Z0FCajlJZUdhNlcrUXlXM2c5cjJlOUhIMFNo?= =?utf-8?B?Mzg5amd1ZW1XK0F2dktsZC9Ub3cveEdVZlowMEMzWXBvcUZtbnpFYTRWWjVj?= =?utf-8?B?dXRMMDJjd1FpTkNzZjJ5emhUSzk3TlIxS2xtQ0FzSkRnMWVoMzYwVFpNejd6?= =?utf-8?B?aVRxOWZXc0I0d1JsZ2V0TmJPUzJkWFRiRDlMOUJqczY5MFhnOFE3bjNOZ2cr?= =?utf-8?B?c29DTFJyT3g3WDA2d3h4NTRaSzQvNFgvRGdBb1kydTlEbEVGQmNnTytVYVFV?= =?utf-8?B?WjFNa2JaK0pObDNCbDd4T2FRODIwUTVoNG9haE5tV25DbWRlRDFNYWZxeHRN?= =?utf-8?B?cXBYNkJlK0hEREVVVWpYdi9RdmM3czByQ0VBeVhLbmt5YWp0YlU2aGppeVpl?= =?utf-8?B?K25LZWR6ejMwOGl3TU14L0o1eTEvSXdLdGthTTZNMWdlV0w0eVNHOXBIM1M3?= =?utf-8?B?NmY5cTdLNHVKNTJZNmJCRHNxM21PcGJCcmpxaTN2YlhMbHVjN3NyVTd6KzNO?= =?utf-8?B?RUpQTUViZnpjbHN1ZGt4Q1BPSEV1WVFpMmp2b2kvT0hLNEI3QkQ5V2xETGFL?= =?utf-8?B?N0lhd2Zla3ZVNlVoOXBiS0lPOVd6S0ZsZ1F1NVJhZXJMSVVtbU1rNVp1cHJL?= =?utf-8?B?RDd2S3gwTm5POW82MTRxbDRBRXY1WjRXT29SZEE5RWROV2oybytzamFDZkdJ?= =?utf-8?B?VkszU0wzbHlRSVQySDNHSWd1OU5pSHlnQS9RenJuTDVuVndZYjFQNUVYSUF6?= =?utf-8?B?eHFJYWFzdlBmbmdVU1pjUXA4UWFTR0FNakRtemErK2hMcmNoT1pLeEc2aWlZ?= =?utf-8?B?c3JtT1ozTHZYSkp6VmhhcGYzajE4QTdhSlpBVHdraTJTV0k5TUMxVm0xNXRw?= =?utf-8?B?VWJ0L2Y3U1FUZmtEVjhvWDREY0NSVDc2ckpnWlBmd3hQWWJLYUpvZ1hUOUU4?= =?utf-8?B?MWdLR2k5cGhodmpsVVNSb05zQWRVbXh4ZDdhNGtDTUtycjJqNng5WFVSNEh1?= =?utf-8?B?LzRlb0EwM0E0MjB5S2kwWUQySGdUK2V4MXRFQXlVdEFGUHUwZkZQU1gxSXF3?= =?utf-8?B?NE9lTVlpc2dETFpWMWNFV3Q3bjc3ZHc3Zk0zdlhxenBFc3NnNkVSZGNpTkwr?= =?utf-8?B?WUN0aW40L0V1Z3gyRC82SkFESmZWYzBKcVdmdklOTFlaQW1rL0JOaHVVcHJt?= =?utf-8?B?VUtJRTF4THRBRzlncTNkbkRBemc5YUhaVUgyWXY0b0lzeW11alRxQT09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: a9071ba0-7e10-468a-7a65-08dea5279e70 X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:11.4265 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TK+1uAz8nJ4+Y4uspIspIprZAk1A2gdVWK6BVwdyAQtbF5Ar4kb2XMJwJ7/opShcz7cwdNIbWthjzVQ6HPiMSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 From: Mohamad Alsadhan Improve impl_zeroable_option macro to handle generic impls for types like `&T`, `&mut T`, `NonNull`, and others (for which `Option` is guaranteed to be zeroable) with similar approach to `impl_zeroable`. Also, update old declarations to use generics e.g. `NonZeroU8` to `NonZero`. Signed-off-by: Mohamad Alsadhan Reviewed-by: Gary Guo Signed-off-by: Gary Guo --- rust/pin-init/src/lib.rs | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/rust/pin-init/src/lib.rs b/rust/pin-init/src/lib.rs index e34c9bdb88c3..9b76cf5597c6 100644 --- a/rust/pin-init/src/lib.rs +++ b/rust/pin-init/src/lib.rs @@ -1633,16 +1633,6 @@ pub unsafe trait ZeroableOption {} // SAFETY: by the safety requirement of `ZeroableOption`, this is valid. unsafe impl Zeroable for Option {} =20 -// SAFETY: `Option<&T>` is part of the option layout optimization guarante= e: -// . -unsafe impl ZeroableOption for &T {} -// SAFETY: `Option<&mut T>` is part of the option layout optimization guar= antee: -// . -unsafe impl ZeroableOption for &mut T {} -// SAFETY: `Option>` is part of the option layout optimization = guarantee: -// . -unsafe impl ZeroableOption for NonNull {} - macro_rules! impl_fn_zeroable_option { ([$($abi:literal),* $(,)?] $args:tt) =3D> { $(impl_fn_zeroable_option!({extern $abi} $args);)* @@ -1669,17 +1659,26 @@ unsafe impl<$ret, $($rest),*> ZeroableOption for $(= $prefix)* fn($($rest),*) -> $ impl_fn_zeroable_option!(["Rust", "C"] { A, B, C, D, E, F, G, H, I, J, K, = L, M, N, O, P, Q, R, S, T, U }); =20 macro_rules! impl_zeroable_option { - ($($int:ty),* $(,)?) =3D> { - // SAFETY: Safety comment written in the macro invocation. - $(unsafe impl ZeroableOption for $int {})* + ($($({$($generics:tt)*})? $t:ty, )*) =3D> { + // SAFETY: Safety comments written in the macro invocation. + $(unsafe impl$($($generics)*)? ZeroableOption for $t {})* }; } =20 impl_zeroable_option! { + // SAFETY: `Option<&T>` is part of the option layout optimization guar= antee: + // . + {} &T, + // SAFETY: `Option<&mut T>` is part of the option layout optimization = guarantee: + // . + {} &mut T, + // SAFETY: `Option>` is part of the option layout optimizat= ion guarantee: + // . + {} NonNull, // SAFETY: All zeros is equivalent to `None` (option layout optimizati= on guarantee: // ). - NonZeroU8, NonZeroU16, NonZeroU32, NonZeroU64, NonZeroU128, NonZeroUsi= ze, - NonZeroI8, NonZeroI16, NonZeroI32, NonZeroI64, NonZeroI128, NonZeroIsi= ze, + NonZero, NonZero, NonZero, NonZero, NonZero, = NonZero, + NonZero, NonZero, NonZero, NonZero, NonZero, = NonZero, } =20 /// This trait allows creating an instance of `Self` which contains exactl= y one --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020087.outbound.protection.outlook.com [52.101.196.87]) (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 D766144D030; Tue, 28 Apr 2026 13:11:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381881; cv=fail; b=ERGD0gbG7Y4BHH8MB9WB6LGahXhoh2/FbHKKR6DeAFlFF5yt15YENHPAULuW0M2KH/W3bJdanooIFwsPx5sVlYMFTVpV/NzgcFGajeJt8MNEWJjDGFo5BbEJv64Z/JDuSk5f6ETRFt5YQ9OTf39npQEJDZe28fiKrNPBX0ZLuyU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381881; c=relaxed/simple; bh=fOGUrFUoV/pJhB9fE43g1EubGAKr/Au4WH8Xff+iatM=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=GF8x0vPYcQ23N8ySC4ygPmafaIq33xJTAg3JZv7NFRsCLTiSS9l8FYwsXwC9xkO+yN3eUB5F5G9OLBGbaayscJhZfLGv4BU5d1RnSYms/zP+ITtF7GnTLxXqjUp2EjZxbbrUxdiAhlaExmhiaJ0wZU1GENXgSjQ0sftD6Lvf2LM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=WKM00G4x; arc=fail smtp.client-ip=52.101.196.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="WKM00G4x" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=y9+ILR00UnxtF9SfGE7PX+LkP0zKNlWdjaLV7jNLyynQX6tckyDNK/3bjiYjKtqm2J5wIYXcZPMjv8Tu6rNTeZlsUQE5MwfxSCyo8ObsWfFsoMOZkUcUQ8fbXjaNT0i8Fv1JQcTrW3fi9isvDZqbehNUsC/9KreEuAJgoLxCI0P+xvqghrpHznsoisjQY5k4yetR7yNcsqPqkKeR8m/mg5OeWLTpekHIRhF6TftB2eZxEX/yfFF7g+HFQR6/I50iKGt4MiLfA1YB0w9j5qJqoFwjMsV+s0mi40/ZK1tp4rfiL/4CT2bDbgkXqC+ZP6nR3fbugDDkTqvbiRCWZEHRXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=rWHjwwpSDeLPW0++tFnQ7RUvxjZIJqfWpSNrXbQP4XI=; b=k6udFVRB5158+dkeDIaNb1KK8c2IHwMREMned3joe8L8Fw5edUnQG9lG2mnTjsbfIRwrlZ6GrXqOwJBppaNsLVAsxtEQt2Dq3P5/UNMeyi/awJI5HYNdEctJU/vxD+pDYAKax+kMAitghwVYIW1yEjs0AZpSRJsePVAmbv3SfkfRE2jQ4zvhvoVeY49emJZ3X06t36AGPlIMIQDsvI0sLjoTQOFShVD0Mw5J0PhfPQXzPrWZQTyjzMzNB71vjANxDFhVGmt5CfsNPmaRAp7i9bybTQRLV5sqta+nblVUUU4TrBSRPDn1Xh8jMUVmEUMfRkgzmh1zkGoHsNXBK65TUg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rWHjwwpSDeLPW0++tFnQ7RUvxjZIJqfWpSNrXbQP4XI=; b=WKM00G4xD7W7wM+Dwp9PMgVXTYdvXvdW86ymkDS+Yiy3Spm9QF0ucfhtbMUnrKwqRcrPWz7eZXG5t72ZM/D0Ux4dPu9f3c4oVsNfYLrSjts2XQgqQ41F0xSdsLRafAqePY3QNd6WkVsQVmwIAul5xD8QIqkzhhKyJGK/pctJ+Og= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:11 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:11 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:54 +0100 Subject: [PATCH 05/10] rust: pin-init: internal: add missing where clause to projection types Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-5-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Mohamad Alsadhan X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=1444; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=Vxn6Plag0MjP9feEb+R+/Syy1UU0qvmFxeZ8wVhCAN0=; b=YBMrA4RKv9i+MqNyGymZ2Rw6rUM4S52QymTilNa8CsDfj1e3DGyPuXcHRLhMD3keTfT0MVamG 8NFwmSJXFOBBqVf7SfOnnRL5C5+CoUPml54oOJz78S6ZcSWyOGyPK9N X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: ee2e2ec5-4ca1-418d-f5c3-08dea5279ea3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: 2d7xpj+IjWcXs3Y8xLfHZDphqVwwd/Xu9VspEt3jLf3+eVqegBxxStSS4IF7OCI7htNpBj0wQsg15bQgSh9qiYlN0kJeNFd5eLQ5bPceipGudOcFWASRbGsepoNZRQi1+Po9MrASGM6s9w5e2ZYnk+V3MvjFWJKsXVB9QwMgmcgHAMQfqMKnJcYL4FphAFtWN6gYIgrF0saryl6McJKTcHkqmM6YItImeUL9UaQq1HMsEXTYe0gnCIUt4a11STGFm5UAJ7aD3JQPi+T1nGXSr4WxiUf0SHvjkyVa5dwl9lzALYc5oseAhbO7bYiJ0hcIJjUcdi2rFw/NtaU9ESNmwFE/fpzYT4CTlPcivd4D8t2Y3uQYObzzWrd674U5gDIsTqpp97rs7wYLnAZMi6dM92yLCG1zS0H4RhjN58iIQgiijgAP6VBKv9JpXd5/6CLRZmfG7Dv4gV8ekYs2w/Kpd9NmggB9nkAG+/0RgYOLpsBA2+RnLBii4nCvJ81FxC341f8LDIgqqp9UR77jJ6EPVn/inS9R7WjZlH3LtWbl+uoAQX6YBzuO9qfNGv1wStkiTBw2nfmkyverxeDiHV3g1iL0LLgW/SwZUGfYnRm8Th7ln0URQoa18ekb9a4Clx3N1H/Ecwh56Fylt0NgZvg6LiDQfArQYF624gfj7mN16i4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZEN3NXA5cXJvUGd1RHdCSVdHMXVtaXJvSkQzM2U5L0JKM0p6QmRmakMrWWEx?= =?utf-8?B?VHVaWCttaTVBcXZ0Sk9GbVF3OFo4cVJiOW5yVEkySEk3Y2ZZUUZoSk9LaVFK?= =?utf-8?B?RWRiMWFMeVdNb3lZempRcWc2aFVBL1BacmhSYmtrd0plSW5KTk5WMC9rdkJD?= =?utf-8?B?V2ZxbTNsMmZMQU9zSGdwLzZvODVIaXNtczA4TmdHVGhoMHBsTkVMcTdBWS9P?= =?utf-8?B?WlNYMXBCSVFxNTNsOURRdi9NaTFKNHA4aW1oTXJmWUNsaU9QdURlazB4cUQv?= =?utf-8?B?NUZMdlUvRUNqQjRSOThuK2xqbHR5d3p4cnBBOGZuVHNHdXNlY0hTdjB1ekdX?= =?utf-8?B?YjllZWJldE11dnhsaHh2ZnN1M21kYllGNFF2aEVhU2VqejkvYkdOYThQRTJG?= =?utf-8?B?NUJUSkxRZWcydUR3UXJKaWtQYzAvcS8xOUpEN01qOXFTdjk5cGVaQTQwUHlP?= =?utf-8?B?TDh1RUdaUmFrOTJVamo3dHg4MSs2M2o5Uzc4N3QwSnFXL1g2KzBZMGRyTzYr?= =?utf-8?B?UFBRMGc3UEg1b3hVMTMrYzJ1TGJqNW1zN01tUk9weUZ6c3BZSmp4dEpjeldO?= =?utf-8?B?a1JLT1ovRmZNM05wTXcvRFVGa2wyZHYwL2tnUHFoeUxaYTAxUmxWb25EYnY4?= =?utf-8?B?MDNmc0lpaGhDR2ZtM1NFZ0tzV05KQlVIRDNIOVQ3Q1F2UlFlbHhYRFB1T2lq?= =?utf-8?B?VjF3cmNITVF2bzBjYzAvKytKUHg2a0lKdnRiU1JTMHEvenFhWlNWUUF1My9a?= =?utf-8?B?YWM1UUF5Ym40dEFSQ2dwL0NDUytucmtEak9RUEt3VXg0UzdIQW1FaGhJYlpa?= =?utf-8?B?TTVqU05SNTl6S0NkUzhvUTRwUUpDY0xBRVI4R1RwNlF0YXF3WnhwdVNoUHZ2?= =?utf-8?B?SklzTjcvV2V3UVNXOVRFUW16SUxvK3RtMlFML0Z0T01GMUd0dnhYZjFtNVNO?= =?utf-8?B?aVBOUjduem1VeGhBZGhpSzQxMVIyVmpuRS9rWU1YdVZLaDZjaFgyYjRLeDVL?= =?utf-8?B?ZERaUnlwbVBpUkxyNWY5OGh4OUdvakVJM2lRTGI5TGRaZUpuVkRUS1lNdTJV?= =?utf-8?B?SE41TTQxYkJLcFQ0elRBWkEyRlN6M0s5SCt4cDl3R0pUUy9BTzBDaEVZZVVI?= =?utf-8?B?L2ZCK3RyeXRhNzMrblkvSk9lTFZpaGorRWMxWjJmWHB2a3pVdi9RbGIwUmND?= =?utf-8?B?UE11UXBQblc4bjAwenlCU0tHUGNvTVlQZjFYRjhBV0NQeDZxcllYR2dYYUdX?= =?utf-8?B?RnNIYWNmSTZBYUVsVEg5bmJ3bzRpT1hROXVwOTVjNjJxclV3Sm5rQWF3N29i?= =?utf-8?B?UmhrSGpCT1FnK2ZOZEdQWmJyTXROWkpNOTBaUE91cldjMDBsbEhPSDdSRWg4?= =?utf-8?B?aDd1TUpPZXFUclJDTmpOelpUZGludjFNQVE0QWlkMGlBVmtNUmQza2Q2dWdN?= =?utf-8?B?YnQyc0lwcmZiUFJaaG1kZ0lwdXc0SnVwcFhDU3lIZzBwRkM5MDZGeUwrS3pw?= =?utf-8?B?NlBEYkxRUVEyU3MvN0VpQXZaS2lnbnpkMHZJZ1pRdGtRT1FLbWNJbFp2dklH?= =?utf-8?B?VEs5c2wvbHJYUkFLZ2wrdzlGT1poaFI5ZGFLbWozcVZHVWo4M3ZpWWhIKytn?= =?utf-8?B?d3NLME9nODhNV0RBejY2TnNBK3JnOTZwb3l6SGdxcG1HbXdoc1pwNkxuL3hm?= =?utf-8?B?ZVpTdHJDSWozR3NKQ0RuNWN5ekt0UlBQdFRBMzZ3Uk1ZUXlPNGd1K3lQN3hD?= =?utf-8?B?TUdraFdid2EyWkVkZUJ1bC9sTS9yMEk3STNBWWl0V2lzQjNTOGNnNzJ3T0Mx?= =?utf-8?B?VHdvUFByVzhiZmo3R1MxWDJIdzM3MHY2Q2ZRcWN2TldtTXhLZ2g5bkRRRUF1?= =?utf-8?B?cDhFMkI4Qi8zRlhGL2VKeXBOZitUS0svRWxqMzVLU0JaMlFFMTk0aXV4U0Vo?= =?utf-8?B?TU54a3dDcStSRVlnYXpWT2gzMUpzZXlZT3hIblU4bk12blFoVGxkd0kxQkVC?= =?utf-8?B?ckNmMFlhNVlEa04wcmg3OEhSOS9DTkM2QW5hU3pwN3d1ZGFvZTFUc2oxaXRI?= =?utf-8?B?cEJKbXNrVGozQnFIM3A1OFZqYVZ2U29WU3F2RjgzdlBaSlFGam5HWjhSSHNO?= =?utf-8?B?MzJ4bDJCTFBwaHl2VDY5QVlyckNOZnBUN2lOdjVZSU1zWWNQSkpuekpJNWFy?= =?utf-8?B?bzRuTzBYY0lyVjBMczA5dDF5c1pqcXlCdjU1U3R3L3d0Nm90dk5xcHZSb0FF?= =?utf-8?B?azFvazhBMFBqQnFDb3FJQ3hPRWtnN0RsMjBwZTRKclp6em93K2UzWkIwOUN6?= =?utf-8?B?ZGJnVFkzZ2h3VllVUHBaSmpjZzFZamNDWFU5MGpwajI0Rmw4K09sdz09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: ee2e2ec5-4ca1-418d-f5c3-08dea5279ea3 X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:11.7523 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: D9O+t0c5srOBG2CU1rM7vCu75+SlRMRTkZ92VblTDzlFN9wC4Ti0j1CfwAhyPkB3guaXELiVXemcM1tD1ZaRrA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 From: Mohamad Alsadhan `#[pin_data]` failed to propagate the struct's `where` clause to the generated projection struct. As a result, bounds written in a `where` clause could be dropped during expansion, causing type errors when fields depended on those bounds. Fix this by adding the missing `where` clause to the generated projection struct. Reported-by: Andreas Hindborg Closes: https://rust-for-linux.zulipchat.com/#narrow/channel/561532-pin-ini= t/topic/generic.20bounds.20and.20.60.23.5Bpin_data.5D.60/with/578381591 Signed-off-by: Mohamad Alsadhan Reviewed-by: Gary Guo [ Reworded commit message - Gary ] Signed-off-by: Gary Guo --- rust/pin-init/internal/src/pin_data.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rust/pin-init/internal/src/pin_data.rs b/rust/pin-init/interna= l/src/pin_data.rs index 7d871236b49c..6b1b8f26379a 100644 --- a/rust/pin-init/internal/src/pin_data.rs +++ b/rust/pin-init/internal/src/pin_data.rs @@ -304,7 +304,9 @@ fn generate_projections( #[doc =3D #docs] #[allow(dead_code)] #[doc(hidden)] - #vis struct #projection #generics_with_pin_lt { + #vis struct #projection #generics_with_pin_lt + #whr + { #(#fields_decl)* ___pin_phantom_data: ::core::marker::PhantomData<&'__pin mut (= )>, } --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020087.outbound.protection.outlook.com [52.101.196.87]) (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 774D9451054; Tue, 28 Apr 2026 13:11:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381882; cv=fail; b=oOtb13ZvMBrsFv3HoCnlS8oDWx3yxsOWD/E0C6h872KE7k97oPkG6rz2izw0NwqusKWwwu10kz8F4NqmGpllDQL4Z/rjhF+kd3TmbMwhVgg/AWr/XvDkhyF+DSZ7H6mPgIUddoA3LXHlyQLhxJvWs8y5Fo8xl8SfR2FRSEcT1pQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381882; c=relaxed/simple; bh=2S7GJnb2K+0NfkK4k7tgqqG4Ny8wTVTi9xKgCIURDRs=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=EWlW7yaP+x7kxlrlyMuOPH6ENbVZL183FYk25Q0EadPMC3H0I4DNh6NYLzp45bDaV776+LZqpRZqRhFKNyA+s1pcJMmOj5Z8vnMJNYaS3gKNVgbzNtftF7pToWE4aIym41mPGEXiUoILAXxgpSv1uncXgkBnqUmFxIrb+uY2KAQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=elPJBu9p; arc=fail smtp.client-ip=52.101.196.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="elPJBu9p" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=sAcofJD5NcM4JR03biaaNNqKlLdJGcO38bO1aDWPGEHnfBNJ6xERn4/3nf6Ya6ZINvGDIfbhNnD8LzZp12De5DtEKXX31PWBigxy6kcx3k0Z9eKCTDNmUBK49ublhY+dmW/ln6YOZmPa0DjAU6DhBxSa9tUEMPMvdWRageIpxPPZ8e2RaB9LvnON4hVdNfJwSCMEZ13HJzAbXD1yRa71IZ6ni8yoPhpf5VZloD6y0FrmeDddTvQnglaUC1WDb3EodgsbZjNo9qJs9rCeIQECeGEQa3wHDUALW4ezwbsWgKqWktY0Eo1LW2gDf3UeNVKAFJ+pPSCFlsRkDeigI//EgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=sLRjulnufU+FM9cXALmd111ZNjNo/CSektrJrac1+9U=; b=kA/A0yU5xhKXRtHoW/OlqvdDzLmagXB7wN7GI9vaeDcleudnTPCKST4mKVYGfdWlUz9D0al10SPOxoE4W4LAkrPuK03lrOQGfWjuhGsdbYgMeJaErTuBnflakUn1GCf0Nc1oTjSITtx7RNYuk5/QOZYQSnLzqPi1ADLHaNmd+6la/K+Yphq9fk0ckYxob/AFqI7vE1ew6KO7rKF7Y/SI1a07WzdGRiMeaqE+3FyndbdnKt37liCZSB1pYKfWM6ao72IKVKauI+fn8fbII4/GbGz6mDBydEbT5eA7h2nFMYWdK606lXlUvhoZLeyJebDDTbmjUpoi0iRA8kOxb/Ct9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sLRjulnufU+FM9cXALmd111ZNjNo/CSektrJrac1+9U=; b=elPJBu9p6hUd5D+BJjLiIilvBfi64HN45BsZK7O9oAEMfjH5+bJU5L0hjAOSFfDpz8E+MgOjBjwHCy0ooDFOK6AiUbcJBLQ1AklR+Wc55jasYcxl4kVn1Z7Me7uOg3d9Nwm5uSNXmok6HejbvujxdaWiJ893jy280AojjSPE6BU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:13 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:13 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:55 +0100 Subject: [PATCH 06/10] rust: pin-init: internal: remove redundant `#[pin]` filtering Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-6-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=1268; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=2S7GJnb2K+0NfkK4k7tgqqG4Ny8wTVTi9xKgCIURDRs=; b=vq4G1sQowLoSPwqZaQ0iIaq6eo6lwxwJtrRKvDBjfNzIGcRa2Cvwb+lyTX2PELJ42Mo90gYdI WqChC+us3unD2VrAJh5LeVu0YIPGZY/XcktprgCASBGvlYk8Md4sO2H X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 744eb68f-2a81-4805-5507-08dea5279ecf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: 8LaxM9CJVb18rvbzr5hNTRBAAozhKPwb9dmrS5YPT+YcB75seBgoHhBzWlI2p6gkRQOimW4y+yIkudO31zZFLuJtYvIE6/Dl/YPmRzypOoFLCXyJHwZpCmMX4J8EEudqeZ/qixi6pUhVuH5pUloQFbG9TZAgFRgbdjJQJBaw9q93OWO+CrgfmNo5QBoXtWEG/LH+Zd4vasP8bmf0MlvBFxzmoeLPmqxgQv2lkGQjntAFj1LhtJ848izIgKNLoq3mqArHncxILnoCjLmLS+CkaAYHvSYR2fqk6LJLkRkFF/sshYvLuZ18xc/jkccFL0+rJYG6XkNsydH5ScP36CW7ApxEfG2Dw3vZkjnnzgqClYtv4uKOFQ4tat5kL4SHcMEQrSJtjVb3Dv06EIxWJcvtcnWMFyvPyKSN+1X0S/NSA+wIckBFAx0WN4WoMHqrxX1VNI5olD3OiBwgTBCQ9B3675ciy4a5YX83n07aQ0hSqhS6l5zCES8CHDziQIHsiYbb/ceELQQikPdBIP9pDy1XOtA9YM6+lA0dFaN1iWnPkSDP2lZRhkswocgasbsB30ETYjDRH5+0350MK+KUeLJ8uGeT3txr0Y0Z5XOjiz4jhQJQtndg217llyQoMCiIsIYfO4vpNDKGGP7nk6FDaxb0I5pbCqDRLmT+CCORb7zLIQt33wLzNqD9FGqipD41hnBp5WjsfuNCdWjYFIvbpUcgxWuo3giq6wJ6JuhHPTL99Fg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?THdTWXBBamVSQVJUaGUwSXA5ODVzeTBlUG1IUUdrWVVvWW8xTzVOMHYvR0k1?= =?utf-8?B?SURBWlgvWmFramZRL0dRV2JTRXNPOHJXdk9qSzkrM3pWeWFVM2VEbEcvNGxQ?= =?utf-8?B?ckVqOWdwWVNwaDcxQXB4QkF5Rm4veFVKV3ZkamNLWGdGTG5hbGhsTGFxamxZ?= =?utf-8?B?a0g2S283TGdnNnd4WjZNSWhmTG9aUHh3SFBQekNraWRHakN4dS85TnNXWkx0?= =?utf-8?B?eG9RMEE5RmMvVFZxQkFoODZXSCsxMUVkdTFrbUNoSFdYYXNkSFY5cXBBdWhF?= =?utf-8?B?dS9uQkE2YVE0ZXhRRnZXUHUydUlwZTlRVmVkM291SXNLS2dKY1dVRWNEZnVL?= =?utf-8?B?Nmh0ZVRMTjFXY0ZpcERFZWcrYnZWVDdGMzZ0VlRyejJTNjdvNU5ORU9QUi94?= =?utf-8?B?RVM5QUQ2d2FIL3puZDJHNEpQRzNBSGJBY1dTaTlzZ3oxNmNQWWhMNS9xVlFm?= =?utf-8?B?aWhBbSszaTUydk1sbXVKQXFGRjliV05vQSs1TDdteXJJUFY1dVE2L2kwNmpN?= =?utf-8?B?VzNTdENtMmlOcVlwV3o3ZDVhWUJ6Nk1yNng3N0gyYWRLeElIWjBjK1Z4ZWhS?= =?utf-8?B?RFI2ZWJNWHJtSGcyb1JTQy8wZmcwL3g1S1lMczZiOG5MY3MwR201L2hkY0xE?= =?utf-8?B?ZTZPVlFBd0d1cGRmbkU1cFJ4V21VcmFQU3BIUXNuVWdrOWlXblVUUUExOWtm?= =?utf-8?B?TUNBeEZjMHBhSzQ1MGE3NlBwUDdvbml6TVVCcDhReHZNSDQvc3UyVndETzY1?= =?utf-8?B?SFNTZk1RL09HNENQcllaYVdzdStvL1VFWlI4N0x2QU1VYmxQaXdKZ2Z0RUFO?= =?utf-8?B?aGQxR2gwbzhSemNtTThxakpnY3lOUEtxM3pRcDllQW5kUzJTcTlHd3NSMVpo?= =?utf-8?B?MlNPcCtyMkR6MkVsZDQ0YTZ3blVyalZFZkdhZ2dIbi9BZEl5dzN2R0ZhVEdt?= =?utf-8?B?U3pVRURXQ2k0bDJ4azZuZy8vcmFCTkZDakwySTU0VGc3bHZ6NFNvVDl0aWZ6?= =?utf-8?B?QzBydVBjUVVXczBqVjB0S0Q3WVlhbDg2cmgzaEdnS2ZGN2ZMdTVFUDV5b2I2?= =?utf-8?B?NDc4R1dRdVUzSXM4VWdxYTZwejgwNVNVQnhoV3A5eFZQZXZHRkhXd0NSRTY5?= =?utf-8?B?eEpGN2tZRlBDUG1SR2tUeitlREFJbVlKdDFnQUo0b2MvMUR5Z2FJbDJ5eVVN?= =?utf-8?B?RDQrNSthQkFHVjhiVGduRUtDMDNjVnNUMlNvYnVNemdZbHRlOWdCemhSS3Vq?= =?utf-8?B?M2dFQWlTQys1VkpZNU1qcDUrVnltckdvMWxhODFJRGpPUXA5eGhDWEVrZlp1?= =?utf-8?B?RjhhSFplVW42THpvU3ZhMFp4Y256b1BoK2VxanI5TGhqZzhRMFR2WWw0VDdm?= =?utf-8?B?SDdkNTRGWDBXaTFzTXVCaGpleGp0bDh6RkVWYXE1ZUs3S3g3VHVFS3pyV21S?= =?utf-8?B?SlBZRU1rSWxueVJLcys3Z0I5TlJlMzJtR1RqQ1NyWVozTlN3Ti80ejYzY3pL?= =?utf-8?B?Sm5ralFObXg5eVpCTWVhRnRkVzRkZFEzQnBQekZ0b1YwWnk5cjFhcm5QVHls?= =?utf-8?B?bFRzcFpSK20zVTR4elhQbVI5c0dSS21OenV5TDZhaDR0N1RHUFA2RHFmdGRa?= =?utf-8?B?U1V4Y0FNQ2hwMERQa2w1NjVGWmVaRnpKblJEMGpOOEhKUWxjK1c2bFlrS3Bo?= =?utf-8?B?cXRYTnYvSFNTSEVYRUloa01KTE5DSmxQQ3luT1l4S2tCQ2x1N1I4a1dqR2Ru?= =?utf-8?B?L21kS3hMYzFXdmtqNklhNDAwblF0R0VDNVZIZDVMUVN6VWFZWEtwbHI5OHRG?= =?utf-8?B?MFJXVklIcDdHQmoyTGl3OVB1b2tmRVgyUGxrUWltbEVGakRoMnpjNnZZdElo?= =?utf-8?B?Zlh5YTNteFovL2ZrRzZTRURkUUxLN3VnLzdid2UwZVJwdExFYkVVcmdYTU9Q?= =?utf-8?B?U0tRSHIzdVRIYk4rZUNpbitGelVqM0NwNXppdXhQWDdDd3RiMzFFeXpVUjQr?= =?utf-8?B?M1BIbGVicEFDWGhIQURVQXN6YU9XMlhEcDcyczVkelpXUGMxQklsZ3FFbzc1?= =?utf-8?B?eVZOMC9NZTdPU28zRDJWNGo2QzNwN1pieWdHNy9QZ3FqazFUeHJXVno2bGg4?= =?utf-8?B?WFFUV0pOMVMxdm1hZlEvSS8zKzBaRDN1ejROakUvTUlCbmt3dytRajR2cFNX?= =?utf-8?B?QmErOEdyMGhIK0xhUXQ0ZThsa1I1U2tna3c5cnVXK1ZwdEdqRXR5SWtsb3g0?= =?utf-8?B?VlpQNDd0QmpUdmFkRGl3WTFQQ3VxUnRUT1JudTg1K0ozdE9rWWRuLzRsWitF?= =?utf-8?B?b1kyTWNrM2lER2JuNk5DVHZ0ck9Ha0ord2oxbkRlS05uQ0R4bk5JQT09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 744eb68f-2a81-4805-5507-08dea5279ecf X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:12.0502 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: u65Hp+WT9r5ptILcR/ahLu9O/HchJXyZDH4KzEqqkSYNr6/T3E/n2uE0RplqsvZNwUuSL+0TNdEB/ZDcSrNffg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 The `generate_projections` and `generate_the_pin_data` function already receive filtered field lists, they do not need to filter out `#[pin]` again. Reviewed-by: Benno Lossin Signed-off-by: Gary Guo --- rust/pin-init/internal/src/pin_data.rs | 4 ---- 1 file changed, 4 deletions(-) diff --git a/rust/pin-init/internal/src/pin_data.rs b/rust/pin-init/interna= l/src/pin_data.rs index 6b1b8f26379a..76cd11bf28eb 100644 --- a/rust/pin-init/internal/src/pin_data.rs +++ b/rust/pin-init/internal/src/pin_data.rs @@ -258,8 +258,6 @@ fn generate_projections( .. }, )| { - let mut attrs =3D attrs.clone(); - attrs.retain(|a| !a.path().is_ident("pin")); let mut no_doc_attrs =3D attrs.clone(); no_doc_attrs.retain(|a| !a.path().is_ident("doc")); let ident =3D ident @@ -360,8 +358,6 @@ fn handle_field( struct_ident: &Ident, pinned: bool, ) -> TokenStream { - let mut attrs =3D attrs.clone(); - attrs.retain(|a| !a.path().is_ident("pin")); let ident =3D ident .as_ref() .expect("only structs with named fields are supported"); --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020087.outbound.protection.outlook.com [52.101.196.87]) (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 12F1D4534A8; Tue, 28 Apr 2026 13:11:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381884; cv=fail; b=q/Z5tVisZ5RBmtZlN2z01QXhqgGuYXXDtqVQMMmVeZ8BmLSlGfjmPqOsQ8tedBy90yB9Q4zVuwR9C6elHBuQ+9h57BkJN8H3RdAG+fJPuM/NmR4qWz3BtHr/GVJWrDtDQ2q+NG5Kp+zgGAcm0aAnNO1DmlqY3BMPd8C54yyyPUg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381884; c=relaxed/simple; bh=3Rwt3zzQHty8Gm4snbuEPik+ZHfZDu9bOgUlGqRP8ps=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=XZjcR8XeL1eWjibmTDl5KtCNxwbzs6W4K7XwFCLVbPU+5Rru3iZoYvDUH99+8InPTH2pLFbTndSgj/YViS1OT1cKSopfe5zg3TjStRb7yUy1tuJ3R5lxDvFkTwhffoU6LQCXW8xba8JnQVZZ+5PNSBb7i0/J63uG7g4XAbo8nQk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=lIk8U6iv; arc=fail smtp.client-ip=52.101.196.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="lIk8U6iv" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JuNoBm2lfddhUJkvTRNGv37xJuIBs1HXNqT3m8XxwnuRETqmmE3L/g7MRyAxpbKNQbvNjdS4g0Z54WW4I1aylpbSgKV7MazSwNszi+V9/e24/hXOleRt6oa/5rqAo6+GOuZ2EUUH1PMR2LBR9lKq+CXdrkjDH8dN58CpTQuSSV4/1LN+ZTDFdt2AuzT3rwjRJeISc4sKMOqOeffSRT15uyJUZCSJj1oN/5L3MFv0i1+TLHyfRUV37omCRKLB1Zef+u3IxnIImk39sK6GWFsGk5UTbYbKegEwydbPtvHbYpSS97lLnjVBagpXS2NPc2krhCW5jCNMkYQ9YLysfXYGKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=bv8xUUmNfVsLphLzVsMDkVszu/fCCNLM6fIp8IxYu5U=; b=HJK5JspzapYAmma8HN93muXfgzEDNhwFhGDdk3ZXTjMAZZAzBb4R06MRO4ZQKarwngxVLHcP+2o6XJScNKOynMSJkseaNf0/pcwtkaas5ApTmsV5sHDwaFBOUAcQbt/weWgWtk9NiNGVMhK3JTw0b1HtxaxpVOhh0VJYI0VMMJ+4gjUElSpScXdiB/mCtEypa/ddY2PmCgp5NvHLjYbyoD6WIVkum652Mkf1IA1uYwFWmowughpfVCDIXY1KOhRYfVzwm5WXa4/kd98F81sDIgOLa+Eg0CDJbCxl3Th8VImVRvsz/k6Cdc6YGfpQPQvrsbYVUPiJJhWR4CkF3Jdjsg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bv8xUUmNfVsLphLzVsMDkVszu/fCCNLM6fIp8IxYu5U=; b=lIk8U6ivX6fnr5ZLCNCr0h00iA9Mx/L6qogfoprnGNk/kH2S0aedcLSZOnTrvCdJ9uRHyW7fnWRXR2TwubFLwjHk6OyX19gSxA+Gi51Eue8aAb9BSjGYwDmBtWtxIuF/P2AgxTI2lYt6UtLDz9+r8/5Zd7/sUmxw/VIjx0iZbNE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:13 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:13 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:56 +0100 Subject: [PATCH 07/10] rust: pin-init: internal: adjust license identifier of `zeroable.rs` Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-7-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=948; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=aT3akBHTRPKIoYgyL4LPcy8dQ5L2NOHcw++JOY5ud00=; b=fwn6dlZWVRUT7QR8emOjjqbzhJgIV2MRLbHojhhQ+e3MbUP3Gex3mx9Sfm3nQhSnjVJVwkm6w nEtsiRZNekgCKm4+jGyQaqdBzcf5MrwpcnBRs044i9CPvW1kJQjj3V5 X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 6d6f26bb-a564-4936-faf2-08dea5279eff X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: D18Ck76YEwn9XdXKiKupNRNpt3ZtHcAE8pAn0sMVO7Fp+KtTc4MwY8Rmj/Cz8wfux6OH+v6wGDJo6LsrleBRR3CODKsAi1905kNYEbmRHPiuWn3q0XChMfvYVwqxpfQoAcnPVIP80S6imHffywyEP/vhYyA/0WCuK4omRKLaYV2sTczczXuf2nWxVsJMcjYEmfu+yPvFx8g/oXBy9aS+D8YMYoz8EOjCvHNqbnniSJ4Q3K8M1z0JUeakKngGm7WcK3+20G0ZbsYUiNFqf6z4XMkxsSoV4TBTYX0b5D0+FSKQxu9/WY3DtK/PkMEXIo85XjjNpzIs2G+MPMh7IUquM7JVLYjwPw5UhCLm/DJZ3RAA6N6dM11epfbfNt5cboFf1Evi29ClLWGkVaDIot506yHiu01opXpUL0dtBJpE13nWC7OBF08e1eU+VmjkpX25eSwZZ6mYyhsCfXknUkERrL2S9zrJFen/vIjCsgLa6dX1zGki1qlVpUdr/lp44wl31j8T17umJC0UE6Uf6PXwJ/1sRX9af5rO7g7G0x3whE5OMPi2pnEpqSWTQaPcMkQM5L2zuJLQY0H29ASQaJvyz4WPvJV4zfVSvYRv4PLXx4IVtPiA5v+GNmDZsyL92XXSrM4DQ3gJ9MN2hL7emLvWf6x0Fy/bvW3sBTdfh2dBJKeYuO72v8wpUOYKwZmGi9j+1u/OAKHDS8zgBA/+ThxZk/vrRyI7i2wEbS9vz2w/Xpc= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cFIyZ2prWElEdktsaXlGOGxUVnpSbUphZ1V0UVVPWmlhVnpLd3d2T0xXOFhH?= =?utf-8?B?YUtwVXFRR1FMVWo2V2x2c0U1bWMzbzJnZ2hKZmMveTlXUWdnaWVSZ2oyMG5w?= =?utf-8?B?ZVFIaGt1ejAwOGgyN0xVRDUrQ2V4NUh4UUcvNUhBUVJ2NGZmZTZxVDJ0QTV2?= =?utf-8?B?OUI0aGVhaUtmcVprNFNqb29hdTM3ZkhHUjB4Qk03S2VFZkVZa2JUUjBWQlBH?= =?utf-8?B?WmloN3JpVmFZeE5tYlNwbEtnc09oeEhkdlRMVEUwSVlnV3doNWM0QzNYNzFF?= =?utf-8?B?blZpSGlFcXhLYWE4akMyeDh3TmRBdi9ueXQvSFVtVEFzUjgzNnBaRjB0cXNO?= =?utf-8?B?LzFhNmgxdTd1ZHhTdGI0OHJubnZJTUJQTThYOGVhTDQwTmtpd3hDM2pWVnJW?= =?utf-8?B?OTRjVDJONVpPdnZYbEFpa082c3l3aVRQdWpWcVlkdG1ZQXNtS2wzTWNzU1pU?= =?utf-8?B?cmdiOU1SVDZZcmZFQzM0T3k5Nmp6NmZkaW5Uby9wWnNvNDR6VE5WaVFnQzB4?= =?utf-8?B?MDZpcWZtdTVRbEY2bDBNcWxHWDVTbHVNTXRFaWlOUitUU0VtNS9ZM0hlTklH?= =?utf-8?B?bHZNaGU5M2p4aWV0ZVFsZU1XbFkrMXFrMnRTeVUwU2pvbGpqRGJud3hQcm5n?= =?utf-8?B?UUQzRG1HUVduTHhwVnRYMlg3V25rN2Qzditmc1FsZDBDZ2hZMFlvd1o3OWZ5?= =?utf-8?B?czlNZkF4SjNqUnFHTzh4Q3dyTXJWc2hFcUNhMG9TSmZBYXpGWmI0R3hEZXp1?= =?utf-8?B?VXNDN0tVUWJQL3FTZWxncHo5emxtdjgxOEZMQmtjeGdXR2N1QmZoZDkzVE9L?= =?utf-8?B?VmE1bEo2Ym1wczdPbWhkN3QzM20xM3I1a0xRd3h2aFBtVlZ5VjNSNkZoaVZL?= =?utf-8?B?eHZVS1FLdGR6NFQrb0tJaUlqMjQ2TExMb2padVlaTUpCK1M5R3p5TXVJYnZM?= =?utf-8?B?aTErTHgvZkV0cTZtenl6Q3Jvb2dyMlZSSlRPdlBaaThKNDZNd3lmNHNuNm9n?= =?utf-8?B?YW1CUm9MVGRJL004VERWcC9Va3V0ZTZXY0NzcmFjYXZzNHFBbXRBZy8yWUo0?= =?utf-8?B?ckdLT05ocVE4cHlCQ3ZEYnJ0dmw1K0RGTytCU0VBNEp4Wk5rQjI1YWVoRm10?= =?utf-8?B?TXM3YmJkdXJOOHFvTVFFWmVUcWpMNmJiTkJDMS9Ia0s4VFU2UXB1bWRmbnhz?= =?utf-8?B?a2FOVlhWaE10UVZpYlprVXI1UjVBRlB5eG4rWEtKUGxJRGdBRFJvekE0TFZG?= =?utf-8?B?bzJEd0FMeDJzZjhRUmEyYmJNSXpWS3BtdE16VUJnTlp3SmQyZFk0NmtoU1V6?= =?utf-8?B?MmNsMThRNTNKVy8rN3Q5b0pMSHFTRGxHQTZLaWo4UlV4Z0NmY2FSZGpuemxR?= =?utf-8?B?a0tFZGJDNE5VQnFFZWt5UTE1SjZYd2Q1dHl1VVVlWDNMUDRhTXVQcURsNUVT?= =?utf-8?B?NjV6czJ0YWc3NzdROXlFUXR3TkZJWGd2ZHAxTlVNZVBKcXVBMGVDdWg4Vk8v?= =?utf-8?B?UEpPU3l2T2ZCM0hFa2lsVkJrSy9ueFB5RzFrejdjSGFKUHVSRVQxaFBMZEh2?= =?utf-8?B?K2VuNFJoQ2hzSkdQN1pjQlY5UitJNU5ZTUZ0YXNvNDZlY3R0WklHY0NlRWpq?= =?utf-8?B?RDRySFJJNzhuOCszRUsvWnZ2Q3hzMGpjUHFpc0NyUkZheTZqNUU1ZlRyQy9m?= =?utf-8?B?YVo4ZldoNWZCNnNMYmlzTC9IRDRMUlpSNlhDMmR0anJUL1ZVZld2ZEljSTJC?= =?utf-8?B?ZlZEelNjeU5KTktuQmo2WEFkSEN0bm1OMVZwQUI3RERnVlZQRnA0UHREU01P?= =?utf-8?B?WHZmbWZZeWdxN2VzTHVsaU9NYmhKdVhkZEY1K2Jva2lyS0RESjNVR0MwVVox?= =?utf-8?B?NmhZa0RCTWlvLzZ4U3QwQWNxRWtXc1NYZmxEMHBYcGtlVjZGUGpHTGdxdmdP?= =?utf-8?B?eExSZHRvM2VxdmJDOWpNM1hqYzZ0Vkd2Nnp4RmFwYlpjYk9kUUJuWEhyTFNB?= =?utf-8?B?YUpGZUhzT245NzU1MkVKWkFYQ2hkZmFlUFBxVEt0V3dnaFV0bGk4VFp5K3RT?= =?utf-8?B?MVA4STNvYmVuUHc1Y3ozdmg1anZ5TndhQUpOdGhYclBmdUw2ZWl2dE01NlAz?= =?utf-8?B?Wk9oZHZ1M1VPTHRSTjRXdGdJcy8xSXdraVZnVjVmOTVxWlNmUVVkSXQ4eGZj?= =?utf-8?B?THF2cDlCdUFpQVZ5c0cvc09vRTlQOTY0TXNRU2lsS3E2amJDWWtac0R3d1FB?= =?utf-8?B?SWgyNzFxREpaRkFlajNKUkxTZW1NVkN4RkM1UE5lS3lEcEtjUHRWUS92TWx5?= =?utf-8?B?THdzbWVKVkdRNkhxWSs5dlVkaGROdHZPNnl4NkJkUDVud1NFL1Fpdz09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 6d6f26bb-a564-4936-faf2-08dea5279eff X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:12.3628 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OeRPMo02EI/FIB4ORQC8ic1XAlkMxC7mH65T2M7WMIa9rTmbWiSaoscate2kcQ39klT/SM2eFrq+rtCWq9mNdw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 From: Benno Lossin The pin-init crate has been licensed under `Apache-2.0 OR MIT` since the beginning. I introduced in commit 071cedc84e90 ("rust: add derive macro for `Zeroable`") `zeroable.rs` with incompatible GPL-2.0 SPDX identifier. The file has not been modified by other authors, so relicense it under the above license. Signed-off-by: Benno Lossin [ Reworded commit message - Gary ] Signed-off-by: Gary Guo --- rust/pin-init/internal/src/zeroable.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/pin-init/internal/src/zeroable.rs b/rust/pin-init/interna= l/src/zeroable.rs index 05683319b0f7..b11feaeb1ca6 100644 --- a/rust/pin-init/internal/src/zeroable.rs +++ b/rust/pin-init/internal/src/zeroable.rs @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: Apache-2.0 OR MIT =20 use proc_macro2::TokenStream; use quote::quote; --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from CWXP265CU008.outbound.protection.outlook.com (mail-ukwestazon11020105.outbound.protection.outlook.com [52.101.195.105]) (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 A180C45BD48; Tue, 28 Apr 2026 13:11:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.195.105 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381885; cv=fail; b=P0XV43eeZqrwIvxuMLE6QHEXzKcrYr/irqD5JaDNmJM5mhqQJ6Ng4+MhMRkRzKEPvyJuRLZ4n/d9mMHep33wrg8R7avLk4OxPoB/IV3uD2ZV0FB+othzFQ+R6UUlNFIubt3kQnRiiLVSwwjhyrZYshqBPtNVvoWY245l+0oaERQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381885; c=relaxed/simple; bh=dL6G2NdCiZkxu8ZbUHBrGdL/tHklWsrAbYQccZ9ZsmY=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=IYeJ2RFsgmVe1cubjIsD/zJ5kDcvZZn6QO2sxL8btLmJuAv6w+ud3dXmvR5awH2DEieGlqRtHPseYCDkK4eKB8bSqAbdUFOSTyA8gad6p/YQXOAw1AVkNnhmoSVtIUFxMR/TSCHxrOh1uwyUVUMrHYlAxxUBmFO+epMy+FzT+nM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=Dc2cjuR9; arc=fail smtp.client-ip=52.101.195.105 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="Dc2cjuR9" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ZVDuZujp5ezVjt9i75iorhF+xLfrqBWeQbgZ4xUA0fPIs6mSNtjlzuKF/tecWpyUGAfwohdd+TDe9oMzKMpc4h2ogPiZeoFm2qtFgW8JR80a+HFlgPwXQxchx7fpugP+5kYuC51AK6Gdnqw89pxTR1y20cAFG4a7zbTE7n2dxgYWl0kYAKq+SIBH3Gg3eOobgCpTaOtprcCS36VAdaqo2RQeLdGv3zgTQaYmMSe4ltg3P/DGpH6O7jiMwqcsPczycY0IVoo+IjSBQpywkYoGcVGllzWDl0AWAbtVaHNvPnFJKZxqETwAG1iiytCM+8Vwt9bnWMyNfTBxLKNk913GGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=GKhWTrcxvCcvhTqwhTUamkZdc9BiNKvRiQlpdNCzUxY=; b=XdGyOl9pT1JGgvJHbHKuianGQ/ZWseJbvMwsRX1YpFtciV5WdHy3h2AJYVfXO2tTuwUMsvDVvLYngyAlSBSmDDf3x7Fc7MCv7tjmijQiebnV4if3sV9oUV4794GxN+xDRiBlsTH8AmLqxNTkpdLSFO3Y5Qh0gKH72PFEvKFVswPsmgN4dhmuANhtTJKj3410tcnKeDsYt1ct3cJ1AVsVJZH2SNiQfj9KsKBP8N6m/0F7k0NmurhMLInNmt4cQFTuzwrpqnj0tUkeVT4+A1v+GPIaA/wZnDGK8jRI9fyysJYsMZRi8vv6Lsf0oy/VRaYQKeJsKqusRBqlgo2P3zuqjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GKhWTrcxvCcvhTqwhTUamkZdc9BiNKvRiQlpdNCzUxY=; b=Dc2cjuR98gkB3+AG3RsakTgqKB3dd4YmhnXqc66FS1hHwkFe9XxJ5NKdvOHZ9O+Jx5kwjmDDWqi5v/IgAiUk+9ZaUbj1qpM6LNVtk8MoarAoIW/gh+AIjqYRK7AFRYoSiGFqPRj2IfO+7e5DgxePhxYfSLz9TUlT1DKAy4i4JP0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:13 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:13 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:57 +0100 Subject: [PATCH 08/10] rust: pin-init: fix badge URL in README Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-8-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=967; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=dL6G2NdCiZkxu8ZbUHBrGdL/tHklWsrAbYQccZ9ZsmY=; b=s03Wn8uQ/xvXvHtJkqvE1usrSEKktKoy7j7Uv0E1m7zNReXw5S8WZn2It/Tg1kdg+xHaiH/qr k6xhNG7fEiGD+jvcBoANcqPyuvkHk/8pgXQTFhdeVYU7ikuB1KWR3XV X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 1d7710b2-aa37-4a7e-209b-08dea5279f2e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: vkSo9uEnhBaDEjm94ySxAnQT8AVFTYZTNNzyA36pLurAn8/yp3WddZOAWF1f4pxwotQMXdS9IgOYdmeO2cowA4P470ZhUy1baDg6vUWYGKJf7v2OUNMQVcUh/826bs4EP0CgMHAqs7OjQCRCe3lqop/4FsHAEmqC/fw+bcAMpjDfk4psOi5bV+5haw+aAfDZR19e+oV+E4V/Do5wJ+WPgFWcNAm+zLSoI0aFGMqK/gwSQ/2ry+ee6wYTG3uUulmP4OHwCoHv8WzOqucCFiwPISsjjSNbenfRu1npBFDDMZshO0LwbCGG9QbaCby+41WIA/GFpUKKp/DQANGGAxdK6VGJT2jJtWWUbJOGCKX7cLgCDBDP7eeh9WXpYSwdFndZ/iUkIkTvzH6xIKUfWudrerXLAabGAH3uQFS197eiamoSG1q4t5iMU0QTVSJRPHpuovOCeZX1fgu03sBhcvgrDKQVqCPSL/KkSLr0yzw7IJoHA9tzRd5xBMMg+GsIFhM58gMxhxCbgLQ1am46GDlshDa47im3pwgPMUJOs0XDubW6oW84Cl+zy0gpllkGqUWK1X/jc6OFWl1wvFGdYzjNvIoz5eANT7yShiZziTg0o8Wwx3P8v6YDPg3gN9eR8SRaIt+BEhw9g+3rM315Ik6e4M+IzNeACykT7wdmQ9CGsnrn+zB4i7UnW4kNfdA7543o X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dmU0VUVTVGhpVHZpK1d1U1NQY3JaSkdFZGtRRnMrOFNadnhNcWV3dkV4VjB4?= =?utf-8?B?QjV6MmJOQTdkejY5S3kveUtrbUxJcEVVeHJrdHREWHRtUk01TDVvbUhVSmlq?= =?utf-8?B?ZHNXeGJyN3BTeHhYTldiZ3RhTGRJdjgxV2RPV1RmZDV4SVhEN1ZsajlaZXpn?= =?utf-8?B?MXN5VG52T0xRZklrWGF2bWdERUtYUUxlM29vT244c2hmWGg2dDN4QU51b1Fk?= =?utf-8?B?OSsvcTVKU3NDUWxtcVZYQi9kRHV2OVlveHFxRG5YR2lFWjZ0dnhOYkNaZ1U5?= =?utf-8?B?SkdBVzBpY1RDVmttOWVVNFN2R01MQUlWVjlvT3IreWZ2YnhhVXoxdG10M2RD?= =?utf-8?B?QUtHV1YwUEpLNU5UWkRBcmNIWkhORTVXNkVQVVNjSDFiWTkxNlNReDBWNmZx?= =?utf-8?B?RjRjZ2xPd0c1cFdFeHJOblozT3BqaU9ZOWNROGhaVzBZWk9ya00zdnBVcHhS?= =?utf-8?B?L1RFRzY0M1ZNUExpOXZ1WnpOU1pCSVFicTFaRSswZ016b2JybkdDbnpJcVZI?= =?utf-8?B?ZnNRSE8rK2FWeHRGbGQ3YkQ2d1MxdGprWDk2d0s4RGVSWmlFUkdxTmJFcUoz?= =?utf-8?B?emk3S3JYMWtNUzd6LzJ4SG41OFhCa2lENHdHQ3gvZ1dEclJUeTVuQjhqWTF0?= =?utf-8?B?VlZURHplSERXY29GUEo5V1M2WjkrbE1iajhWdmNtMzUvWmdVZ0pXd1RYanNl?= =?utf-8?B?YXJYTkVnUDVodVRZNW9NTWZjN0tuUE8vSHQrcXZ0NGxjQ2p0endkeVR6Z0hu?= =?utf-8?B?dVNzMytVVHZ1NE5iaW1qeFBleFBlbGoya2xRZ0gzY3BmMFBPZ2h2UkdPcnA0?= =?utf-8?B?WTRDOG9PNG4zZEg2T2hUbXhUamVJeGpqZHpjckNVMENXWnYwd0RCQnFDTVY2?= =?utf-8?B?ajBGaU1VMkdKY1BRZWdWbXJaWDhBSjBWeXRLOWg5bGJ2Y3c0UmJEbUV1MzRN?= =?utf-8?B?OG1yYkQvYzdYd3JPaUx6cVorTitCbHpjU2hseFYxSnkwNEtmSjdVZ3JsQWtl?= =?utf-8?B?VzlBNkdrTmdpVnV3MXAwNms1SFdnT2ZTVEh1eEJsMlBub05Dck5TYU5JT2pQ?= =?utf-8?B?QjVRQW1JbzZMUVNRY2VNdUdnTGFxeCszdjI4YU9XaHZURlpZSzNsc0VRUDM0?= =?utf-8?B?R3ZYeXhhbEpjU0FsWTIwZnhGNWMxU2RFN3Jjd0JHOFpMdVVyb2dXR2hGVHFZ?= =?utf-8?B?bTBnTkpYU1pkVEFBVGswUUpHSGd4SEZ2NHdyc1ZwdEJ2TUZkalp3dlI0ajZx?= =?utf-8?B?YldXaGxkZkFjWVNONkVrNUVWNUJwQVRvSFZXMFpPSzNsbngzdzJ1QUNJWFJI?= =?utf-8?B?MWIwbTNQa0Nvd2pVZUh3VmFSU1llcHZRdmVlV1h4N3pDOEJrdXhZditQdmZt?= =?utf-8?B?TnprTzZTUEFYSVI5RjhUemExN2lvcHQ3Q2lUZkZFTllGR01HQk5FdE1IRWJy?= =?utf-8?B?NENQTlBnZlRvZGZFUWZsU1dUclRncS9qaEZhRHd1eG94MmMwMGFSS3dJVHk3?= =?utf-8?B?eW9CSC9HZk1hNmlXUTNnUHp4TDAyNm1IN0hYM2hMd2VieWs0bXU4Vkp0SVJi?= =?utf-8?B?NGx3MnU5Y1R1c1V3VmdyT1VPeEpRL1FSUzlJR0pYdDNmd1prYnVETDVzZ0s4?= =?utf-8?B?V1M0NThGVXZRTTBLZ1lmS2FGNXloUmdrdVNoY2d1TlROcDh2Q09HTHlxYjZi?= =?utf-8?B?b3d4RHZhcll5NHlMaTdrVEdOd3UwYk9US2xnSXI5Z3FsUUlIZFhBN1FKc2Ey?= =?utf-8?B?bjc4aXFtcnNvSCtZVkxCMmQ1OFJXT1RTTUxZWWhNL0xXTndaVjNPa1crQW82?= =?utf-8?B?QjMvNG1zR25oOUtoWlk5eEN5ODlUOWlTWEZBWGN5SzBPYlg1R2RJbnA0bVBZ?= =?utf-8?B?M0tzaTlRWEJxWlYwNVJyeTJ3S2tlRVRTeTRGWTQ1d3E2UGVZTGhnTURsWXBa?= =?utf-8?B?dTRoWHkwVXQvZVlhZURiaWRFeGNpQXFEQm01MHpBR0V0ZWJyYzh6SlNMUDlS?= =?utf-8?B?NTl3MHBpZVpSR2dhMmdHbk84eTdtS1VMcU82N3dOb2xsd0JrckJJS3pXWUk5?= =?utf-8?B?SjZHTDdMYWViVVU2blVuNW4zTThab3BESXlYS0htMlZiN2FxZXk0TCthKy8w?= =?utf-8?B?Q2drZ2k2a3Y4UXoxK3FPclE5RXptVG9MVzdYV3FaQ0Y5bWUzSXJZNENyTkZD?= =?utf-8?B?Nk90TDdpVmpTclV4VlFCMEZkbS92a0cvbDBZei9scXZQY2pqZkV2eUQwNUxT?= =?utf-8?B?alJlTUdKaUNyTTZ2bUUwZTkwb0ZhY1dvY2IwYTFIb3pUSEFoR3JISFRCZ2dW?= =?utf-8?B?cTdpQW95NFdTZUJGak11YWkrWXVjL2o3SXlvYjlOTTdlV1JMZFNYQT09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 1d7710b2-aa37-4a7e-209b-08dea5279f2e X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:12.6636 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: X2MXiDJtvfmzoeF4I8Ht8iTNFd9DCUGA6YDXLvtDNxdUuOZkJ8PbMGk7ywlBzpzIHEncqHxOgOQtqFcSVH6bEg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 The old CI workflow has been deleted ~1 year ago. Fix the URL to point to the correct one. Signed-off-by: Gary Guo --- rust/pin-init/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/pin-init/README.md b/rust/pin-init/README.md index 9095d6661ff6..2312c9e75f8c 100644 --- a/rust/pin-init/README.md +++ b/rust/pin-init/README.md @@ -3,7 +3,7 @@ [![Dependency status](https://deps.rs/repo/github/Rust-for-Linux/pin-init/= status.svg)](https://deps.rs/repo/github/Rust-for-Linux/pin-init) ![License](https://img.shields.io/crates/l/pin-init) [![Toolchain](https://img.shields.io/badge/toolchain-nightly-red)](#nightl= y-only) -![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/s= tatus/Rust-for-Linux/pin-init/test.yml) +![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/s= tatus/Rust-for-Linux/pin-init/ci.yml) # `pin-init` =20 > [!NOTE] --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO3P265CU004.outbound.protection.outlook.com (mail-uksouthazon11020087.outbound.protection.outlook.com [52.101.196.87]) (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 A29284611CE; Tue, 28 Apr 2026 13:11:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.196.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381886; cv=fail; b=sAP2GdLmEtRqppLvRgX1YSYwlL9/8BTnrV1aP2DZk03lcdtncPtmcZxeIOZL9RmUClUWfNiAS8HpbXlwTsB1YJvRFKvvv/QVXpFNQSxDjxnx4c/YcpwrLIzAHpBK2mWKTlD3CXvtFPJvksC4WG4lUQGKwA52BCN3tOB8QKyaA4I= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381886; c=relaxed/simple; bh=ryR8NMIWDwhV9VSIkG5gm5Xgx82YFxBQLW3qGHL7cQs=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=CDUdAOIRmoM3MxHTodOtbpVArqM8JwU9Ukgn3ruf6yxd3dVjQRK99iKj0JyntjeTaiznNvjcZXCUvNxX4FgjpRPcc8PfOxkYVr8psGmFAqs7d9RLyDJFUOzU3WDmJ8mSDMbKedyWBkWJdippXPhbjev3iGow6nAi3RgiZ/MRbKY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=hWMBWwtA; arc=fail smtp.client-ip=52.101.196.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="hWMBWwtA" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=By2bXoKbWnsc/tFSXJ6e4/0nCje2v4EOok0juD/+ev9T6exAyK9sbQsNNtFG95xfvAYophuc5H6+viA02x4L2LNgwO9El4QASNehNWHJTjatSN8neGjs6Eevqegsct1UTsyKnPmsFovFI+2hyWcGEJtZBYvl5W/qTAEd6tAFsXE713IGcNUoVhV3YlvHG09Pp2oCbJTwJryc5BwQhFDiCYqJkeyRE1O/VWPRiqhttfMkRusQuqVkU4eL5KY+yqaj47zFBbV5gAt/Rf5dyKtWT0/jzGXhfp931v7TyjoQ/7ikJHmTZ1vB/w2tQUj1ZFOp/8djBgO6vOtnppLM3565tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=nYs+nGdAVxb/9Kzebt/wE7fwSkzjXzYRnjI9jcD9i/M=; b=rXYGSMdlsRXzzKdqF5P/aRVAr7bqDpiVLOjhEWwHsZnZmtDuCDkRb4NYhIve2YqiygdMjeTEiTh+dLbt6xlMrl8OLupk1ZcyElm6FkoTQXw7FikFzd14BWm62IekIG/qMxM8sqrPhQN3UNFDlPXnMCoO5y0XXibR8Ay9GXX/cKd3VuDvS1wZQcXXX3X3KtugxmznQnsvi1B4MGjTyqIOl7r1bPLGF/mj6waVCw7NmoPirPbItTi4y4+m/lEnkFYtJB4WB19mU74UAXjo0Mw59zJd5YYEYHZLSLW202dPcSUTwEb52xIHuqTwMUt22qayKhDrrU2zb1jUIyw8OGejqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nYs+nGdAVxb/9Kzebt/wE7fwSkzjXzYRnjI9jcD9i/M=; b=hWMBWwtAVpKqMGBZWItzXMrcewyT6pxX3AP4JtbHnQ5L9qd1eu8LWeSo+NICVhYPfd/hfISGD7NgevoH47vBi6ud6/BhVjQNNt2bXnVrJwGETvTdEYMJbjBbqxO4/HkiHNYSM7yfLKV39eWEysTwgWUqEhiaKUMiCUtkJpnCGhU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:14 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:14 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:58 +0100 Subject: [PATCH 09/10] rust: pin-init: cleanup workaround for old Rust compiler Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-9-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=3124; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=ryR8NMIWDwhV9VSIkG5gm5Xgx82YFxBQLW3qGHL7cQs=; b=AOYDDOUPXiuXQRV3KOVOmKhN/UhS2IKRQUmHMwlSX4G8GMpo5OykYI0HpqKN7jirL7GsAqk1X F066hJ8P1MbDn97Rw4nHhZ+RpjMlhD8DfDW/DihpdcaQRX2VL0sKJzT X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 92ccc6c9-46bc-4232-19dd-08dea5279f5c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: RpkoxSsRNTWGzVA9PBvFLAfZ0NIsO/ZNHhI+DqgkeRMVX63SR4A8KeQwoOEsbj34bxeFwmPvl4maZeqPU1aVPGmnlW46FZUYfBkBIPJhWxZGk04jXV7crcNqo1eyJPS7AAZ84MvNzb2wHhMxfjQGR1SIVfHIKfto2tP0nd3R6Fbd4mGYoafamp1gIM77HrAnEzIFW3MWuvIwMEbHkCmpAv/Mc+cwYj4XHKXVfTaQ8L7pyAYYUSi6O8ci/QF3mu/TNPr+YiSIeoYSfr2X3oghUjQ2pzdtalDdoSY2Sj79KQgQ/PMsKW2rEwOxaute77SQiWmjcwYv0jKQg4EFnLWfqKEDTigYZvNt3xvcj9kAO+ZoEymy4aEgoI4KB17RLaMKouvOgKw2X+vJMUJwKrRxAI4k1uLlP3JkwhmDFTdteAnMPfnL6QA0H2SYFcZmuixD9L6GvWawwFnIKTVYS2H6SA/c8L0EiDv8I0jg/xyxrni+Q+31bVURNSjg77+ZMMKsbAxkRH3zXxGmoa0L78NCwYIXbGqgY1nklJUmB+eWRts77nrA9Q6apMh3EcB2taOwdJXqqTq9p19ZkeQyk/8CFpSstwTN7tA6G/EwbkaHbaQsWybIdrOvJ7KpFC8NDywM6k0bR1rjtEcLMUroRvnxJt2zl7iX+71lxIr3tq2aa7iHCEWLJ0MZri71kx1+puRjzNewnNI2eQJhn+nv/XKgnEfijO3dSwpZMyRD5OdXnKs= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VE45NFhnS095U2FUVDdTVnFKa3pELytFb1IvZGNFUTVvT3B0WDBuS2x1dUh6?= =?utf-8?B?ZXZZRmQvMlBBU1FNY3NNMytFNlViNnlCM2x3UG1rZSsraldVbHVSTDZjWlQ4?= =?utf-8?B?V1NpZlpHVjFzZ3BvYVhsbm1GbFQ4ZWxHV2FwTFZFclFwWTkxUDkrVVAxZHg0?= =?utf-8?B?M2ZGRC81UWhqWGx5am9XU1ZrdDA4LzJiMm5pb2NZUjNvOWl5bFBXTHlsK1JM?= =?utf-8?B?ZjdzVnVDSlRacmMyWDRkWGk2QnA0Y01mYTh6QVRMM2RHOHJMcDNxZFZiMTBL?= =?utf-8?B?VkxZdWJlbzNGMUpFWjkrN08zY2x3eG9NREtjcWpQZWhIek5UYXF4NnRCbXR6?= =?utf-8?B?V0tCODdxbEQrWUVxOXZTQS8wWGVRbTRvQXVyQi9ENmF1U3RUUDM0VTN2LzBU?= =?utf-8?B?MmhtbmJwSTQ3V0N6MGxuMCtyMHppK3c5b1NzVjJWRE5JcFY5YTBma0JLbXVD?= =?utf-8?B?WjkwRE1wRGd0ZStsZTAycjhPdjkzT0pybzU2Q21JRjJ2WDljSDNlcXJLRm9E?= =?utf-8?B?MVpobVpZTVVwTXliN3FFbkpQdFlzTitCQ3N3Nlp1MUFqa2s1NCsrRGduREhQ?= =?utf-8?B?QjZJeVd6SktvNnlEKzZFVDlHQVJMQWZ5N1JmRVY1MjJNKy9yc3d0NC9jKy9y?= =?utf-8?B?UTN2U25PTzl4UE1za1duYSsrV043NnIySGJKc05vMm5LNk80Y091aFMxMmpQ?= =?utf-8?B?SUlFYVc5Vnp5SjA4UVJKWTZ5MlcyVFA3dVE0bXYxRTRpT3VrT2h5cE9HMW5B?= =?utf-8?B?Sk0ySE5lNWl5VHZHaS9ZYzJ6cXBwS0RaUXV2ZFJEcUl1akFkaWwrY2t3MG0x?= =?utf-8?B?bFV2TkdzMXhTcDd1UjZNTVFac1kxRXhTSFlQbDRPK3d4cUt5ZTd4MWNqNnJi?= =?utf-8?B?ZXNVNmdmRWwyS1FQSjNmRG1qQi90dHJmZlVLR21Dblh0UW93Rm11MWh4VnRM?= =?utf-8?B?ZGEzcG1XclRQNnVjV0xQRmd4Tkh3bzRCZHVMc0lDUmZFR25UZGphOElSK1Z6?= =?utf-8?B?R2tYSG5idEZLQTlsY1pzemx6NzBlTEk0VU9iNnBZZTFLbzVabXRoMGwvcWhX?= =?utf-8?B?Q1NOSjJVbkxIVlhPS05rZUVuNHcyT1hRbVRHb2s5THRxWUoxRTJPSjVQYTN1?= =?utf-8?B?MTZWYytYWHFrWUJ3TW9IR3F0QkluNTh1SkpsT3dXQTFON1JjMUJaaHpUb1Zy?= =?utf-8?B?N3ZsazhHY0tpSmpnaG5VbU5jTXN2KzA0UDF1MmpVVXJxdVlYY1Zqald6Y3RH?= =?utf-8?B?b0syRy9lUm5TcUl1NVNGSmRBTjdDSEtheTU1Wkl1RkVHTGE3MC9ZeG1sMEI1?= =?utf-8?B?YktORE1KUENjbFR2RktTbitkT0tPNmpTeFlMWmF4YXR1S1JqWTl0TlNrMys0?= =?utf-8?B?Rm56OWxsRTUvM0Q3dlI2RTlKR3M3bjJTQTczK3I3MzU3cEQ3SzRQL0s4N3RE?= =?utf-8?B?aWQyZlBjWmowUzJpOGprbWpOaVRNUFFOU3l4MDV0NzBlWlUyWjcvWGZySnlT?= =?utf-8?B?QlF4R1pTMFZMMU1TTitGY0huQlAwVmtvcGtaNVNjc0t6WG1sc3NEYjhoeDZv?= =?utf-8?B?aVVPVzRna0NlTXNJbmk5RS9LRkt6YWpkWTBIRnlxQmpTSmNiZEpLVUFROGd4?= =?utf-8?B?a1N6VlN2bUdhWm1iMWRuYUp0ZEF0ZXFVSGg0VHVRaGdpZ0czeXVhMnFSdS9Q?= =?utf-8?B?eVg0QmN0SnhjeC82VmM3N3ZoRG5jS0tnMk1ieFluMDBVdWhFTG52MmRpa2dn?= =?utf-8?B?cG9CQ1BETUljMjVBeEF6S3dXak5PRzZsdEVybmxSUUk1RGI4RTduNXRBQkFL?= =?utf-8?B?U2tEc1M5aWZEYmtVbTVxenNlTHVsTEQ2akJXRGZiUDR0b2pkVGhJRjBRNjB0?= =?utf-8?B?UXdaZ3oyQ2M5ek5ZUnIyOEJQK0N1SEVUU080TjBZVkJ4VkVkZXdaL0Fyb2Jq?= =?utf-8?B?QlBZbzRIQjdHQjhidDdOaFc3a01aYTJSWlVSWHZUYnVER0dBRm03SHpkb0RI?= =?utf-8?B?cDdPaHl5YXcwQUIzNElQeTArVjhBcTdUZFJlSTZBb0lqaVZXdXZRMGt3Uit2?= =?utf-8?B?Mm55QnJESm9WSDFHWFdMbkdqVGd5anVONDFweTF4L2NsbFo2d3JvL29rOTlX?= =?utf-8?B?bEpLWEdoWG9QdFYrVExVOWN3bEdKZ3kwT3VnMUJZVW5zbFRmeWxlL21TaXRU?= =?utf-8?B?VmdWMlFCSWkwVURCQ3AyTURNS0g5bURDUzZJeWErNk9YUnM5ZTJPbFJMSno5?= =?utf-8?B?YmR6NEhOY3dycFVmRXdDYzJPbkFIN01CaWNXbE1JS1BBdGsvajVmcTZzdUVs?= =?utf-8?B?WU1ocEoyVk52Ynd0K1BlVEtaVmlja3lJMm1LalRYNjBycmNLeFRTZz09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 92ccc6c9-46bc-4232-19dd-08dea5279f5c X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:13.0207 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DH+ciz3NYFRyVuEL3IfsU1t5m0a1N3JSYmeWnJ79BHsJ7WEepqKxrGyQpwnLCzbtvkY2J/58661AkCi7JQfMJA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 The workaround mentions it's for Rust versions before 1.81. The minimum is now 1.82, thus clean up. Signed-off-by: Gary Guo --- rust/pin-init/internal/src/init.rs | 9 +-------- rust/pin-init/src/lib.rs | 18 ++---------------- 2 files changed, 3 insertions(+), 24 deletions(-) diff --git a/rust/pin-init/internal/src/init.rs b/rust/pin-init/internal/sr= c/init.rs index daa3f1c6466e..a37309e7b10a 100644 --- a/rust/pin-init/internal/src/init.rs +++ b/rust/pin-init/internal/src/init.rs @@ -172,14 +172,7 @@ fn assert_zeroable(_: *mut = T) init(slot).map(|__InitOk| ()) }; // SAFETY: TODO - let init =3D unsafe { ::pin_init::#init_from_closure::<_, #error>(= init) }; - // FIXME: this let binding is required to avoid a compiler error (= cycle when computing the - // opaque type returned by this function) before Rust 1.81. Remove= after MSRV bump. - #[allow( - clippy::let_and_return, - reason =3D "some clippy versions warn about the let binding" - )] - init + unsafe { ::pin_init::#init_from_closure::<_, #error>(init) } }}) } =20 diff --git a/rust/pin-init/src/lib.rs b/rust/pin-init/src/lib.rs index 9b76cf5597c6..80c476e605f7 100644 --- a/rust/pin-init/src/lib.rs +++ b/rust/pin-init/src/lib.rs @@ -1139,14 +1139,7 @@ unsafe fn __pinned_init(self, slot: *mut T) -> Resul= t<(), E> { pub const unsafe fn cast_pin_init(init: impl PinInit) -> im= pl PinInit { // SAFETY: initialization delegated to a valid initializer. Cast is va= lid by function safety // requirements. - let res =3D unsafe { pin_init_from_closure(|ptr: *mut U| init.__pinned= _init(ptr.cast::())) }; - // FIXME: this let binding is required to avoid a compiler error (cycl= e when computing the opaque - // type returned by this function) before Rust 1.81. Remove after MSRV= bump. - #[allow( - clippy::let_and_return, - reason =3D "some clippy versions warn about the let binding" - )] - res + unsafe { pin_init_from_closure(|ptr: *mut U| init.__pinned_init(ptr.ca= st::())) } } =20 /// Changes the to be initialized type. @@ -1158,14 +1151,7 @@ unsafe fn __pinned_init(self, slot: *mut T) -> Resul= t<(), E> { pub const unsafe fn cast_init(init: impl Init) -> impl Init= { // SAFETY: initialization delegated to a valid initializer. Cast is va= lid by function safety // requirements. - let res =3D unsafe { init_from_closure(|ptr: *mut U| init.__init(ptr.c= ast::())) }; - // FIXME: this let binding is required to avoid a compiler error (cycl= e when computing the opaque - // type returned by this function) before Rust 1.81. Remove after MSRV= bump. - #[allow( - clippy::let_and_return, - reason =3D "some clippy versions warn about the let binding" - )] - res + unsafe { init_from_closure(|ptr: *mut U| init.__init(ptr.cast::()))= } } =20 /// An initializer that leaves the memory uninitialized. --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from CWXP265CU008.outbound.protection.outlook.com (mail-ukwestazon11020105.outbound.protection.outlook.com [52.101.195.105]) (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 630414657D8; Tue, 28 Apr 2026 13:11:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.195.105 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381886; cv=fail; b=pRscwJ84RIgLVEZXVPVGm1EdTu9cjs5d8EiTm8JbiQo3KgoACTDGlrVIO8lY4hIWl2Go1WakYG1CnMvDqjeYkyVhz2FQTwjgDU7YWOyf5aBHHTE1VOIHGoJH2oP0RidE7Ek1sfEIiy7Gi+Y8UlFZiSi+0ZliVTWxwa+vlS3rRbc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777381886; c=relaxed/simple; bh=Ybk6X0XlIMBayIxBLPgmos320s4ffcfFDqJ5T0tEwko=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=f4V9fB0WEM+wOP5NEomRkK50rDiO2Tf/qCZe62mzsM9vTcNm6SKYUkV3yQV327Hryy5EVY+vI1voO/Pr+4oRMiLlC0f9l+S9203FdWwHAKaqwPZlQekFCt0qxSk4ll/S2Zf6faO/YlyAc2BVssTR929RiUMSRae0lgy9PdUihAA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=g+d+wsYi; arc=fail smtp.client-ip=52.101.195.105 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="g+d+wsYi" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jFremwOZLGzYfTgmkthf8O/6xmPj5SiyVmC7hXhBgMWl3B7zYEZE0dZU/tQk7IDNxdf3mYUWE2IJBEQknNNiT7unORKciwEIN/y4YJ9J0EUMWgXCAmsS1rcFWa1NDsVj4Va2ZrzyG4Ru8yAuRJxY+iLaCz6Z3gXYFbN7XveZUWr+SFWjXrid2dW8YpDJQepQs4ovTpuwa0303pbjrW5Miw/pxzSkDb9TJJAHAdU3NW7OwIM5BSYlfS22wIVI6OH/gckrc7xBUCz7HXRMkGhTmZB4kyr2Th1xVln0diWXILYvxOONh/P74sihnGpkL7kIFHLIDWxrRFV6G679jcOjaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=MiEoQSea4Po//6wyvE7YH7TusmVlmM+5eEVPIiTBDuE=; b=IprsQp2TIDp3yMvK8yXDnb6K2FL1LqBLFGzOLW+70YfgMp86xwqJhALjynvawjGuLnvx052U2kG+g3DcR9lIFO13rniDg+quikx/CN7pvYmEwK0dMennzNaWQU23aI8qL5P46HlIZTweyvbUmwJTlQRCYXY614ToRf5QMGCFNEPSmXKtPOmeLdxTT4q3k3r7+PE43qvI55OcvnxTPEG7cA91BNUrpYAYRztgayAiRmXdVMhNjJUq0WiA/I+k7vZPdwmg7B/gzlGK9W5BSQgNDRZUcOMzd27Wd/ew7LfidAOk/3JA0IsRor2cV3qvV06ImgD09DgVX1z3pkXWk1oLvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MiEoQSea4Po//6wyvE7YH7TusmVlmM+5eEVPIiTBDuE=; b=g+d+wsYidcp3fPhqrzsqqeMtdiFJfdop+d09cD/2yJG9bu8R11NgMN/N8rC6M+bihn84CUg9R/b241hnR2oVJNF3FpTLtLTbiD574hXBBINvyV3AZZ8wbnGuvrtN383Ir15vlaCyvpFXfpynbqrSUS/nImNtxyPRxLfBX6EsAy8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by CWLP265MB5969.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:1ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 28 Apr 2026 13:11:14 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9846.025; Tue, 28 Apr 2026 13:11:14 +0000 From: Gary Guo Date: Tue, 28 Apr 2026 14:10:59 +0100 Subject: [PATCH 10/10] rust: pin-init: internal: turn `PhantomPinned` error into warnings Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260428-pin-init-sync-v1-10-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?utf-8?q?Bj=C3=B6rn_Roy_Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1777381869; l=2748; i=gary@garyguo.net; s=20221204; h=from:subject:message-id; bh=Ybk6X0XlIMBayIxBLPgmos320s4ffcfFDqJ5T0tEwko=; b=EKGSsqx03FAj1Y02KRow8JqkrvQk54wu9vj0q89cbHQ6MV7k5AOSSyLm729Ev+ZM5xgvLUx5R wUrXX8Zbx6TCeQcIeYmf2y/Z8HuplkUu55nx5S2jrrnKjrIa47qadJf X-Developer-Key: i=gary@garyguo.net; a=ed25519; pk=vB3uIX95SM4eVrIqo1DWNWKDKD2xzB+yLLLr0yOPYMo= X-ClientProxiedBy: LO4P123CA0074.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::7) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|CWLP265MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: 6c95a08f-0948-4074-7453-08dea5279f95 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|10070799003|376014|366016|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: fWLwKI2FqVpbCWJTr+ncHapqwFUfcMJGPD1xUnPQcZMwOSiy6E5LEh9h0oyd3oD3nIq5VtTEsTdzqjmONRLW7GiaN9F9gbJ9PrJq5VMK9NUjwrTMwXzRU4dcMstRez0uUDnWsyFibsssw7uWvT170qZvqP/tkgHcnMSKA9G4TTLq/FqZ6dqojFigemqnYxh2uvv9sqNWK/6R36MXTimPtHDJHEgsPwEaloPFDz/V0FAghbccOckcp8Jy3FsFci+o0mnqlBvTp178CJCsbkAyDDwkIwlNu25Csejc8DUZVGdHX472ZtaY1PnPRZOdn8mV1p7Jq47osRARKgI9qYxEa+g+NmXaIEFwGboGJ83uVbDe07qki6E6QvbWQgrnb9fkSsMAFPWIJAAbaYEJ4Vki+jnxeMUAoEzyG30WZNy/23Ng8qfN8AU01hfCv6oF7DbnRkrmRhRmXNlgufn+GAIE8ifRpAO7jwiTaX3PoSX/wRW759rVfLfyWHxogruHjOspstWcWrAU7aoveU0NcZFNlMGmG0mqYScWrQoIL0ex+f7EdcTaubbuI3qmcmFGxpIiWY7vdWqslR/zuV4WUSLZPfRz3Y2nyXZPQxbOjx84KLWfro3FNP66pVGraYxO7wdJCm/l2zZZoEh8O4FmOq276WbHhmEQBXOlRf8DR0pUSgHZCr+TAoBt5hfLWTvWtuX4sweic8sx2GFtBOKdjtkhGX8EmpLsppi0DRo69YRtOqE= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(7416014)(10070799003)(376014)(366016)(1800799024)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Zmd5dkpBTDh4NnlyMVFhVUU0c2s0UE9mNVdQRXdSK3hQSkpmRUhqdXlPblBt?= =?utf-8?B?ZlBMSzlVTlZiMnNIQW1oWE1UY0twRHVKL2YzalIwSzJ6RnUvU3dsMjVwbUt3?= =?utf-8?B?SmtqRm1maStHYUlJT3pITktFRG5FcWtGK0R0Y01TK2JTWGVWb1VBc3lJL1lp?= =?utf-8?B?RnhoQjFwNnZncE03OHlQNW12YXdIelFaaUdTWjlabjRna2ZNenRUVjhFaUY1?= =?utf-8?B?NWVhK2d3Tjc3Uks2Z3ZXUmZRakVHcWlsNUg2eHJ4bDdEQkljalc5YVJaaldk?= =?utf-8?B?NGFHWkRseVVZVDNONHFQZncrbDRkZy9URG90TUx5UW1WSDhSbEF1M2xEd1A5?= =?utf-8?B?WHpJRVV6bTh6bnlXb0JqdzFPM2x0b2FNRDdwNG13OStDOUxJUmg2bzc3Lzhw?= =?utf-8?B?Q3ZjZ3NkbDBsY2NWMHFFQTlJQ1ZoS0NJaWhKSEEzNDIvYnZQbFJGRHIwamFW?= =?utf-8?B?bzF2cGt3VW5PbVpibGRNK0RXaVpYelRObmd5Z2c1akRhUHBYY0ZJRlhhNk1t?= =?utf-8?B?MDV6TVpHaVRmZ2RUQ3FkUHFLZ1hDcHQ0ZU44ZzVhZmMrZWtSUlcwK3FIZXh1?= =?utf-8?B?SEpMdkl4RjF1aWg0Tnp6Sml1R1JWcHNuaWxKTjdIcGY0T0xkY1k0Q3Z3aHls?= =?utf-8?B?K0lXejRvejdET3R0dW1VWTJkcEZZbUlGd2JFRy9EMEZuZ2UxTUZuRXRhUzRo?= =?utf-8?B?cXFUWjJ6Uis2MXptUG5yYXpBMVNKbFhQUXFwaHFKRVBYTndzTHBMelJMOHk0?= =?utf-8?B?c2d5TUlSVWpyMWUwZUJEN1VNc2plQzFBQXR4clY4RDFsNXZqdE5MNm1nb05v?= =?utf-8?B?djN5d0xkWmxTK2VKTGFBN3lNQjhIZmpKa2c3MTFkQXM2L1o4RDdxNko3Nm44?= =?utf-8?B?cWprWU80cFpOSWYvQlFtcVZoNDhwdW00bXJ2aHNTN0NMbmJrWEVVRCs2MHo0?= =?utf-8?B?Y1JIUTM1bnJUbTJoN3NpV2VrbDIxRnlBOFJqTUFjZzIzbXpUN25KVUU1cDhO?= =?utf-8?B?azc4MW1wc28rcndaTDFvTGxYS2VacmlucnhxeGQxMmZzeHV5d05mbE5oNEFa?= =?utf-8?B?ZVhQd3hzaUhKYklSZGxwV0FweXd6bmZ5QVVFTlJoUzR2c3RzT2hmRTcxUUc0?= =?utf-8?B?Zk9tZ2VONlBnbUJIblZnbGZxbWEycVdrWUdXRkNYVFFtU2QyRDE0Q2g2eGlG?= =?utf-8?B?bjFUVHllVlI0WmZRNGdtRGYrSVlVT0hWN2dzUzhqa1l4b1BVY25Uam5RajlH?= =?utf-8?B?WGd5R2E5dzZua25nb0tKcndDcFZmZUpJY1dvWkJXZzY4T2xrWEQ4K0Q3cjNN?= =?utf-8?B?TzBPWUIyZy9ZWFdhMlltWU1WbHgrOHJaajFpWVl0dTBzNEg2K0RFZXJYR3Mz?= =?utf-8?B?MGtpR0F5Mkg0YUtabTNPdHFacnUreXNUVERXYmRyNVNTZFZFcVc3c0JOSDVN?= =?utf-8?B?YmxBWUpPcGVjVlVtajdURFUrekhQSnQyaDFEczZ0aFQvdnZtNkl6L2E1S1NQ?= =?utf-8?B?TUZIZzFtNzE4dU9QcnpodUh6WlVIaXE5RlVmeTJCTkVPeHBtSlRHa1dXWGlB?= =?utf-8?B?c1NmMFJMVlZVQ25LSVIzL0E2YnJuOHozQUxJMDhrRE4xTTZ1UXZxVFN6K0Vr?= =?utf-8?B?WEI1NDRXVFJheTBnTy9LNG53ejlFQk10dk5aaUNYQXp2MkhWUjh0VXFoMVlP?= =?utf-8?B?bEZqbStCNk9PNHhMRlBlUENlRjVlYk1reVFDV0tZeURIMHZVdFk5UW1VV25J?= =?utf-8?B?VEJMOHlVcDhUTU9WZ0xaQ0x4TGY3RmI5SUhSazRmNmxZWWljazRvV1VZMG0v?= =?utf-8?B?WTlCT29NbzI3MmpGMUZMZnNsNmdMMStqZ1JnVXNLZGd3UjNLMEMrYk90Q2U1?= =?utf-8?B?VXdYVXlWTC9oemxXeXRONlFTYndhbEpIb0JvdXFSRm9mMnBHRFk1VTdnS0ZH?= =?utf-8?B?NkVMZkpod25raERueStSeU55cjRUMkZ5dVZyV2NCRUxMVS9aODFRTjNNeno3?= =?utf-8?B?RE1HY0gveTBwOFpOSEF4Vk5GVFVlcGRHYU1QVzE5UnBFQlpEU3pHNUROS1hm?= =?utf-8?B?eTNFZWZSUmdzeW93Wi9pK2hUNDFmb3VwZUdtWUtudzZUNFVGNGNwSkZxSTUr?= =?utf-8?B?OGtuR2hIQ0JPeEtwNERxS3drVVZoQUQ1cGV0aXhmZnFFOWkxNXNEL043Wkg3?= =?utf-8?B?Y0dvMnNoTVAyanJIVEdJUVpnbDg5NVFPaGd1R1JJK3l5MVBQRjdmcnMzWUti?= =?utf-8?B?UXkzQjVkeWZzUTV5WERnNDFsL0dtMUZZKzYrV1gvNjVjRC9EbjVxRVJjQkxW?= =?utf-8?B?WnJMcVpLSmYyVXNONkxRZzllUXN2YmwwbmxJZytUdFVSWWRtK09mZz09?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: 6c95a08f-0948-4074-7453-08dea5279f95 X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2026 13:11:13.3395 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2ofAJaBf342naBKApgmhEQlCkdu0n4hOxVMaQpKd1RDsUqYxIXlAfqgNbKKoOje0C6swOjQm35/5ysnOfRiwIA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB5969 The `PhantomPinned` detection is just a lint, and is emitted as an error because there is no `compile_warning!()` macro, and `proc-macro-diagnostics` is not stable. Use of `#[deprecated =3D ""]` attribute to approximate custom proc-macro warnings. A new line is added before message for visual clarity. An example warning with this trick looks like this: warning: use of deprecated function `_::warn`: The field `pin` of type `PhantomPinned` only has an effect if = it has the `#[pin]` attribute --> test.rs:9:5 | 9 | pin: marker::PhantomPinned, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Suggested-by: Benno Lossin Link: https://github.com/Rust-for-Linux/pin-init/issues/51 Signed-off-by: Gary Guo --- rust/pin-init/internal/src/diagnostics.rs | 14 ++++++++++++++ rust/pin-init/internal/src/pin_data.rs | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/rust/pin-init/internal/src/diagnostics.rs b/rust/pin-init/inte= rnal/src/diagnostics.rs index 3bdb477c2f2b..c7d9b3e624fc 100644 --- a/rust/pin-init/internal/src/diagnostics.rs +++ b/rust/pin-init/internal/src/diagnostics.rs @@ -3,6 +3,7 @@ use std::fmt::Display; =20 use proc_macro2::TokenStream; +use quote::quote_spanned; use syn::{spanned::Spanned, Error}; =20 pub(crate) struct DiagCtxt(TokenStream); @@ -15,6 +16,19 @@ pub(crate) fn error(&mut self, span: impl Spanned, msg: = impl Display) -> ErrorGu ErrorGuaranteed(()) } =20 + pub(crate) fn warn(&mut self, span: impl Spanned, msg: impl Display) { + // Have the message start on a new line for visual clarity. + let msg =3D format!("\n{}", msg); + self.0.extend(quote_spanned!(span.span() =3D> + // Approximate using deprecated warning while `proc_macro_diag= nostic` is unstable. + const _: () =3D { + #[deprecated =3D #msg] + const fn warn() {} + warn(); + }; + )); + } + pub(crate) fn with( fun: impl FnOnce(&mut DiagCtxt) -> Result, ) -> TokenStream { diff --git a/rust/pin-init/internal/src/pin_data.rs b/rust/pin-init/interna= l/src/pin_data.rs index 76cd11bf28eb..163a31ed1556 100644 --- a/rust/pin-init/internal/src/pin_data.rs +++ b/rust/pin-init/internal/src/pin_data.rs @@ -85,7 +85,7 @@ pub(crate) fn pin_data( =20 for (pinned, field) in &fields { if !pinned && is_phantom_pinned(&field.ty) { - dcx.error( + dcx.warn( field, format!( "The field `{}` of type `PhantomPinned` only has an ef= fect \ --=20 2.51.2 From nobody Wed Jun 17 02:51:47 2026 Received: from LO2P265CU024.outbound.protection.outlook.com (mail-uksouthazon11021119.outbound.protection.outlook.com [52.101.95.119]) (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 0BDDD3BC667; Fri, 1 May 2026 13:45:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.95.119 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777643121; cv=fail; b=ZwlNsCUyZLZXDkuVAIpvBQnSOvFjEoApBdx62cdtVtvPpprRYQUpPBIhzCMFvTfyXr2ZKjECaNHZK0g+tQ5ScvFgPaTq6hQRbGL1g18thuDaRkuLD0RT0eRZGgx3bTXQpFLEUDXKB6vlxNZQhWb24e6XR7polA5kpoGgfPDtLeQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777643121; c=relaxed/simple; bh=k+B89HJ0mXc7ic+ei+wfqaNSVXT8x9P3Yf+Mg90d2Vs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=gMxhJbAn0vbqVH7ZuBO9ON5KfEDDGf3yWEm5vB+quFsoSGnfEg6B25gH+mNokbJmveGP2QIXp6TdJ9NMlN70x7P4ujXW32mjIaqIUAA20FJFky8SpbUj3mIzeeqgIckp4p9ah7h244mpPiLz2qBFnprkVvjycw+zhShZk+ussYo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net; spf=pass smtp.mailfrom=garyguo.net; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b=ZPvTrlTk; arc=fail smtp.client-ip=52.101.95.119 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=garyguo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=garyguo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=garyguo.net header.i=@garyguo.net header.b="ZPvTrlTk" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tdJ6k3MwnhYyk7GWn+ncEdU4U9/OTFiG4BE6IiuSSjmPYsLgF/DLtdS9nr30lmDeTeCfVIeh07RatDCo5U05bf/Q8BtSSbdz2I5CJP0YniDQ6nG5hyDZELOU8Ufe7ObmcZhO9GPnQ+1D0j+dfj8llUjyTYBSoKoSYph8Aor9H7MRCtA0AAxuKZqwkqCnnZpcon9l1PG4lJGZYy4ZgZnLQMM3qqtgIYzm7rKI4Z37KhUuNRxxXS+MD3ZpjWPLCMNeTAeIukIBJoih2qF9kfEmzQ/TZt33e8kW6CY2JilKn74Amk+Mbgduto87bfh+MgQPdM1WsJEKCoARpgjXEgz3mQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UYJeY2QI/WtTAotxQZKvhnZ1UbEAnU+HiN3OW5pKgp0=; b=DljfJd14wodHQwjRONzhiEl7CBwIuZldOJKihWTUoiJTqL/PGqzc23+XCGobthRaAN9pYZ31J7sF4J2YU+WXez6QMzUGqEx+I1oEQh/PPlvE2j36yWuDzyfCV1DwUSgjtQ4jmokxByTVwPd8Ptl4Lv+Gi1QAFcL2MMLtuwM+TETky6dG7IBSFnSupgTSTuxrY3eNGkG9iMYImshBUJ8qLGDGzGwXj+O0Wq8A1VMvIQuc9j8wgn5J2HeiTsIkDRj9GPtceJc5PLLWsAX9PmVDOf3dAk/GAd7oQ/MBczpX51TQmeXOgAfJCDXzzk1hkgphpUV/NMNpI7J/3hHvdXXC9w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=garyguo.net; dmarc=pass action=none header.from=garyguo.net; dkim=pass header.d=garyguo.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=garyguo.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UYJeY2QI/WtTAotxQZKvhnZ1UbEAnU+HiN3OW5pKgp0=; b=ZPvTrlTkmRQAvSW/5q1+/JoIgaicls2aDJw56OocOWQeKWu84Mz7StNEFutMH4VQQBoPF+0VarQjlH8kY6P1nuXHQYef+r/dT4WALdT2ZmWS4TaP0R4zukiMsi6suXnKjG5yGMsGdo/Xw1S7Xtn8gc3Jymqaxh9jmvg9gUUWmUA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=garyguo.net; Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) by LO2P265MB7218.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:32d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9870.23; Fri, 1 May 2026 13:45:15 +0000 Received: from LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986]) by LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM ([fe80::1c3:ceba:21b4:9986%4]) with mapi id 15.20.9870.022; Fri, 1 May 2026 13:45:15 +0000 From: Gary Guo To: Benno Lossin , Gary Guo , Miguel Ojeda , Boqun Feng , =?UTF-8?q?Bj=C3=B6rn=20Roy=20Baron?= , Andreas Hindborg , Alice Ryhl , Trevor Gross , Danilo Krummrich Cc: rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 11/11] rust: pin-init: internal: remove `collect_tuple` polyfill after MSRV bump Date: Fri, 1 May 2026 14:44:45 +0100 Message-ID: <20260501134445.3809731-1-gary@garyguo.net> X-Mailer: git-send-email 2.51.2 In-Reply-To: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> References: <20260428-pin-init-sync-v1-0-07f9bd3859fb@garyguo.net> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO2P123CA0078.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:138::11) To LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:488::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LOVP265MB8871:EE_|LO2P265MB7218:EE_ X-MS-Office365-Filtering-Correlation-Id: da4f5bbe-ded5-4b94-f5f5-08dea787dfe9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|7416014|10070799003|366016|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: Sq2QOdWM9OWEoQjEcoWCOtwv9GHWQPFnqh69dKRrCPOlPiPGLcvIhoNLCJS9Hyw9rATklVXkeOSXTkzfMVPhoy8GL8Y8QKXGnk1TnMvVdanKImIn0f10IBU+t/58wNa16oe4r/oKtGSyntZtuov29ere17tQ9mZpLJTAm59buAPv5J7VU9pFv8VTsYus5cE5mOItWfykB9eRrLqwQZ5hXNOtmJ+wZOgyfGv87ZkFcBcQ1epUKEq9vWcOyvLArQTSVtNjuGAsAovxzarQsThhNqa3KyZd65Yu+sU10TlZV6VjLEAKkoDXPsDm3HIfMoiPPsGdhGgLU5D84fiAUPoYnB8rWE76NGo7fX8+ME6VJ22YeIauuStpM5KNpHeczeJtT806RFWw/aGIvUHwRskrOiGZ0XB2mkNOM7HNae86u1xGHrA1KsHfJIGLUMbDjD7FP5qtsINp5stTAIRMSiSK5zPufbSsTFPoiRptULkIgDYMVaOj/qsOAP/3tNA/gntc/hIQh12ZTZ4UHt/rgMFlpL7CF+D/YMugYnbndh2FlgfH/CaK9pO6115CQjvvD0shFucswbFCGB9/4BP2q9e04f/E3rt1EiCdhDSd5Cz8owYhfOZtS7tMhOW0WBm3MXzyvT1AtcLDh7qpYS/EKKgSpbmlehZx7EOr8scolpsGnXts0mFm76PAhog8VvOMqYU4 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(7416014)(10070799003)(366016)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3dz0NkfVJtYqsMzuf1UjdqogyCMEpU2/MVgE3uk53jmVlz8ZBfRYAoUPFsLQ?= =?us-ascii?Q?M+XM5+N+kxgnEDSQ7itJ0z9NuzI/RDJzkt9qJpakZngkXgxmCJ2IwUAqHm0D?= =?us-ascii?Q?1OQnUx0w+tlQRo0mstbjUY/16zkbdXom9sqYzGg7/AXTUYKhICBzVmMSziEI?= =?us-ascii?Q?u4sB2R7aT/uZH3Q3atNZX/1PDDB5DiUxEpD8iuIWWgYpB2q5Anc8nk193Fha?= =?us-ascii?Q?b4Wc1Ab2K1vdyDhDyT/OBdkTckS2xNHb0IfE5GvUPor1KhfA5aN7BSQv4A7a?= =?us-ascii?Q?X2Auw99Ts2UPmubO0m7wptlTVDojirm7tlrCj+2hpAxFVA3HUOIygRapFI/6?= =?us-ascii?Q?+mfvfxHkWSC+tFz5F8Qbgfzk8jNkqnRKzzKHKb2DIo4IiPc8C/TyFiPfqtDu?= =?us-ascii?Q?n5WkAqNVdZD2PTj31lY3BC2wrwKjSkTshyVo9IrZx7BPCuSkr4mwuNakVFU0?= =?us-ascii?Q?4lXDJXPHYLHdNHuCpxabRLXvWA+gGs8Lob4uPjsgW35iMyWV0AE6P0xuqLJT?= =?us-ascii?Q?pf0PX4MIe2CWKWOyXgfbFPDMceSkaSl/xSwyTGAni/nOz10Ne0vq0FZLKx1P?= =?us-ascii?Q?fWzjfc9coXN43BnL7QjvZrkAt7Dm/ViOm1n7pFzrnRnKJnSs2977UI3DsIC0?= =?us-ascii?Q?lMQr5P5KQMmZeiNdzoxD/AFOwB0wc/WQNgTnrPT2wJK52WYP8Idg/c5wNBM3?= =?us-ascii?Q?mEPYGmHDLoSCHg3uucR4EmbtsNARRQJL40PoKRytQbTRxVhh4id56L4sPdug?= =?us-ascii?Q?DcJ2Oxd5WjCg6fRnNgHXyxMqc72GYSyfQrK6IwHIYPjWbPrQgfDFx1LwYRw3?= =?us-ascii?Q?/hMGDheCuxnA3UoFNhuQYnlxWime8nqjDgeQHXrj3YNBMDmD5LmBYlJEPz4H?= =?us-ascii?Q?VFZT8tQGOJSO1EpqcB9usWb2MvejUAzF8J1FYA42EvZ51lrSh/1h+EUS5Hrc?= =?us-ascii?Q?F1Qcr00cB0Dbi7z95BLwaEp1x/shcYvTNNto9cb9XPDd/0XsU/+aBlMhwaHj?= =?us-ascii?Q?R3A58R3JqBIv1ujJcFdqrbzJGpRW/oXtr/3+Fv/Ck4nj4kqfxZjtVE4B2GU4?= =?us-ascii?Q?zNgmb+1g24D+/YBOEXKjqLzgNaqIgm0jyS6hPaV8VcUW1e2OUSh/D66f8YlX?= =?us-ascii?Q?vDFKdGuNYmlVv0LonDgjfPMp3Du8XtouHZyO3fz+18E/etwUSDgEEmoCifxO?= =?us-ascii?Q?kisYtnbjJpG8R+r0HnRdEA46pLzvqAqEMltSET96eDYWlXpliT1IkWK+7ygq?= =?us-ascii?Q?NnNtxUJo+RBcwhFTxdQfL48DmVixrTPK0XDXnbcwtAYuBVdGqRbKIdYReLgR?= =?us-ascii?Q?pH7Rj8WwiVYNIWBOKR3/YslzC/G3mVLKYWXiKajtNSsNwdjmbTZPW32eWFaC?= =?us-ascii?Q?9QMsrOd1zQplKECymdz+HVrEeMbPA3zlqIEo4EwSeScOXixOHkWsofiYQbfh?= =?us-ascii?Q?XClUzvll8QlmUNKbnHPLd/l6Z/+i9teLUdAH+lI76wy2k0oZDyn/F1j9totw?= =?us-ascii?Q?yl4eG52gVc1WZYvkeh9wRLAumbQlwup+TCYa32N9fKdB4yJkA5QXQPjKd0iO?= =?us-ascii?Q?6de9j4me1zbOo5GIwjBFqa5LMMFPF9UwjjOeNcbtox4Dt/OPAqhuLDQE1jBS?= =?us-ascii?Q?GorikL6zGYQdTyeACp6x3ZpJnKrl5p4pzvJyYw3ta6V419q/KjNn2MAyzz+e?= =?us-ascii?Q?k1bC3nrAMCepDOPwaYk8k05v9VzoYjC37ptxgUe+Dt6Dgm9xDLhpKWDrGW4p?= =?us-ascii?Q?q26Hx+Vvvg=3D=3D?= X-OriginatorOrg: garyguo.net X-MS-Exchange-CrossTenant-Network-Message-Id: da4f5bbe-ded5-4b94-f5f5-08dea787dfe9 X-MS-Exchange-CrossTenant-AuthSource: LOVP265MB8871.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 May 2026 13:45:15.3514 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bbc898ad-b10f-4e10-8552-d9377b823d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dIS0lcp1FmjRUlF5G6nhrXraHGP0vn9qAc3nNvKVkTQ+aPHaNl8SW6fU0d2Uwj01k3TacM/VAkta+Oz93cgC9A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LO2P265MB7218 Content-Type: text/plain; charset="utf-8" Tuples implement `FromIterator` since Rust 1.79. Remove the `collect_tuple` polyfill now the MSRV is above 1.79. To avoid over-identing the closure, I move the `Field` destructure from the closure parameter to a let binding. This keeps the diff small. Signed-off-by: Gary Guo --- I've missed out one remaining case where we kept a workaround for old MSRV. Send as a follow up to the series as this'll be in the same upstream PR as = patch 9 in this series. --- rust/pin-init/internal/src/pin_data.rs | 27 ++++++++------------------ 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/rust/pin-init/internal/src/pin_data.rs b/rust/pin-init/interna= l/src/pin_data.rs index 163a31ed1556..be3d97a38225 100644 --- a/rust/pin-init/internal/src/pin_data.rs +++ b/rust/pin-init/internal/src/pin_data.rs @@ -247,17 +247,17 @@ fn generate_projections( let projection =3D format_ident!("{ident}Projection"); let this =3D format_ident!("this"); =20 - let (fields_decl, fields_proj) =3D collect_tuple(fields.iter().map( - |( - pinned, - Field { + let (fields_decl, fields_proj): (Vec<_>, Vec<_>) =3D fields + .iter() + .map(|(pinned, field)| { + let Field { vis, ident, ty, attrs, .. - }, - )| { + } =3D field; + let mut no_doc_attrs =3D attrs.clone(); no_doc_attrs.retain(|a| !a.path().is_ident("doc")); let ident =3D ident @@ -287,8 +287,8 @@ fn generate_projections( ), ) } - }, - )); + }) + .collect(); let structurally_pinned_fields_docs =3D fields .iter() .filter_map(|(pinned, field)| pinned.then_some(field)) @@ -498,14 +498,3 @@ fn visit_item_mut(&mut self, _: &mut Item) { // Do not descend into items, since items reset/change what `Self`= refers to. } } - -// replace with `.collect()` once MSRV is above 1.79 -fn collect_tuple(iter: impl Iterator) -> (Vec, V= ec) { - let mut res_a =3D vec![]; - let mut res_b =3D vec![]; - for (a, b) in iter { - res_a.push(a); - res_b.push(b); - } - (res_a, res_b) -} base-commit: 320c27bef338777831ec8615a8ec7e08812d0374 --=20 2.51.2