From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from YT5PR01CU002.outbound.protection.outlook.com (mail-canadacentralazon11021096.outbound.protection.outlook.com [40.107.192.96]) (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 3AB4739B4A0 for ; Tue, 24 Feb 2026 13:33:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.192.96 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771940013; cv=fail; b=CjUuvIH/TpM6bJUsX+YQxFN5J2IKW7bjl7xDLvSbQcltVbAlxXSAQ5JaoTVA+uODctX0KaPO6MA7jdxUUFnGxdwj5rav7d0u9mgzg5WAGHq6/5LdTkibH7Mgkm+5JbADAVGkDk91/nKCPPtcXbtRvGjjf02GWY4O/ZbHpfyzLaw= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771940013; c=relaxed/simple; bh=FNaJGnvhNW1scd2TKMG7c/a6Z7kvZqlRpXOA0NUFa+E=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=HN1dY/lldfEc9xU+elhyPmi5bSM6eG1ajYoQP+NveUvdhHLdShnK08M2J01VKfyQPYB8+HStr6Urc+VARQmZ6n0t1HHrqsVgDmIV8dvP79LEPvTtevSQn+Fjew9YWKU5EO3zV/i7jtJXm2Jm6CjIcjf4H7GxQXchMYj5q3/M6aI= 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=Y66gGQVM; arc=fail smtp.client-ip=40.107.192.96 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="Y66gGQVM" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YTvBUIVVVaKVA0lnJfoFEDcBlFJw5NXtS8KdmM0I267C53i9OKt/k7+N335uwUEC9PMxYgpldQOjtHdbZCtqm6QdDrN9O3wX7kt+mCif0QPvqlTd7vybaTz6sTTnhiN0SQrcZUCdmj2vQPs1fZbxJi7FyS9ZD6Jpgd9XnFMUyUVhZwepWvouxHyLEOVe9NPlOwK8mcibHrFfcAW/8sTGFG1eoqJeeyECqWXVhna7jgOjYa5WhZrezqOLbutc/30mYdlOf343/QhmNPhULE5YsK427E3gyr6ISLUf47/DEsqHozJ7DzCWy9YtZncl96fTyrUNif2A0lXGLgeUHwioUA== 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=dD1qmcKQReGZU2PX1h8WyBG2pQLiZzcuXkZHY0Br+nw=; b=l1JxIhon2oGPxeixZVw+6l3aFtoDaBv5HhDXfHZdG5avDrDwA4k0Dx/KsuIFSy9dD6MZ+lakPCycHvksdre4xo0Tkef7dpzBioUEea22uIAP8nSgx71EoRAn9eHvWMQUadSlSY3bk0jvtjgXE/IhiNe20H6/QNIuq3kTVyRKfhN9q3exQDzoviAtXTQNm1xn1P7aMVSVReo6GE3bJv7OcagNMxcJpodtdhTDygbrHlsPzGgszkVb+Ad0ieNxb9ISbnqYXY9VJ37UMmWY3OTFY5pHALX5WoASQaw3azE3EaCFNQJNmk2ZYu55AdV6/LYNIhUE3fmsBKzIPrtCFrwWYw== 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=dD1qmcKQReGZU2PX1h8WyBG2pQLiZzcuXkZHY0Br+nw=; b=Y66gGQVM1xoBCEZXmpXnyrMIA1W2iHfNBuUbPM7uDCWoc6rwMM27B/33JM6hA2HF8FeJfvb2YzoSj0w8ks8FkIzIafITcjy08DKGMCxhy9nopH7aYC7Wzj2Oe14vZNDzYfq5yo6zJmz2UjEJ930a6mz7JkIf27XG0iQBDjLdFDhpQ0bFaFJ0U+wgRVvfyls2iLu+K+jRr6uWXTssgq4isgnrGbWlVVptcVg2Oo/NteVFv3HVsBIrv+UrYBDgx2a3nGtX4Sp4sMyt5c1no/vfAAY4YGkQvJlJnLOiYQHLXTlUGjd+7AiUcnAjdn9O7L0U4Bws8Iy7mMj9mcth888DFg== 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 YT3PR01MB9771.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:8b::15) 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:33:27 +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:33:26 +0000 Message-ID: Date: Tue, 24 Feb 2026 08:33:23 -0500 User-Agent: Mozilla Thunderbird Subject: Re: [RFC] in-kernel rseq To: David Laight , Peter Zijlstra Cc: linux-kernel@vger.kernel.org, Thomas Gleixner , Mark Rutland , cmarinas@kernel.org, maddy@linux.ibm.com, hca@linux.ibm.com, ryan.roberts@arm.com References: <20260223163843.GR1282955@noisy.programming.kicks-ass.net> <20260223175357.481c161e@pumpkin> <20260223215436.GS1282955@noisy.programming.kicks-ass.net> <20260224102728.1273c080@pumpkin> From: Mathieu Desnoyers Content-Language: en-US In-Reply-To: <20260224102728.1273c080@pumpkin> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: YT4PR01CA0397.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:108::16) 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_|YT3PR01MB9771:EE_ X-MS-Office365-Filtering-Correlation-Id: 3fa83e79-8cd1-461f-9c1c-08de73a949e3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?a0J2SXhieHlBZ3QyUStkSStTRDhXNnE5YWk3QjN0WWg0S0RyWTcyS21ia2pG?= =?utf-8?B?SFRIRHZkN1RGazMzT2E0NkdDZkpGVG1QSTIxNHFiakFHYWc5Y3hCb3dxcFhT?= =?utf-8?B?eHRZalNXY3V6aFR3NmN4TXNuTUZ3MFd4UkJwUTBMVk53KzgxMlZtbHZBTG9i?= =?utf-8?B?VFl0NnBXN1ovQU5GaHdzTmI0MFp2UlV1UTE4NzJDSkpFRDgzZGQyUDQ3dWVv?= =?utf-8?B?d1VPT1hWUzhTNjJROVh6UWMrbXpLUVFvemVpczBrTy9Ma09yQ2ttWnFOWFBO?= =?utf-8?B?ZXlyUlBOdGt2ci85ZlFycU15ZjVtVnNmeXFnR2lkYVVSSTlwQ01OcFF6T0hD?= =?utf-8?B?Y3A1TldGcW9SOEV4VEdjWklSRThBZk9VZllHRXFBdmhtdCtnTC9iUlowS1lS?= =?utf-8?B?ZzVWMFdyUWVUTkUyVFZoV29vWmVMQk5VZDBZR1ZRTzduZDd3TzNqOVJhekQ2?= =?utf-8?B?VXg2V0VvZ25XcXZHb0IwNUNQNVF6TWZDTHNVM1hPc3Bocm9MY1Zybm9lTGJU?= =?utf-8?B?Q1U4T2tKWlZXUEI0OWtQUlNXbHZ5N045c1ZlL2VjL1R6UGpRL09UVHpCaTJG?= =?utf-8?B?bU9BUDFFV2IvUzJ1RkZhY0NPOHduNU5pRStDR2xZSnNpQUtQRWlLc2hTdnEz?= =?utf-8?B?S3ZKUVlBMkYzNXZVazRZeDhaR2lIWk5hMjR0N3RoNDVRZWJqR2FyTlVEMHVR?= =?utf-8?B?dUhoY0ZEWkdydG5jcnk4N0cvczhuU2FnbkpRcG5UR09yVnZnOWJya0Zibm1Z?= =?utf-8?B?d2xPM1h4M3ZFMEFWOURhMjl3OGhqWDY2K0VhWW1IeEVMS3FVcEhWUm9JSTB0?= =?utf-8?B?MFNLMm90amVRZEJBU3VhSWIyc0RqczltMWVXN1ZQMExnVnh1MXdybDBkT2Iy?= =?utf-8?B?S0RQd21RQW00WGVleDRSVnJLdGNNS1R1dG1WV2xZTWtFNEhSKzlBSzJkSTJn?= =?utf-8?B?clFCWUdGa1VHYzBvQlppT01uV3VRUk96TjlWcUNZclpzS0tQVlk3dU9GY1NG?= =?utf-8?B?QjhEejZLR0Y0NmpQTUhLbEdIMlZGYU9wQnJUOHZrWG1WZk1mTG1KQldqQTdP?= =?utf-8?B?Q3NwZVdyZTN0SmhaR3kyc3JDajNvRVBCWm14bGNwVlE2U3huQWR6NWZrdkdC?= =?utf-8?B?Z0djOHJjMEo1N0lvc3NLNnk1R0RWcjFYL0twMityYTV5Y0tWWUlFTlE4Z3pN?= =?utf-8?B?a2dNaUlodVJiT1dncjMwZGdqTUlzM3VOdE5FRFRDMU9uQk0yaTJhQXk5bmZW?= =?utf-8?B?cW8veksyKytjVFFtM21QRjhKdHhhOWNWbU1HK2M2bEJHdXFLYjBqa0gwbUNy?= =?utf-8?B?R1ZqL3hHMXE2UUZYZzFGZnNVV1J5cU5NaVVLcFZ3alJVTHFqM3R5akdOdlIr?= =?utf-8?B?YS9Ock9WdmlkZXRpaStCYzRJZExMcjdPeXpNQUovWk14UThKYytzN2tSQ0hu?= =?utf-8?B?MmpGRktmc2RvRHQ5TkMyYUJUY2YyaVlzQ3ljWTI5TjJKYXgyeHN5Q0R3bG00?= =?utf-8?B?ZnhGQ1lPSXd4S2FXYkVGQUtQREhydDZBWlN1MVIzbXU0dGlVbWptZmgzRm14?= =?utf-8?B?Q3VuV0ZOZWxaSkxQclR0TDNxSG5XRGUzS3kzTktUa3pzWi9hRmtmLytnZFVj?= =?utf-8?B?NFpGQXNiSFNOTC9PTkNxd2dlaWswK2VJMjFnYWE2Q0ljcityUTFlQkJCcFhl?= =?utf-8?B?RXlFeHdxMGoxaS9ZeGNLVUZMZkJZbitVUytpZGN5YWxvZVRHbkVFTTRDVnp0?= =?utf-8?B?MTg4V2ZCZ3VuajM1YlYrM1JWY0lzQmtnTFowYi84L3hTYVVWTTl6Z2U1UDRn?= =?utf-8?B?VGZia0NwQnEzMmNVLzFiaUFQenEzSjRrS3Z4aGRkYXY4cEo3T1laRXk1Tm96?= =?utf-8?B?UnNqOStlOXRMZGV4c3A3Q3R6SVBzQWszR084N3RPa256NmhPUWVoUU1SakRR?= =?utf-8?B?aHFSejdteHh2clM1ZmVnNjZIaU1qZ052cGVIL0VhMjREYnc3eTZSVG0wS0NM?= =?utf-8?Q?eYcMf7RE+49ALW6tggkABHdNm08keA=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)(376014)(366016)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SzczNU9RdVZzbXBpZExpdGlrSDRxMjg3T2psbktiUjBtVEd0T1Q4Qldja3Bk?= =?utf-8?B?YXNoOG43UHpIVHZwYUpkMWNRdTJwQTJyZzIrVG1CMVRBbWxkZUNoVlF2YkJP?= =?utf-8?B?Zk11TFhPTERNU1I1SkhRSDBOeVdQYnNDd3RMSFQxUWtDVjNSNFF3U0lISTh5?= =?utf-8?B?bktEclJvL2tVdnMxSmtzVzRoRGFzTUVHNFhQVFdTNHFJb01IU1R0TmpUbjJQ?= =?utf-8?B?NXpTWml2aklUNEJCT1Z0a3psWHM0eXJoU2pJblBaL3JiUFFNN0dFNE9TQU9L?= =?utf-8?B?SGZrT2dwaVpGZlZmUndJUjM0eGxpT2FKQlJMNU12QU1iRkVtNU92UVZyVkhm?= =?utf-8?B?anZvdk4xZGRWd0g4cE0xSWxBZzRTY0FycTNORFYzQ1pPR3BXa243dUdhL2lS?= =?utf-8?B?T1hzbkJSUmJzS2VLUUN1NUN4MWNNVVNscDExa0s2cDc4dU9zRnlhczQvUVZY?= =?utf-8?B?U09wbld4emJNZFo1dnFmRzNocUliN0NDSkpMNkQveHdIcHNaSU5VWkVsS1l4?= =?utf-8?B?NzZYRWlOMEd1bGpVOTROZnhFVG1PMUhHYitSejZmVEIrWERrN2JESC9XcEc1?= =?utf-8?B?WHcwVS9TdkQ2WWFQTWY2akZLSHBSaGJRRG9iVnJhSGF5ZEI2S3Nhdmx2bUcw?= =?utf-8?B?SGpoQStkSU9LNERyZ09kd0JLYnZSblYza2tPZXJHRTBZczFtWEFQOTVwczJL?= =?utf-8?B?Qm45MGc4TUFIVUtvN3ZyYXpDUG50Q2h6M0k5ZmZncTk0TXhaN05JRVdHSjVS?= =?utf-8?B?ZktmazcvMWE4eXdLWHNJVHkwdWNsVDNXNTVybXhBWGowOWtlRU5mcWl0M0h2?= =?utf-8?B?aUdUMzczc0hyelYxZmQ4ZWFvdGo4ZTdDRFZEaFpZaWJXNzRNMXpEMENqUVo4?= =?utf-8?B?RkgxSll2U3pWOTM1Uzk5Z2FaeEVyb2FqVUlJMWdxU3NhTEVXM2xaaTVVNDRR?= =?utf-8?B?cEZmTWpRVkV2UDhOazdVSlc4a0RnTXRYcDBLWGIyWFdiYkU1NTJoOUd1Tm83?= =?utf-8?B?SFNENjBrTVFFc3VPWjJJUHN6YkJrSVZkRENtL2VmUGJXT1RlRkF6WFV0SUpC?= =?utf-8?B?VGcyM3dyL1c4VzNOL1A1cHBaN0I5ZXdhQytIYmdOMlRteG16ZDdyUXJMeUFP?= =?utf-8?B?NHkyK084RU1TQ29XTEZMSkVOTHIwcndlK2tQUnZHVlNJWnlXSVFIZVM1VWlC?= =?utf-8?B?SHRwaGxXNWxzY2IzaWFLMzMwNzhwK29UVnlERXFnNFFpSkJCck0zcHJza2dt?= =?utf-8?B?dG1YcVBEWWRxSWJoWHJNTHJXSEVCamw5RUwrY0hOTUljeHM2UXh2SDBvdWc4?= =?utf-8?B?cFlqc0FRMGZucjBUWTlLU0M5MGMySFozM0t1TFRJZGIrZWxHNUZQbHJ5cGtF?= =?utf-8?B?NE1ra0VNUksxVlI5VDQ4dUNhMzluMWpaVzhPUHVWU25RbE5jSDBCTWtxcGtX?= =?utf-8?B?ZHpudk41R1J1NUZrSXhxSG1XeWo2UmZiTHRGbTBRdjI4V2NpSEFkVlY4dEI3?= =?utf-8?B?K25WQTRyOTdHRUdtWTZjSXhKMzVmV2IyK3hNMEREQWpQQU1WeWNIeWlZZE1k?= =?utf-8?B?YmNIWSs5SDR1Mk8zQ28reFJXL3BBV2VlQlVTRGI5aXliOGFBR2x4MWRRVjFT?= =?utf-8?B?Tk5RWTJyRU9wWTgzNVV2Qk5TenNYWFllRnBCdGpaL3poaEtDbjVKRVN1dUpt?= =?utf-8?B?SnBNYzFHR09uT0ZLcWFjSlZTVlpuT3VhTDZ0L3RPVHlqTFRhK2h5dEcrNDRu?= =?utf-8?B?MlFmUjJYM1ZRRDd5dDIxalpvdWs3eFJ3ZzFRLzRmQm5ZSkd5Z1pZMzVxVWRT?= =?utf-8?B?RXV4dVUwazhZZWswbVpRWFRsSDlUdlN1cldza2N4UU9hUW1FdU9md3JVQ3VD?= =?utf-8?B?RFAwM0lWMlphcThHWVNiSHF6ZUZ1Yk11di9UOWd2YkRTS0QvaGVsbXEwMXNZ?= =?utf-8?B?SjdEQ2FMempDVURMT1lLOWZjdUMrV1ZQUDFvaHZWanRNVjdGVGZZUFF3TGV4?= =?utf-8?B?ZlZqOXNuS2NCb3BwdVVJWkJLeDZUeU14S2JyOTdXNlpLS1JXaXM1WU5DTUpz?= =?utf-8?B?NnhJRTZjNmc5OFdOeEM3UHpPQmhYMG9mRnZEWmZjRitZR3ZPR2E5akp1dFh6?= =?utf-8?B?OURJKytCN2IzN1Qwa2x5T1JIM3ErR2xQdDZnWlFTWFcwUEE5WXJkSWJBY3FE?= =?utf-8?B?SXA2ZStJV1pOdXpEdk8wNkV3SzBYYTYrWUVZZjVRVmlCYUFwVmJtYXI1bXBG?= =?utf-8?B?a3YydkpkZEVoOXU3V1NKK3hiMEtNOXBuMC9Zb1FsWFMrZllmZnNUWWFJdEE4?= =?utf-8?B?YlZNcUpFTk1VZ0toSlRzcmN3Q0RVM05tK01OVUJOM1VSNU9IT3h3azJoUU5t?= =?utf-8?Q?1LGpKQbDmOCoVqoU=3D?= X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3fa83e79-8cd1-461f-9c1c-08de73a949e3 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:33:26.0890 (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: 1K5hh2K4BgNlS36zsfkmh5t0l79vNooYZyo8btDQVeaN6YqCjy9CLcKymEEZBS8lFHUOivZdS7kRjlbGcjb0xmkhGSLLZS42d6ljStp1OpA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT3PR01MB9771 On 2026-02-24 05:27, David Laight wrote: [...] > > No scaling, in this case it is fine to add the rseq just before needing it. In all cases it is fine to set the per-task rseq pointer just before needing it. That's how the userspace rseq was implemented. > But if they have to be set in advance then you start getting a long list > to check - I'm sure that must happen with userspace rseq? No, userspace declares rseq_cs descriptors in its data, and populates the rseq_abi->rseq_cs field (thread-local) with a pointer to that descriptor at the very beginning of the critical section. So return to userspace after context switch either finds a NULL pointer or only needs to load from a single rseq_cs descriptor from userspace. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. https://www.efficios.com