From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from YT6PR01CU002.outbound.protection.outlook.com (mail-canadacentralazon11022091.outbound.protection.outlook.com [40.107.193.91]) (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 92833239567 for ; Tue, 24 Feb 2026 16:18:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.193.91 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771949907; cv=fail; b=MjPKo67LksgP+/rb/Syk/5FIO+MC4tyxf9U+k1vxFe+MBubPKzdeyN0WdXFf/sAxQIa1IDn/5waxIMGvjuNz9HMZ9KNfvv3hf6W015FRpdxfk4E3t1egfxvbq7118lm+nL/CKUnMpqxr+Mwa1JPlgS9Y59vyOHPnReLbIQgqzgw= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771949907; c=relaxed/simple; bh=ECsEJigf5mbMmiji9dqPP/jDuN9ajU1uv7K2Sz65hZ4=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=EMTTOtL+fvBajOHuipfFmuOV2Pm0onxXPVF4xV6Xput9moEhuvo3JxZUyCsLBTVTuk3zLljJio78U6UyDr/SKBQUI3S5bb5NxWe3CwYGv6SK3kWy5C83gjTcqOzBop7zGzA9Q4laJR979aGmosnXnzv5fLkoYfjRxid2QD9E9sE= 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=B1X8A38p; arc=fail smtp.client-ip=40.107.193.91 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="B1X8A38p" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YXfdUQibJaxkhQVLyfYT0e2e4Lhz2n8o2maOy4nNl6tP5QAcTg7ar+ajMc1opeNP8wI38FOtrTxxFI3CnGgMK30M4sqVxKRHBFoVFb/LhzhETJ7fn6BEQ7t1UITGOC3iiiYdHsofhQHpQRVuMdwCUBGTqNNJziKpd/5jlwhoIu2qLxtiFD6O1+1vZ8FR0KBNJYPvv5Z3aWlIY1S2NEeaoj/ILqaCjVhIr6TrbCbHRJEwKFp959OlGe6P0vSuy07SlskYsmqt4RTWYuXhWxJ2lmnX0Tz1Uo71GfD+UoxN6KfpGFgh1t3LEAP74ED6jOlxizrO/fVJKPZhoeSxXmfHqw== 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=KoAC1kNtTmQBTfZ9VPPIPDZofJduqfmI0WOBZSGc6Hg=; b=UmgreHkGr6SUC56zYAlEjWj6TP6E4nvue1p5G5735ckp7P2unnq0es9ORNLkAk7xxuvPAzxwjsMV7khuQbmBEtxeLVi+v1rCExDdh9NG83sxsMVlnL4RQRcc2ekpe0E+QHvtnd3lrxq2v2qIzV4nWrNv743dkMEjvsYrYG2FJtBwS0+Pp8uRF5rpkcPAsafQnhci9IlmVsiREV87uj+KsdRmEtDsOZRIYN2V+CqElRBKb1V5J5REF42bxbOm1E1HRsJPEKGhj5svyWIGkdtWktqvm3wZLcG+G8MZB1CdLbO8MNfbVOSr1suUblFw4wwtxlJjgmtHhB7/oOBUyEXAhg== 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=KoAC1kNtTmQBTfZ9VPPIPDZofJduqfmI0WOBZSGc6Hg=; b=B1X8A38p1QL1Rt67hoKYUOEvfn8bGL1v06HbokRzN3zAVbUsK1Yw53cRGIwLMsxLU54ZzMOoE8PpSZbMOqEY+Po2bDk33Hx3NS6FGCx/MRJ3xprf2jmrQOAA46YZJiFNYqpUQAB0mIkkeV+xzBODgjgYhwZcoMNSLmIfvJHh3ICvheLcB/z4MbF/bfZ15xjGhVT73/rJNRIGPqfGGnxtWxCn1EbAyhMTSWpT09v2gvQZ5sBLFMfwGQxh7iJGRKI9lX/QaupamnU5TknV63MGqJxKCRHV6tPE58XfcF96gZX/EYnDdH/VhDO3EiUWZ8Vh/H/2YEsI+Udg+gXZ6c+Orw== 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 YT2PPF5273AC386.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b08::441) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 16:18:19 +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 16:18:19 +0000 Message-ID: <7717a653-cf59-4c58-b18d-7b53e5271fe9@efficios.com> Date: Tue, 24 Feb 2026 11:18:16 -0500 User-Agent: Mozilla Thunderbird Subject: Re: [RFC] in-kernel rseq To: David Laight Cc: Heiko Carstens , Peter Zijlstra , 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> <2d3612eb-7afe-4acd-b527-588763a02a55@efficios.com> <20260224145942.6e0d43b2@pumpkin> From: Mathieu Desnoyers Content-Language: en-US In-Reply-To: <20260224145942.6e0d43b2@pumpkin> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: YQBPR0101CA0134.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:e::7) 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_|YT2PPF5273AC386:EE_ X-MS-Office365-Filtering-Correlation-Id: 646e9bca-d86c-4027-63d8-08de73c05290 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|10070799003|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?U01ZUDg4WFdFUW5YRlV3NzhmejUyMWxvVDkvOEliWVpNNnQ5T2hxU0JCWlRz?= =?utf-8?B?RjUwa2t6eGRqMzBtNkdaM1MwcXMyTG03WFU5eVpIQnJjZnJTbHhjYWMzbk84?= =?utf-8?B?bHI2VzlnWUxadUJSTlJpTEFmbkp1anlDTDJiMU1wZVRkNWN4eU5ob08zdmxv?= =?utf-8?B?OE1sU0Q3OVFmWDBjVWZHa3U2ZEZRMXJFODlTazhiNS80WDc3M3JNYm1oS3hB?= =?utf-8?B?ZUhKOWFpYnBvWUExZHdKMEVtZitrM2d0Y1hkYzB0UHpucStFdlYydW9QM09z?= =?utf-8?B?TVhJcnJzditLWUo5MkxHMXhKT3Zuampmd3pCOStnbDZobTF0bUk2WmhJeGdK?= =?utf-8?B?a1A1ODIrckxpaFl2MEUwYWdGcmlPZVBXTHQvWWhhS0tWM2s2Tkx1Y2VqUkdE?= =?utf-8?B?Sy91eW1mWGpGWE1vM0xTcGx6RkoxbDhhd1hZU1NTdjlteWVBZ3pNRDFBS3cr?= =?utf-8?B?dEpTWXhadlBsZW1KVkxiejBIQ3diR3NGQ2lKL1A0MWp4VDNNTG1mZXVZa2dq?= =?utf-8?B?WURBRkg5TkNUQlk2RkI3eDNRZmx0M0dEb2greXJiYWJEQStUd3pTSXVWcHdq?= =?utf-8?B?M2RpMmJ0NzY1dnB4NTBlRC8vRlZ6RHBtaERKMGVMcCtnYW5UVlk2SVpIQW93?= =?utf-8?B?VG5YSGxPM2lpQ1dzcFBQL2k0VXp1aDNrL1lCZXVzaVFVZ2VZMVFiY2xZbnFS?= =?utf-8?B?aS81ekVQdFdTbkJWMjhPREJjWnpzbjVRejFKblVuU012VFplcWZpeGJ2eFhD?= =?utf-8?B?dFVnZUdVeVBrYlF0ZnhidUZ3dy9RUHNnNEx1ci92U3pNb1NtTi9EbVVtZ1U5?= =?utf-8?B?WWppeUREVlVmVElDMVJveUJZOElGeEwxN01qdkxlQnl3MDlMZHlkb29DZTRt?= =?utf-8?B?MDRZNDhTT0hGOGdPM2xUL2lkY0UxTDhrS3Aycm9tbGZwdVdFVXJjRW5Id3R5?= =?utf-8?B?OVNCMzBkS21NV3VTODR4MFBDU3FGZVlqR1QvTTZNS1pHdllJb0xhWktCSVBD?= =?utf-8?B?alpqUmtBUnF0WUNVUHZ2Y2JEVEw0ZUwrdXBOMG8zSzRoSy9uSHVhU0ZLQnFE?= =?utf-8?B?VzhMWllTMFRhdWswRG5VOXAzYmVTMnRIdzlWRXV1czFKNEFCMC9rcm9tSUpu?= =?utf-8?B?ZndsSkwxWVY4VEFDNi9nOEVuY2RXekQ3OEo4aHJTdjRtOXV0ZHBGWTUrc3hz?= =?utf-8?B?Y3JyREJMQ2tsSkYyRFR3TWVUY09LTENHaS91dW1aR0czRkxIQlpxM2owblln?= =?utf-8?B?cHRrNUp3WWtkaEdER2IvbVRvU0xhc2FrV2wyTDdqSjJNWkdqblZnK2djUXgx?= =?utf-8?B?M2R2bitzckN0L0xmbzdEK3Vpd0J2eVgwS1BhWlBuaklIRzhZSkdIbmMvUkZo?= =?utf-8?B?NXYrdlVVZmxjQ3dOVzZoTFZjVmJ5akZRcnp5bzV1V1UvNEtSb1dZQ2VXd3RS?= =?utf-8?B?eEd4dEhoaVl6aFdqUUc3aW5kSHZpS0NHMUZwRDhybzFneDEvUmVaampMcVZp?= =?utf-8?B?bmQwS090YmE4UHFHV1VtdHJ5anZYZVFGdFZrQytYd2lnNW5kWGFDbXk4V09M?= =?utf-8?B?NGxyZzM5NjNCS3VHMnNIdjJCMVJwUU1TRFljTFlZNm5yR21nb1hrVWpobnZz?= =?utf-8?B?b2tJSnB3UUUwbTFlNXFMZkQ5Q0VrZEdXUUpDT1FlU0luMnZwd2FsNjZ6TGtM?= =?utf-8?B?T1IzbEhJNlcwLzNqRmE5OGR4QU9pdTNBdGVmdzhNaDlXVmhBV21yWit1NUdt?= =?utf-8?B?NDRqbWJnb1pKYzhJaGpET1BiOGMvT29CZmRYQ1hWRlYwSk1OZzd6WWRZcGly?= =?utf-8?B?UGY0VmdqV1lzZVJoL0NUZ3V4R2N0aU8xd2w5Z2ZDdkJOL3J6MW9hYThmbDNz?= =?utf-8?B?OTF3WFJMSjk4SUg0SksxaVdkOXd0ajZoNFNpNGRvZXNWcWEwNzByVnh3SzM5?= =?utf-8?B?ZjgwWk9IMkd2SWZFdEVkdzFSZ09aK3YrTWNvUHVOYnkzL3Bna3FGd3YzVkd3?= =?utf-8?Q?c0zW1YfS+C3Bp62WianNpuU9FoQhAs=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)(10070799003)(1800799024)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?emQ3UWhLZllUMGNQRy90YjB5akw4S2N6eitXZUZvVWxTaExpc3J4SnFlZ0RU?= =?utf-8?B?c2N5WHAvbkJldVBJZS9keTN3VXZhSkU1d05HOFB3OFB1cFE4ajdSanB0U1Vl?= =?utf-8?B?SkpneDNIVUdBbmMyZTRnTVZLZVJrYkFRbm1xTk41N3ZLRFp2b2NORUFVR2tk?= =?utf-8?B?TlVwdHBzVG1WODNVN05JQldDeXlzWm5OeWVwNmlPc3BiSS85SzA3RVBjU3JF?= =?utf-8?B?SEI2YXlEUGpxNWU3R0s0YkFrRTdLd1ZBWGxKSDR1NkI5NFdIazlDcDh5MWNP?= =?utf-8?B?UVFBeHdhcDJzTHIwSktpRGFuVExJWDd5TW5TNW9OQlYzV1JWNWV1OEl6ZW9X?= =?utf-8?B?Tk5KelFMRnJnSUVqTVVqSG8zWnd1RnhDZVZwRTRQYUxYVG9xZEhVRmJzall5?= =?utf-8?B?UXBwNGllTHlybzJiTmQ0Y0tZZTMvbGFpblZucVN5eU9hUmpKTEJRc0h1em42?= =?utf-8?B?Q0pmVFowWjdpZ2hJSEc4bXRHTnFTWDdKQjJSaEVTQk54MVAzYnhDRmh4NUhs?= =?utf-8?B?NjJXUnlkU0ZMWXFVZ0ZmYUNJSDlWS3luTHdJc2V4a1pIenZBQzUzR0xkMEJ6?= =?utf-8?B?RWgxQnZUWklvcWRTYUVqMDFBeDRFTWpNQ3VtU1RVNjYzTjRUM3ljVzZCZERO?= =?utf-8?B?bFV2bXRLUTJocFEzMENoYTEwenJscTVUYlJydWNpaU54VWdXNmVlQTR5VzVB?= =?utf-8?B?dElzOGg0TUUzRG9uSEloOHFMQ3loeGRxeVFFcmRpTTJuekpkQ2tjcXM0Nm1j?= =?utf-8?B?R1Z4Q0p4eEd3S0owcFV0Tmh6V3lTUWlrV0hlOTVmRFI1a1FzODdSbVJNbG13?= =?utf-8?B?R1Q5L3MxUkoreHlyS1hIbUNCV05UeVBLVDYwTFBaUnowOXo1NThObnVDeVc1?= =?utf-8?B?K3dhd2xZcG91NlFHNzFFQjEzc2N4MXVjbFVzcXBHRnNISGFYL1lQdUFtRTY1?= =?utf-8?B?VTBoeGRFczRlUEpYd1lVc0dhN2xnSjh5aFJ4U0VmNUsyYmk0TXYvVnZLRjhZ?= =?utf-8?B?K3NSbzZtZlNDR1JDaWQ1NitnQWd2SCtzSElYaW1ZNmFLQXNUUnV3WGR2dUJ1?= =?utf-8?B?ejBtdXg0SDAvUEdWZUNZTXFzN2N3QjFlaXJWNnNpWGRMTk5DajNRUDFITjZh?= =?utf-8?B?VEh1TklJaGlOSWIyVGsyRklXVUxRS2dyY1lmSTBDSHZiV0ZMdlVnQ2hQYlJs?= =?utf-8?B?SEs0UUl3ZFprOW9qaEtQMUFRYzNGbjNhb0xaV0NQeStUeDNsMXFxZ3MxYVdG?= =?utf-8?B?enF5VGZxZnhxQjliMEJWVzlTSDNzblo3U0doeklmZGtSUUt4WG9HTkZ6NDNI?= =?utf-8?B?UDJOOFBuV3JUN1pjTDlOVEtaQUFqQm9XRHJ2MjFaaFdjZmFmNCtEQzBybE5P?= =?utf-8?B?b2NqbG56cXB3U1A0S3Rlc0JFTnNxdjlMSUJ4dWdHRnVzY2tWdUkzbHNyWFFL?= =?utf-8?B?TXJ6ZUVmb01VTEQ4RnMyT0RsdExtSkx1OEpDVGMwUmxtU2crVng1MVJ6bE8v?= =?utf-8?B?RDhucXBuSUJRYXNES2M3djBKenJtcWZyaG9XVkdpZDBBRUZkNGVKVnpJeHVK?= =?utf-8?B?UGpoSXZydzJIdUJNUUNkckdTNnNWMkt0UGpObkkzWFFIRkJDQ09ndlBUTndE?= =?utf-8?B?VWwyUENnVE1iNk5mVkVuK2ljNUswWGs3Z29KZk5TaTR2cDVTZGhMR3dpbWJW?= =?utf-8?B?TlpxbXdXWjBtWnF3QnJPVXVxL0RGN2ZCd0IyelhmUEI1bnd5bGZMV3JpT1FU?= =?utf-8?B?dW1LUW4zWVh5N2hibGo1ejc3QlZBalJVU3VqK3VFaUJINnZGOW5Ha0FucGdp?= =?utf-8?B?bFBGb2Zsdk81RE04d2ZsYkY3YUVLQzRkcExrMkc0OStHdEN0cHhDV1Qzd3M0?= =?utf-8?B?R2wyL01neFp6RVV0aGt5czdVVzNYSWxRNzVKQTZJa0hPVWdlRnIzRWZGdTZT?= =?utf-8?B?dnAzMXd1QWgrSjdZZUdEN3N5WEQ5Wm5FZHZ1K09yLzJSOXc4TEYzbGYyYkdK?= =?utf-8?B?d2dWZEwzYmYrYlZvekZGSXh3cVdPSURxSEJFelY4RUpySnFQZGRwbXJ6bk5Y?= =?utf-8?B?Rk1ISE9tdU02WEhmQVIxamNLRlhDTzJZRmIvRE52VFB3R0dEdUhkZHlKc3pR?= =?utf-8?B?SHpMd0UwbVllSDlLeWhIWC9xZ3k3dllxRWhJYUtpZFpzcXlINzJSLy9ORGsw?= =?utf-8?B?YmhseWFybkJvM0tWQnpDeU1lUzhkVmdNUHZER2hxTUFJTDVFTFk5dVRjQU5R?= =?utf-8?B?NGxQZlhrRUgzSnpNYnZpUlp1YVViaS9GNjdETGdoNFBkL0RsZmx0UHA3QXYw?= =?utf-8?B?K1VSKzZMVGtSSFVTdFYzcnRSTVhkNDJ2WnlrWTF3cGVraWFnaFA5ekxEWFdF?= =?utf-8?Q?uzAfcY8vnwlLK18GhTZs6LP5KvXltotUDVkSiXrL1uazQ?= X-MS-Exchange-AntiSpam-MessageData-1: Xmv0dPg+YhUnWgOf6Ju9bk+XpQNFX2HdAM8= X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: 646e9bca-d86c-4027-63d8-08de73c05290 X-MS-Exchange-CrossTenant-AuthSource: YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Feb 2026 16:18:19.0571 (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: vd7MqQGo0p5nWlG1lKhD1A3ZzcIRepo/KOvOcmDvFj6o3/avm1CRSMqzkigUob9A7UCsHWqLTV2kYoNgwYsYAkRz+7zDd9hJWIdEwn6MDQg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT2PPF5273AC386 On 2026-02-24 09:59, David Laight wrote: > On Tue, 24 Feb 2026 08:48:03 -0500 > Mathieu Desnoyers wrote: > >> 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. > > Does that mean that 'start' would have to include the code to setup > the rseq? (rather than being after it as above). No. The "code to setup rseq" is possibly a sequence of instructions (or just one instruction) which ends with just a single store which populates the rseq_cs pointer. It's OK to have the start address immediately after that store. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. https://www.efficios.com