From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from YT5PR01CU002.outbound.protection.outlook.com (mail-canadacentralazon11021077.outbound.protection.outlook.com [40.107.192.77]) (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 70B7435AC03 for ; Mon, 16 Mar 2026 22:35:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.192.77 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773700507; cv=fail; b=O/9Q003BVG8FT1CjXHMcOdzBuSVrg+kzdPELdpcWX6DmzorD15An28/rWwW/E6x0y3UVvqqeG4167JJELGSFD8hXQ7Gme9RQKMRftwM+vbqMvR15hcqGcu8cFiuynsjOxzt3CwXCVii2v1cPyy7tEBxQCKvj6kUr12rMrCKjHJM= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773700507; c=relaxed/simple; bh=fd9wlRB2bfviyygn0juMynmReAxHvQtmK3GNKxavlaM=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=dbozD0MZ3ezS/AcYbkl4ftVBtMLb0mms1M/Li07NWBX8tzcT/LdyByNil5qSM8RTL8F0/Edc3xldBZVec/J9l6qBqpmRqmSZWfW1tJZs+uDSPwNVMxHjafa9yD4hxtindPUYXOmIMjgAVORnYU+tY5xDJTPM5C+0ewMgOh2WQKc= 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=lUpe21+J; arc=fail smtp.client-ip=40.107.192.77 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="lUpe21+J" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cpZajVT+rJSWO9AFRLofVkc76yp71AjtP1kAF0LZlH6KqePuypr42rQwndgZiLh8xAu3nbFLuDY6qUrcg6H1KU2wE1VdWqCp9Cw7owGlrDuc+Xlzamy+1K8yKGO7/BQGrJWxlm3EHJ2QxnLDQ0C/JgTh2+WtHeQifPbiXD4ml5F1NAzxhQrFSS/RzCesrg/EL/bB3d7u/8BGbRNDdfoCu2dP6Nicvp7O/rW1UutyK++QwYAr9yfdYWJq8tO0TQv9dT3sJDhGtmTMJclakE9fQipEPrQmNCmTt925HTD0NQ/yln88Wtt5mpRYkspXhoyufTNIU6ReyghWQMqRPoZA1Q== 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=UFOlOz1J5x4IBiu+XBRo0tKLAr23Vd2uLatXaPHTXTM=; b=ByUqvBv9iT1ECYDJfiCIR08gMLP0d/tJ6xqHGRlS1z/Sp+3Bavp5ZPSmpANHsujWfTfDNAvYFbe8szguiseqKM+52gAcp2/yBnFEK8nM7qJGCHfvVTNWq5C6tdwXxDAVsc2XqQJVtsh3XBHBh9RcsIpn1fzgOV468oL3D5dCuEzomfBnXbIJ75x749r9s3xxUltqBM1jD3yVYV6Nb2Y16vpnEFZ6zRZF98/kIvNrIx2LDvq3xXAkCfsWtSvi0r4CeP2k6z67GrAr/OgbWDPGJ4rjopWhpr/qB3lOx5ZCkmZW9Ug6po3kuWkLiFI1Wb9hNvkYmwar47BDZ3TZDCd/ug== 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=UFOlOz1J5x4IBiu+XBRo0tKLAr23Vd2uLatXaPHTXTM=; b=lUpe21+JJuFjqC7qmIDra495TcArZx7n6fMxVviNFnttB1kzBbA+Y52ZvG9Fu/qlIqkJG9uIICAvahzbdmBp0A3QpflvCJTQbFHrUHFjns68StXJJd97+CgqMEhaYfZ8fmm9gVZkJFOiGGWX4FvzPAHvoRfUTW/Mz+mweA/iLPULTSWaLfJDySeUkS6us+Ie69MUPJB1QbxWQHEgi/HijkysCWZA4ZvJ49T1mJ9dz/ZoYxDU+vxFoomivo3Avq/Ca1Gb/z08zU65SrHyDyhSxw241p/eDeSh1X8IglmDqMLFOtcfxI0SYjrGbaB8TiamTbUgECq6UR5tL7xCPa2v2g== 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 YT4PR01MB10328.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:e9::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9700.22; Mon, 16 Mar 2026 22:35:03 +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.9700.024; Mon, 16 Mar 2026 22:35:02 +0000 Message-ID: Date: Mon, 16 Mar 2026 18:35:00 -0400 User-Agent: Mozilla Thunderbird Subject: Re: [patch 8/8] x86/vdso: Implement __vdso_futex_robust_try_unlock() To: Thomas Gleixner , LKML Cc: =?UTF-8?Q?Andr=C3=A9_Almeida?= , Sebastian Andrzej Siewior , Carlos O'Donell , Peter Zijlstra , Florian Weimer , Rich Felker , Torvald Riegel , Darren Hart , Ingo Molnar , Davidlohr Bueso , Arnd Bergmann , "Liam R . Howlett" References: <20260316162316.356674433@kernel.org> <20260316164951.484640267@kernel.org> <7b942738-231b-4168-8d97-0e5c974af2e9@efficios.com> <87v7evo5c8.ffs@tglx> From: Mathieu Desnoyers Content-Language: en-US In-Reply-To: <87v7evo5c8.ffs@tglx> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: YQBPR0101CA0149.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:e::22) 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_|YT4PR01MB10328:EE_ X-MS-Office365-Filtering-Correlation-Id: ad9b9ab9-4f6d-4823-125e-08de83ac433f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|10070799003|1800799024|7416014|376014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: aj1/PfrR5YqlPyyY7J+pbX4GSwgczbNuqkG5rlwd1c6kL/OTKWrcJxkzj3texUCrtOlBIAWlYAqE1XdYpHf+oud919kyrQ8fM1XaU/cCUPOSuhl9hMBkgQsJi/Pvk9FL7SFApW6Q5HtHCh1XymP1k46fl++Ce1VGLXtH1e/HGQkkAlqJz2DFeYDvTCr5K45QWvAZ28eMaAfgdbEnMKnR+hhERHDMXAurZJW1zflR/3i+Cm1j+qKcKzYiTtwKtxtZp/fM8yP1XruwUfXQm2DWirV2BGjdPveh78XWF3qzGtFBZbotk4L6S+fY8eaw5PTV+X3h7vcIYkbM5OWsGV2YuJmTTC8qrrBf3Czn4K2QNAHuVV+DTsBDNHAx/+h+23CFXG740lc8L6s+euYorbsC7ujjUSnKKHCn6DsMb6svJm1EZ0U7XtPoqVzKXy5iumtJ95EShosCO487gw7GyzI3eJmAtzYVchoEvsUeyvRUgYq7NZKkpPiym8SerpdY1lUHI3N4zta0jERWT0ZENJxAln75vE/7gGEuo5CwO45ud19sT0UYokpJ4bLE2E7aEtKC+Gkz8H//wAekHbjozIY57oje7xoSerRJXim/d4BE08jv81ybWD1tk7rkudaMK9RVzaeWS+6uxpq5lCeBt4zRTfG7cSfVJyLBefxKdL+yc+hBw0VJyxcbWlE7SxkUPgsq 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)(366016)(10070799003)(1800799024)(7416014)(376014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YVIwbjM4RFMxcGZrR21MRVdtb2xKQlJPVkZjbTI4d1lLS2FwZFJmL09lWXJI?= =?utf-8?B?N0ZjL2dPaUVxdlRldWxJQzlxeHNUQkExZlRaZWtPKzN6RmN6SjJXeGhmbWo3?= =?utf-8?B?UnlBOWE1NU5zRlJWWnZZaXFWTWt0NWRXL000YlQzRFUxTmR5eGpHUVFzY0Y4?= =?utf-8?B?aEl0SUh1dldvQ3JHOGpleVVlKzhPUVlROTQzeTVjSlM0UllNU0FHYUU0Q0lR?= =?utf-8?B?eU5OdmlBYS9XcUJLS3hTaFZTZUJlT3RQNlJwS0gzMHI1VUN1ODJiNkFzbElU?= =?utf-8?B?OEZySjhiTS90eDZycTFkRGpjK0hwU1FRcGlZL3RpcVZ0cWIrcnV2TS9PMjQr?= =?utf-8?B?NXhXb1pBbVgrWXdrMHFEUVNETUF1NTRselF3U292bUp6cnBLTVIrL1Q1VGpk?= =?utf-8?B?SU5QSi9qQThwdS81WlJBYWpvREhzVENydnU5TXJHNTIzWVFGTzU2R1FZSUFt?= =?utf-8?B?RVpTUE5DR3ZiN0VvK1drVHBqQWYwUFJNYXpFbzdFWk5Eek4zaUh4MFpPQzJm?= =?utf-8?B?YTY3cDRvMG1lUURKM3NGekNpS29DWmwrSElubUhHanFFWFJ3Wm1ESUtoanR0?= =?utf-8?B?SFMvenhaa3RQNFJqdUpMNThaSDBaeWVpbFVXdmVxNDFOaFM4M2ZDTXdkTUVz?= =?utf-8?B?b3RJQm9hZDZQT2tEQWRFQUJYRjViSXBNM3N2bzVkUUtsZ3FIcktxZU9DeEFC?= =?utf-8?B?TTQ5M0c4WTFYSnR5N2kzOVB1VXNnTHQrSHBmMTNWaE14b3hQa01uVmZsbjhY?= =?utf-8?B?M1dhMkhsSEN5ME0vNXNTS2lONGJtNnVScmxYWGx4bEFxZ3QrMTE1ZGlNY1Nw?= =?utf-8?B?ZGNJSWtIQkpJNmx2ekluTFdLZVZvN2xTV2dBYmY4eEVGNTVGL1RwZU5BVlY3?= =?utf-8?B?NWlYdGVEREhRdzVCcktHbGhjUkk5SVNLb0ZBb091amRHODVOWHNzV0EzMDQv?= =?utf-8?B?aFY1RkRBdDVtdWhTNHJJUHF5S0MwZGFwK212Y3VVSEVaUnlzSk9HVFE0TlRn?= =?utf-8?B?U1pxWU5EMGoyd3UvS0hzMGM3NDJjRDV4UVFvSFJjc3UzeGRZemRaWHFxQ2hN?= =?utf-8?B?OU94cHArYzYwSkZPSGZyUHE4ZG9Cc2lwZzR6RmRtUlUzdzBuMURKTHpRUVY0?= =?utf-8?B?Ky83eklsQitlRXVqWXlTTW1ISWExNklsVzBnNUlRNVo3eHNZN202WVUzNWFP?= =?utf-8?B?UHVIQmF3VjJrcmYya3FEbG9XKytNWWN6R1BXQWl4WGlNSDB0UGhibmlpVG9z?= =?utf-8?B?NFVaR1o1ckRnSzVpZSt0cXNpRzdNbVNYVmVHcWlZcjlwRzRBeWgweS83cDU3?= =?utf-8?B?T3lxTGJKRWdJM0lzZDJsdW1VRXYvd0NtRGhkSG0zZGhzZ2J3N05jMkpjZ2xz?= =?utf-8?B?bVEwZ3FQOWNycTl0QmloYkYxTUJlYy9RZlR6azByN1BGNWJhN3pQOFRyRndr?= =?utf-8?B?dFVPSHMyVHc0NkJiemp6eFFoTVdFTzlZQkJhckNpb3FhalJ5SmMvYVVUSWtI?= =?utf-8?B?Yy80MmI4OHY4d0ZOcms0TmhWdExDT0g4QW5Tb1JHakQ5WnJiRTh6YUZERXNI?= =?utf-8?B?WjV0eWphNUlveTAvNmEybUVYSlhJL2RDVFQ3M2JxWU1HdUltLysySjh3cXIx?= =?utf-8?B?M1ZsVS9BNk9CaWpCak1TMEp6VVR5aXBWRG5QT3RGSXhBdVg5b3QxN1FPdEdk?= =?utf-8?B?eDBOd1kwWVcwaU50L05OejFHZFQzekRYN2xEMms1Zm1rcDhBRDdBQWxORkdQ?= =?utf-8?B?R1I2eGxmdS9leGszRm9VOU96dUt2QXpFUjMwamJ2bHVqeFkxM1dqd2VTWjNJ?= =?utf-8?B?NThYNGczVC9pMnFSOE5KY2oyVXZraXVrY0RjY0ZvajAydXBzMVZKWHVJbG5v?= =?utf-8?B?dEJSazBjZFdLUVFyTGFiTHNHa21rTTNJTXJQa2Z5NEVjMUlKcThBMkRseldt?= =?utf-8?B?REJ6dFRldCtZZDNZR2xRbXlwOTYremtZNzRXcVg2VE1FcXM5WTN4alZDejly?= =?utf-8?B?UmZyNHNMZXRTMFU2MDlZb2pzVW43WG9kSTM4VGh2U0dBbXVnOFptRnVUQ3Q0?= =?utf-8?B?K1dtc2NqQW0xWUFoWHpSNnpxV0swRUxaN2xGU05hby9ycFlsOGwvRGhRTDJ1?= =?utf-8?B?alJ4WmV5TTBWSjNVbC8vTnRmakF4bnlxVnNHZldpTjRDRHE5ZFRlYUxrSjNp?= =?utf-8?B?aXFNYkt6Y0MzRWh2TkEyOSt0ZnM3aEFsdllFZHpEeU1NT3EwczVCWDJvQjVH?= =?utf-8?B?UVA1TTR6dkhWSTkvZlUrWVFINlZGMlFDUXV2MnFpWVhvaWRocU9sd2pVYjBN?= =?utf-8?B?bzZJWFUweHFTd092TmErZG5ndnh0YTV0dVVVTEp2UFoybTY2aHRDd1VNL0Nn?= =?utf-8?Q?yFeUayKmsoOsKgSEA3EpvGAriDeFcy1246+6vOgumm0s9?= X-MS-Exchange-AntiSpam-MessageData-1: 1ObKG9DjNjZZd7cZqCFUr/iECkNBGLSq+eLU37c5cCANgnIsQ1fEq/eg X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: ad9b9ab9-4f6d-4823-125e-08de83ac433f X-MS-Exchange-CrossTenant-AuthSource: YT2PR01MB9175.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Mar 2026 22:35:02.0863 (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: mmQNCHJYfIGAoRAavbE7jILpYLFRyp+m4Cte75oM32emwJLQvlErkQ5DDpjZDCZm9/abOaFYIaMUf0c2qC0TYzE/RECokfbd/Mlpolb4vAw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT4PR01MB10328 On 2026-03-16 17:02, Thomas Gleixner wrote: > On Mon, Mar 16 2026 at 15:19, Mathieu Desnoyers wrote: >> On 2026-03-16 13:13, Thomas Gleixner wrote: >>> + >>> +static __always_inline void __user *x86_futex_robust_unlock_get_pop(struct pt_regs *regs) >>> +{ >>> + return (void __user *)regs->dx; >> >> When userspace is compat 32-bit, with a 64-bit kernel, are we sure that >> the 32 upper bits are cleared ? If not can we rely on >> compat_robust_list_clear_pending to ignore those top bits in >> put_user(0U, pop) ? > > Which compat version are you talking about? > > 1) A 32-bit application which truly runs as compat > > 2) A 64-bit application which uses both variants and invokes the > 64-bit VDSO from a 32-bit program segment > > #1 is inherently safe. The 32-bit application uses the compat 32-bit VDSO > which only accesses the lower half of the registers. So the mov $ptr, > %edx results in zero extending the 32-bit value. From the SDM: > > "32-bit operands generate a 32-bit result, zero-extended to a > 64-bit result in the destination general-purpose register." Ah, very well, this is the important piece I was missing. > > The exception/interrupt entry switches into 64-bit mode, but due to > the above the upper 32 bit are 0. So it's safe to just blindly use > regs->dx. OK. [...] > #2 can really be assumed to be safe as there must be some magic > translation in the emulation code which handles the different calling > conventions. [...] Sounds good, Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. https://www.efficios.com