From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from YT6PR01CU002.outbound.protection.outlook.com (mail-canadacentralazon11022136.outbound.protection.outlook.com [40.107.193.136]) (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 1275939B4AB for ; Tue, 24 Feb 2026 13:48:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.193.136 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771940891; cv=fail; b=CV1hHHs00qJwN1Hnp8/9XGigbUsnLBRbwEiLfLAaWs268ZOrDIFzH7vBS6uYe8S4j7QGAopjj2bFheJZxWvqTGreeI4xfLMY1YQxIw0i5FscnpiQAJlNHX+jF1USIhdBanmVka7RVXS/drmnt9wh2zVE8Nl9kPXIy3aON07h6IU= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771940891; c=relaxed/simple; bh=8Po/uZ5LweqVM0FAMdBdRzrckAtIS148d7to/aKdsso=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=f7+/zKAiUkvCwpVi0fRZ+Ws54aAg/scF5pn5P3wv0zyvexB2dcnwqI3JQMZSk1pcEa2TWKsKhq6sVmxrtC4tu3X76YSifV8JxUVpPxwGmYL4K+EeoURwC+BMZiIyvPNZVL9Nl3GqtUnSzim9CDZOAKVmhI/rX5SGxelLZVy3hZk= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=efficios.com; spf=pass smtp.mailfrom=efficios.com; dkim=pass (2048-bit key) header.d=efficios.com header.i=@efficios.com header.b=KU6sfdVe; arc=fail smtp.client-ip=40.107.193.136 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=efficios.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=efficios.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=efficios.com header.i=@efficios.com header.b="KU6sfdVe" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=DMx83HVAvoj6IxKEZWjptuBgxzgjUWqen08fV8teL+bLE2S2TMXdwfkZomlH8pipjgFsPEQPepcrOyXwhxmiEkzWQhHq/ZouXmn3td2lAUVKXkMlNZoEwaL/+9sQw1tHf47U0cLDHHqVU9Oz/4I37CxrMqa6wOgBa26JMKefAVHfpxMD+D38ytgYN3HO8FDH+xYQgH+XTtN4lsynfUe3wgB/hzvmavC+hkN6Qegw/raaEwg1uZsOKo7AFdBS3IwEsUsf1b/LzPaYtvwKypAvu/ZX1zPsYF6nBC6zq6AMZiftfwI2wNIlJ8lhMKjD9jvNz4aJ5qwETzUkgHeAEEeCdw== 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=pTuNZQbMP4h0PTiPaf1Flv0HfJRz7Dg38+uk1e6Cdtw=; b=GIX42/3iv81akxKhqjzCBPiMryaVK7/qHd+Gfnh+/kUxgQLAYeUyJrvaZu1tXkyY5s1RjrVCV9hxMTfoe93dqytcGfj1o0IY5bIWAviSuXaRHEpds0JttIiefeVUu4jJUZoqdt19j03P/qDm75pCHHCIoASkA2C/kNIXp1HsLKw4j6Js6ynATsunu1pS8+I6eGvQyohr+0+RKE/5YE1jAlpNZAbQqVIk1oejK4Gf3J1cp6AvIoe6a1fToeC/n8UXGUUEYbUdtx7wx9vw9fZ2uTLu7WPdoCK3JLgOQGlwgvrz6aFadrJfL025f2NMdBaXfZ+wBBFttDtSYJqA3jq5og== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=efficios.com; dmarc=pass action=none header.from=efficios.com; dkim=pass header.d=efficios.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pTuNZQbMP4h0PTiPaf1Flv0HfJRz7Dg38+uk1e6Cdtw=; b=KU6sfdVeX+3txgR0owq6+QXhciquo3cjYqchKHIuJnRTLP2MVg6qEj+0VfREek0ksKMl4C44piBFqTscKm3mtjh1HiyhR3NwuTVKKHva93uV6GOVQFx6YOcTGfxpvSIOBb8tI65B4IH4bMLCTcZA9vKektA39uZFYj62jhOEl4EKX9EUaj3egRPcERvzqvyAdDsS0SXET7QMMknphETMTs0In8AsVdMqQbWWPL9bsJwWs5ZYqGmas8vXLrPi65iYWd+YY0NOmljf9jSgRfoudRBLjUiVB+tCSvNpfOQ+gczKFQhtAOxOsQ/d50fukPpRqB11Rv4Y0XL2wUq+VxD4Yg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=efficios.com; Received: from YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:be::5) by YT1PR01MB9195.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:ce::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.22; Tue, 24 Feb 2026 13:48:06 +0000 Received: from YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM ([fe80::6004:a862:d45d:90c1]) by YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM ([fe80::6004:a862:d45d:90c1%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 13:48:06 +0000 Message-ID: <2d3612eb-7afe-4acd-b527-588763a02a55@efficios.com> Date: Tue, 24 Feb 2026 08:48:03 -0500 User-Agent: Mozilla Thunderbird Subject: Re: [RFC] in-kernel rseq To: Heiko Carstens , Peter Zijlstra Cc: linux-kernel@vger.kernel.org, Thomas Gleixner , Mark Rutland , cmarinas@kernel.org, maddy@linux.ibm.com, ryan.roberts@arm.com References: <20260223163843.GR1282955@noisy.programming.kicks-ass.net> <20260224111646.20006Ddc-hca@linux.ibm.com> From: Mathieu Desnoyers Content-Language: en-US In-Reply-To: <20260224111646.20006Ddc-hca@linux.ibm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: YT4PR01CA0436.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:10d::8) To YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:be::5) 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: YT2PR01MB9175:EE_|YT1PR01MB9195:EE_ X-MS-Office365-Filtering-Correlation-Id: 26ede836-6aea-4844-e2d5-08de73ab56b6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?QnIyZEtVcXBOV3ZZSExIZ01yT08zbEF0OS9Zb3hMaGQ1OVNwNVVhNmdZUVNZ?= =?utf-8?B?UXNJNlpCS0xhRzVDY0IyMWIxN2s1aXplaWVFVmJMMC9tUEZOS3dhc1V0L01X?= =?utf-8?B?bGFaNGQ5dXZHS2ozaks5MFpoczhIOElqYi9BV3dEWWc0YVlqV3Axc0o2cGlK?= =?utf-8?B?SzdLR2hISGdvNTdQcjRSU3lxREJmSTFJL05heUZyd2pCTURoRDY5S2ZSM2x6?= =?utf-8?B?S0I3aXcwZTM3Ym4rZlFBVFRNZlNNQ1J2TE0rU3dFSUg1VTZvajUxR0ZLNExm?= =?utf-8?B?OVZSNmkwUWNJaWxIaUNGZU9lU1dOTU5tVGV4d0YrNHdqRGEzVENveHVYT2NT?= =?utf-8?B?cS8rdVVEWTk4NnRocmMraXQ1U1F3NWdJTTZnQzRMb1BUOElwMUFyUE4yTnVJ?= =?utf-8?B?UithVm54OGNRYW85MTZtbm91Y2NXRVJOWDBlNmNzQ3ZTUHRXb3hpdm1SQlZq?= =?utf-8?B?OWppNzFOOEU3ZlNDQmN6Rm1YeWtnaFhMRkU0bm1HbDhIdTduOFpSYzJuUExO?= =?utf-8?B?SHc4N3k3WkRkY3VkbmNoSjc1dTBnT25hTzdKalVGblFJWEluaU9YOCtWYzdJ?= =?utf-8?B?QTYwa2lUZy9PMG50b242Snk1aXpvQWNPdEVtanlFTExQS3Y1M2JFdHJPNDIy?= =?utf-8?B?azludmRIaldmWnJRODR6RzlUOVpQZVhGcWJCNDluMzBDSmdrd1dHMkp1Qlg4?= =?utf-8?B?R2o1SGxhVExXOWtNcXpFeFZVQnZhQSs2YWxpeWVtSVhMRWNwekZWb1NhQ3FM?= =?utf-8?B?L0h2VEo2QTBZelRGVXFXQ3FNMHpVcHJYOFJzTWtUOUxleEYzb04yZFlFRVda?= =?utf-8?B?aFYrd3d4U3NjbSt3TmR2aUhDdHZPU1RvY3BxWVpoais1WkRCcG9QVFJEOS9G?= =?utf-8?B?SGpJSnNHOW5ZcnBMMnhLTkRVZkF5UWZvOVhIZFBsdUJQNkY1NlNvUXhCaVpB?= =?utf-8?B?QXZyNUcwYWJFRFA5VnZ0UTM2RDJycmFqRGVJeWkrci8vODJEdDRzOVpVSjZj?= =?utf-8?B?aDEwbXAwZGViWXlPR3VjcTZBWmdKSmxPUlpmbjMwZEEyUmlNbXFMdkkyQ0dO?= =?utf-8?B?bWhXSkUxSGlBZk1nL25uU0s2ckdHSlZKbDJYeWhYQUUybVRGeUxRaXNIZ1BJ?= =?utf-8?B?endvb0dydWFHZEtveVE4cE9ZWFpJWU9lSksvcUJ4QldPaWtjUjdsd3JyWi9y?= =?utf-8?B?MndvQlh6K3VaMWdoejViSVE5a2ZWRFBzVFhMWVlqNzBhYlVtQ2ZTeU9RT2k2?= =?utf-8?B?bHJtZUR3TjFJNllSUm1wYlVlV0dkQUxrZWhLcDNtUlhhY2Rib1JMVXdRVmFu?= =?utf-8?B?RUhZQ2l4N0tiTUpZclJmTUN3WkRrQ2d1OEJ1VUxKWldrQ21iWU94YldJNUtC?= =?utf-8?B?dWdaQy9Mb3V5UU1DY1VqREtWVGdvSC82NDFjY1VydHRvaHpUeWFDYktyRndr?= =?utf-8?B?VjQ5VWNMbzdxYUd2UFBDQUpKY1JVYkhlZ3cwMmUrekRnQkhhMjJHZWFSYXJm?= =?utf-8?B?NE1INUZPNG10KzBQYlZrSFlMWEt1UkNBcFFWVXhidzdaSnpvN1pUbElCd2F6?= =?utf-8?B?Zi9aNGgzWWJQaW15UnY2SUNXM2dZRnZOYUVsL3BBSXlnUE5FRXM4Q2ZNUUtP?= =?utf-8?B?L0d3RkorNnVaTjJTalVNM05YMXhBVWptT0t2NjcrQUNnUmsvdmtrVnJjUlBp?= =?utf-8?B?R0dRaWNXaC9QejFVQXl5bmx2Q283MWhTUHBRN002OFR3N3oxSzhNMnd5aWgr?= =?utf-8?B?b3d6TXlMVDdnWXhlZGt6N1p5MlVZdGxFQ0pxMndSc1RQUTFXelJhdTJMQmlJ?= =?utf-8?B?c203ZU5IMGh6YTNvZTRNYVYwcUNuMXpOZGtuaXRZcTUyYXg3MWFDbC9yVHk3?= =?utf-8?B?Ym5mUkVJRzNDalF0S3ZESE9LbG9CVkJMaXdEazNheVpKYzduUTQvU0t6NlJF?= =?utf-8?B?MHJZWXlIU0dRMDhaTXRkMDIranR0RWJGYm1kSW84WFlOckV5Tk4rSEVhOVBJ?= =?utf-8?Q?7GFmcHmw7mfZ/Soa/5pANoGERKeUng=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UnI4bVRmcXUxVVdCbWdrQmVEUmJjbU9Ccm5KMTRQK1kxallCb0gwS0Z3Szhi?= =?utf-8?B?R0MweVI2ay94V3p5WXlTMGUwSm0yYmo0RytBNmdzTjNST0QvZjd0VnRLZi8x?= =?utf-8?B?aEE4QUVFb1lYYnpGMmNCYU5nWHk3WHBRTnloaDBJbEpyVExPVGxKRXFiNWds?= =?utf-8?B?QzMvdEluS3BmYTV3U0V2Q1ZUT3BrQ1JSSCtIT21kNDI0ODlIeTFnUWU3TlRD?= =?utf-8?B?V2p3WElaYm55RWkzcksyOFU4S2pSM0d3NnFoeWxhSGcvWXlxWjREU0VlR0tF?= =?utf-8?B?SEFja09TSklQQlpFMDBBMWpLdTlRY1VjUFR1cGthZEpvTXVyWWVWWHZHVjRk?= =?utf-8?B?Szk5SlFDdjRsWlk5Q1VOeXlKSjg0TU9kVnNqYTl1eGFWd1ZtQ2FmRjZINjFX?= =?utf-8?B?U25kanQrUTFsU1Y1R0lQbGliYTcrWWRBbDIzak9zTHY0VG1PVlBCSml6UXJJ?= =?utf-8?B?VzRCZ2tiRldiOHlFZk53MitQYjFNUzZraFNGak1zdENwdGUrWGczYXhTWEJJ?= =?utf-8?B?dnpDYlQzZUU4ZlFuVjRnTk9oU0Q1ZU5lQXI2V0d2M2RlUE5mbXd0eWFhRFNO?= =?utf-8?B?ZDFvRDByZ2dlbDBia0Zib05PbDREK1hEdEZZWlljczdkMDV5bm4vNGI5VGVZ?= =?utf-8?B?cmVlTEFDMlpzSEx2OHZWbTdyUVhBdkQwK3Nyb0FHbnV1NjdlQzFjUjRHb1lW?= =?utf-8?B?cGx1SEJoNjNiSzI4M3hZdGsxTE9pdHR1RGgxNGpQS0EyZ0x2ak1VVjhDVjFJ?= =?utf-8?B?eGxUNGpIelQrc1dWUnlIZTdNUU9aTkhaZWNXYVJGUlhFS1ZRZjdwaXdZVDlM?= =?utf-8?B?TkhMMHk3KzNXcTFQblp6bUFXcm9rOHBLblBUa2REVkk4V0paZ0J1eHZtbjRQ?= =?utf-8?B?Q1dHOWw4SDQ2T3hpdUlZVXNtQWh5YklkRE9rYldCbmQ5WHYydEpsbHlFUGF5?= =?utf-8?B?bTZ0ZnRWNHl5L2U1a0VqY3hFenJiTVZxaWhNT3JzMWN3Y2plb0tDMHB3WHI5?= =?utf-8?B?aW1tc3JUUEtBelZ1bzYvYjdFSEdPa05QbXZMa0FsZHhmRU1BTFVHVlpLeENC?= =?utf-8?B?Q011WHFUaEJPRmRTOTFZYVpOTldPVFRaZ1o2RkRQUFZxVDc2eXIwNU1jSmZa?= =?utf-8?B?UFJOaWtaN05zN3pKYklnYzBxOUpSZk1SQnNCaFFpNy9FZ2ZiTFpJNWY5dWhN?= =?utf-8?B?Vi96czVGWTNqQkMrRDRwcVc2MFROZzNKUXhuVzFrTFhyTm5KT0hpcWVXOGt1?= =?utf-8?B?Nm82VzVYOGUyQ1lDSlp5cUxpSjlHcG9USVpHUy9vZEJCSkpEVnJ2Wkhma2Jm?= =?utf-8?B?bzV0SldobzlTN0o3THZlaUtLWVF2ZFpBMWFXZGRncXFDNzVuZElFQUJZalFl?= =?utf-8?B?VTFhNS9ZaDNkRUxHVXhuamg4Q0xweEgrZytXcFJpRU9lYkhJc1o2dXh2Misw?= =?utf-8?B?YjBxQzNQVFl2QkxNQktSbTdMSzduWDBIaW9JdDVVVndZWTNrZUs3RWhacVd1?= =?utf-8?B?VnQrbXJkWGZlR0JGczRzTjRkZm8rVDdqdm1pN0hQdC9qOXgySnJiTGZSaGwr?= =?utf-8?B?VFJKaFl3cy9rOGNFb09NWTN3YXd4T1VJb3l1VEJXODUzVjZVM1hLRDNKN2JU?= =?utf-8?B?WjJWbGFUaWV4cU40Y1lNNjd5YU5SMGJXZVkxSSt0OE1HUjB3bGpWWDhaRlVO?= =?utf-8?B?alJTU0tNVjdFYXJoQ3ZLS1RPNEdLZi9pNEtySFRFMEYrQjZEM3dTMkgxUlBC?= =?utf-8?B?QlNZdDBpZndveTBsczRQMWZZdWJoSmorU3N2Rnd2aytqV3AyM2FWVFR3RzVU?= =?utf-8?B?TDFLQU1La2ZLWnJYZFJmTFhvNURMNFRrWjRLSDNlMjRWbUhsZmxxNXI0cUE2?= =?utf-8?B?U0p0aThpK29yc283eEFZcXhxenpXbzQrNCsySzcrN2RMbS9sblBvNEJ4b1Mx?= =?utf-8?B?RWNQYjdaTGFOd1hUTW9vMGRkNWszNC9rLzkyNlkwRmdZY1hobW9KVGJFdDgx?= =?utf-8?B?OERuVXQ0aTFDSnFhOFRmNnRjWG1MeUhZVWRMNTM1dXpSb29JK1ozYS9UMGdP?= =?utf-8?B?YXpPWm54cjA4L20xVnlLY2xWaVF2MGJFVHRObGplSFM4SCtFSXlQckttcW5r?= =?utf-8?B?VTBOdCtuM3NXWlBNa0hybFBpeVFsV1diT1NYeFZIWEVmdU1oV2gwS3Yxa3B2?= =?utf-8?B?dTZXWmUra1RPc1k0V0lzcEdxRGFOaHowK0F4QTdObkFVN1BUa3ZoMVNZUitt?= =?utf-8?B?eWNlTitCZVc4UUFwaThmUSs1S3NVbHhYaGVTc0Q2aXJQeWRrZ3MzUkVnVEFk?= =?utf-8?B?Ukt1RjdObnFHS0lpUGdrR3JuVC9UUnhwM3UxQmU4N0Fid1ZLWkE0cEYxaGJv?= =?utf-8?Q?j+8S2pZdHp6xjG4boODaRV8rF7/FgdCIz9+Ki?= X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: 26ede836-6aea-4844-e2d5-08de73ab56b6 X-MS-Exchange-CrossTenant-AuthSource: YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Feb 2026 13:48:06.6239 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4f278736-4ab6-415c-957e-1f55336bd31e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sfFLZ70m0BQMKlg0yaq3V8JBBlLQSDGhuwhpmEHY2QVcpTcUYhm34zYH0w/wiydYIkwH+QwN0SqegZuo5jVOHDMNnavX70A62PZt84qBeEg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT1PR01MB9195 On 2026-02-24 06:16, Heiko Carstens wrote: > On Mon, Feb 23, 2026 at 05:38:43PM +0100, Peter Zijlstra wrote: >> This means, it needs to be woven into the asm... and I'm not that handy >> with arm64 asm. >> >> The pseudo code would be something like: >> >> current->sched_seq = &_R; >> ... >> >> _start: compute per cpu-addr >> load addr >> $OP >> _commit: store addr >> >> ... >> current->sched_rseq = NULL; >> >> >> Then when preemption happens (from interrupt), the instruction pointer >> is 'simply' reset to _start and it tries again. > > I guess also on every interrupt, exception, and nmi current->sched_rseq needs > to be saved on entry, and restored on exit, since other contexts can make use > of this_cpu ops as well. If we do a design similar to userspace rseq, we'd abort the rseq critical section on interrupt, exception, nmi (by changing the pt_regs instruction pointer) rather than save/restore it. This is what userspace rseq does for signal handlers nesting on top of rseq critical sections. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. https://www.efficios.com