From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from PH8PR06CU001.outbound.protection.outlook.com (mail-westus3azon11012019.outbound.protection.outlook.com [40.107.209.19]) (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 BB855274B42 for ; Tue, 6 Jan 2026 16:46:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.209.19 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767718009; cv=fail; b=jllPfJrQ6LjSNbG9fKjph+cHwFg0QSuWaMnvz8Tp58Ttp5bAyjceEnrs2sqb4r5r1x7whsraNP4JUNGypC/TUXrfXdpaAzRHXlqc/HJR5ApMGe4I9qjOudxLSeZGTZXwLfpc7Cxa7R0lN9fzHV9p6QN/NhuGOU60+4QjkoBOiGM= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767718009; c=relaxed/simple; bh=J3uIr0P1J5QeWjF3iNmHifhEac3JjCqlkClUixKNhn8=; h=Message-ID:Date:Cc:Subject:To:References:From:In-Reply-To: Content-Type:MIME-Version; b=EG5V4d4L+OZzAL7fPAVEpOtH5o4uV1wi7Vpcq2/UUKIg1pIxQUberW7KVMk+xCFgrtd3R/qxFYTth/XTouf/oM9EVh949N1V6etW3afpZQWFd+YPoZ5tJ2x5g99SWFDuesAYFTVRFK/JVPUgwIRrdi3O3jxVzzDO1QoAkxZeYUk= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=citrix.com; spf=pass smtp.mailfrom=citrix.com; dkim=pass (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b=PsT6uaL3; arc=fail smtp.client-ip=40.107.209.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=citrix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=citrix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="PsT6uaL3" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KO09knG56/2/5zqbaWYqIzlhR7iuo5aklrfUDHxTYlOuBcBOGUiaZ5JiakitTr1xbzTs3zl9PGfx5C9gkHwnnkmL7GVBYTpeBJBD6SG9YZQC8//8q3LTG4plajqCFW/3ljDM7RUt9edVtijzjI+taFHhshrhO4VZ7N2I0hU8g4f6jVzh9iHZmyZAZpjNh+Ad+zwiVP21kNE3cEfygoPRRNjFy99VRI8AKFW6ikmskNZErGjcYqd9uoG6ZWdvwhB3dTPbe4eoSaMa5Ozuht8eXvSstHxaK3ARQHeDl1YZsmZ+JxZleI3MDuZDVVEpD3BYgjRFO98ypKLhx2Z/aE6FHA== 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=N1oSa8WaHbu4+w3tmKCueKHeZKnaft5WDDzNYs4H91E=; b=a0Jwpu0BG/pOr+jT3PvPiVgH7mAyl+Ru3O0J/vY/tZP23HGhRtQEyIteSxRRXJCXOnI24sg1jlUnuaJ00T46/3Q8ZedbvApOhbIfvtYNsQEsCnFjsvZJPPqaGKmaQt5Xhbi2hHj6HiRpSgDZnNdbvMDJ0oI4jnXeHIwJAMdhxhrY0EXxebdN/pWlfQtS4DpBP2Eud8cJp0s0iXsLrMTfxPaWpwJZp2FL+kMToSoTFq4hq+JQRfiJdwAKiDgeszRFvs8qdeHvoGD8sOB25H4N/KQ2Bs/cMKcOpBWUTpE5B6rECumurWlVOARa4sx/XcrnTmL5Fox7deMneRw48Klclw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=N1oSa8WaHbu4+w3tmKCueKHeZKnaft5WDDzNYs4H91E=; b=PsT6uaL3IYVpcQbG8UXVk7UT570zGqSxfW4GSJV+VlMMIZvMg5WipYBqQ92ldkege1q0mtOp4z/M/5zIcA+7DSWoLYJD0qx+4c+cggc953I6jSwvIn4qFO8i+ogzE+A1RMIy+Hz2QE2ANwrhNlWw7xkp3MHBZ05eZ5yT4b9ah00= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Received: from CH8PR03MB8275.namprd03.prod.outlook.com (2603:10b6:610:2b9::7) by LV9PR03MB8438.namprd03.prod.outlook.com (2603:10b6:408:376::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9478.4; Tue, 6 Jan 2026 16:46:45 +0000 Received: from CH8PR03MB8275.namprd03.prod.outlook.com ([fe80::a70d:dc32:bba8:ce37]) by CH8PR03MB8275.namprd03.prod.outlook.com ([fe80::a70d:dc32:bba8:ce37%4]) with mapi id 15.20.9478.005; Tue, 6 Jan 2026 16:46:45 +0000 Message-ID: <3f9765e1-8f02-409f-813c-24ff378f7a90@citrix.com> Date: Tue, 6 Jan 2026 16:46:41 +0000 User-Agent: Mozilla Thunderbird Cc: Andrew Cooper , LKML , Xin Li , "H. Peter Anvin" , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org Subject: Re: [PATCH] x86/fred: Correct speculative safety in fred_extint() To: Peter Zijlstra References: <20260106131504.679932-1-andrew.cooper3@citrix.com> <20260106152008.GZ3707891@noisy.programming.kicks-ass.net> Content-Language: en-GB From: Andrew Cooper In-Reply-To: <20260106152008.GZ3707891@noisy.programming.kicks-ass.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0542.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:319::7) To CH8PR03MB8275.namprd03.prod.outlook.com (2603:10b6:610:2b9::7) 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: CH8PR03MB8275:EE_|LV9PR03MB8438:EE_ X-MS-Office365-Filtering-Correlation-Id: 093d143a-1f40-466c-a05b-08de4d432d4e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|7416014|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?dDg2MHpDdG9EVEExVjYwMTBxNTYxOE9BdE16MHptWjlLWmZ3WWkveTBHV25C?= =?utf-8?B?a0hCS1dwSnZzTU1taGV4VDVkczlpNUc1TmsxbjdoMzZmNG9ESk9vcFA5cFBY?= =?utf-8?B?QTU0d3FjRkdOMUJDdkJlbkpWanh0Wm1kWUVQeWpwb2Fpd0d6QS9rMHNBSTMz?= =?utf-8?B?cFVFLytSZnhTdUZud1o3UVBqd0JQK25ZNU9oZXR5MHBnMllzZWZzTkxVTjky?= =?utf-8?B?Q0FTSWNrTm12bUdXaWhuYitNc1h1SG9QMzY4d0d5Tk1GMENIQ2FJN1YxT2NB?= =?utf-8?B?T1RBOWt4S0RtM1RRa09HUjlZT3NjQjd1TU9HL28xcFo4b0dIOVlSb2JOaVhz?= =?utf-8?B?MWVPSkswY0JsUlJmZXdYQXhIMUFFbWExYnU0aGhmOXJYMFlndUhoa0dHYWtj?= =?utf-8?B?MTFESTYxeHZlWkV4Z3MrUXlKd3d1WGJ5Q2hFNG9GT1JPWGdYK0diZkVmRzNT?= =?utf-8?B?VGpWdWZSVytFMTR2R0xITHpBWEc3OXJ0Tm1ZelJKRFM4R0NmZTg0M3JFTU1K?= =?utf-8?B?bDFtdnVEVVV1b045VXliK0h6NTZzQVZMSFRmQXZaUDFXaUcwYjRXTllLZWxM?= =?utf-8?B?V29FOVJWaXdINE1ETnFINUtNaWJxUHFYZU8zMzMxeGhHbnNsM3o3ZHRvdUVV?= =?utf-8?B?RmRURUxoelpZdW9kcUNpanlxSkN3eUtRcnl3ZUlub0dqMWc5UFlCRytTQ3hW?= =?utf-8?B?VUlMd0lHZ0daTkMrdmJiUGpETHNtQmVGK0ZpQ0d5bERvZFRvNDFpL1hXL2J6?= =?utf-8?B?VTJ6STlsTWZCdXpGVjdxQlBWaE9taDFQK21XMEJDQWlOYUd2ZUpOZjBtd2ht?= =?utf-8?B?bmk4U0FFSW9QM2RiTDhKVkpXMVBCcHJmTlU0RzlKRWx6dWpPalVMTTRhSk9s?= =?utf-8?B?Znl0ejZZNWk4NjJFUDZaRG9pVlRPT2R6cnNVM3J3Z3hsU1lpRXZIR0k0Ty9w?= =?utf-8?B?SXhNdWlPYUhZVjNWdlJBMVdRSURmcFVaOWcvOGl6aGo5Y1dtRFkzZXNBNTc2?= =?utf-8?B?bGxkeExJYXlkRHFFMjhjZHpNcCszSm1zcmhDTHNrNUg4dXBvTUFJaXA0VDNo?= =?utf-8?B?Z0M1QjBmQSs1SnMxMjNWN0k1cWl5VWhnL0kyTEdoajZjc25xYUZacjJNSmR1?= =?utf-8?B?ODhXY0J1bmZPcWduTlpURDUxMHcwNFI5YnNNOTRkZzlHczVtamxUSTYwd2hT?= =?utf-8?B?aW5iNjdSNEw4ckJQZURiczNyQW5ZYmNiY05mZTdqWE9pZStXdGExbVEzWno3?= =?utf-8?B?emhpQ3oyNXBuT3A3N1UrMFlDdnAwcml5REs5Sk5Pdzd5dkUyQjAxTjh6SG13?= =?utf-8?B?c0QzWURPZFdld3VhMGowNlRFZGd2S1BPVDZodFlEMy82b0U5Z1FjRlpVT2Fy?= =?utf-8?B?Ni9BSTJhSEtuVEtRL3lEN2cxb1ByQi9DQmg3ZnV2bTVBOGZOOWR0YmpENkZi?= =?utf-8?B?L3ZvazBweUU0d2k0SlNwNzNQWWY4dmo0b3hmSTNxQXlnOFZJVUFNR01OY2p5?= =?utf-8?B?c3pPYUZ6REd5VjNPL2M3aFdrVUFWL3hGNEwwV050TjRmRTFwNkZFRVNRdlNH?= =?utf-8?B?cUJweWM4dEtxS1ltRHloUTI3ekpXNmtsV2ZRSWVOMWFZdnhvR3FIdit1ZTZZ?= =?utf-8?B?Uk4xaVJiRTZBM1hadGFRZ2M4cmMyRDhzR0MrMldSWDZwbkhUSU9YQmdKRVp6?= =?utf-8?B?MnV3czIyMCtjbERQVFdwRlAxMXhOTGpIUjdWRUNMOEpGa0RtMGFqVk9aUkRS?= =?utf-8?B?N0VRNzVxVVpXeXVkV0hyQWdXUEJ0eEFzQ3Y5RC9teGI0MlM5emtzdWpVRjlN?= =?utf-8?B?b2ZZeDRoNTUxc2FBQS84SWhOTGl5dDJLZHFTYUJoRVFBT3JkemFGa2tjeVZL?= =?utf-8?B?Z2ZqWXpsSWhEdjl3YlJxbTlNSzFvaVJUcTBVVFJnNFdLejhYVnpyZU1kcUV2?= =?utf-8?Q?IaOYewM6RchDHe7rs6zLUeuT33xjEZT7?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH8PR03MB8275.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(7416014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YUxIVjV3Y2trazlRSzV4MFhveC9yUjZESDJENDNqNFFiVzYyVEw1NkREMCt1?= =?utf-8?B?dE5Nd3FmbkhCY1lKY0tXd0VubXdrcVVCY1luczN5V1U2VzM0OG4vdnNjSGwv?= =?utf-8?B?dW8yZy94bWRPMW8yV2N3aUNsYjdpMUZxNFZodzg1V2tzZVFSREZ5TnhqUkdI?= =?utf-8?B?WUJFQzNTaVlBbTMxZ0xiUExPbFkwTHFRbG9sMjF5bG0zSExlTHFvVGVJTmo0?= =?utf-8?B?Tk9EbWVBbncxNUM2VjhqYVRKV25SWTA5SXR1elc5UVB3MUNQYmtNdGtOWFNp?= =?utf-8?B?bmJFam9HcG92ODhQRXR3VlRQRTZLcWxueWhBU3ZGZUhEYjRRRTE3dDB6b1VQ?= =?utf-8?B?SHljRFRiVGVMcThQSnpUMFdMWXYwZXAzQWtqWXhCU01acEFGeGpIMS9iK3ln?= =?utf-8?B?Yk5WSkZjYS8yQ3hIR3B4dWZVc21saUx6bWd0TFBxdjBkQ043TXA2ZXB0S05q?= =?utf-8?B?ZUdNMTdzOTc1c2lVMXhZb2RwckRSbzcvVG8wdkE5SkphWi9jajRJUlArWno0?= =?utf-8?B?TXVpMlRGeVpmQk9SV2lybjhuSGVqVE9SR0Q3OWI0aEJpQ3A0Ymw4QWVPd3N3?= =?utf-8?B?Q3NzeTFYc1h6Y0loamo4KzdsdDduWnA4TDE3U0hrMnUrV0ptamovK2F3dHNn?= =?utf-8?B?ekZHMWkxYVltNjl5eEw4cTIzNGVoWGprTnlpbHZzRHE4Wlo2bDVOYys2VWE0?= =?utf-8?B?TnMwdEtyYVlrNTBVRDRIU1cyNzhLVURFMVg2R0Mwc2Q4cDRWNVFERVYvUFBs?= =?utf-8?B?VHNxRFYwT2orWkhaRFFsQys5MlBTV3VRRjBFeHlrK1doL0NYR2hzTmVXZ2hr?= =?utf-8?B?eUpTckxNT0Z0QkNYY3Vldm9MRmRnUkliUUVVd09xMzI2U01aUEt3bVZ1YkxB?= =?utf-8?B?N1dwRS82UURraVcrZXd3MmNSaW51Z0dUQ0poNDBOWHAvQUo4M3lFelVtKzZZ?= =?utf-8?B?SXJvajA1WjYxUnMyUHFVcTFKaEsyNERiT0JrRURmeHRKdDFBNUpJTElYV1ha?= =?utf-8?B?M2dTWSt2cUp4WG4vWEFnUk9rRDBBUGt2UW9YRVlBRzhOVk5MUERTYWdvcGJi?= =?utf-8?B?WEN6cHVvRi9uNjVvZ0w0RW9GcVJCd0NFTUFlYVBjMkkrUVJzQ3c1aTFONHFN?= =?utf-8?B?VTd6UVdZcDVEYzMxTFdXRVo3NXY4eU9wMm1XckNzRFYwQU5GT0VVMFlnSGd6?= =?utf-8?B?MXBTUWcyM0VNSEJFc2M4dWZwdTFjc2xscnlrZjB4RDdQajBPNTBYZWh6WTRa?= =?utf-8?B?b2JZWmloSy9hdDZDV2U1ekFvaFJCOUpjamJFOE9vMFJIOENaeDR0NG1NVkIx?= =?utf-8?B?WDVBaEF6UjBZU1BLTCtUY1dBNHNpM3cwVjZpWnI0bUF5TjBVcFBqajVuRnl6?= =?utf-8?B?Y3lwN0E4bnBYMWxWOEp2Z0xOVG5zNFJmY1hjTDVwb0FJdlovUUZtakwxWkF0?= =?utf-8?B?YzBGSElLSDl3cUdJQnRNeEFzVThhdEd6SlRvOVMzZzhuM0NCemt0Zzh5ejU1?= =?utf-8?B?YUJIMk96RUN5Njl3aHBaNVB0YW9XdWdGNnZaSWE0RUJVRXhKYklSV3Zjd21w?= =?utf-8?B?RUUyUFRoVFREblZ4cHoxRHk2aEszRnlmdTJaZGZ2eHBZZGpPUVFJektWa05a?= =?utf-8?B?TVFGMHkvZUdvaXE2eE5Ec1V0eEg0RkQvcjB2OXhPczA1cGJWZHRQNGNUbUQ0?= =?utf-8?B?ekY3T2lodWV3WEt5VVdEK3hBY2JKSmc0UWhtb2s3UnIrRHQ2NnNoc05sRzVB?= =?utf-8?B?VTRCVXZwU0h4cEhydmVldnFYQnBaR1VST3BPWnRjT0RHNFg1bGtpVDkrL0o4?= =?utf-8?B?N2M4dVFnUnZpay9aN0Y5aG5ubVowVGxHZWtwTlBlOU9LOGdVVDlpR3NzZ0dF?= =?utf-8?B?bk04UlR6TW5aWTJEd0o5OHMvc0VJTlp4cWdLallDRk9DSkpiNHR6c2ZvS1d3?= =?utf-8?B?bWNQcGgrODk5dC91S09VWkxEelpZUEpRcmZnRWFpNXRrOStRYklmVGI5Q1JM?= =?utf-8?B?bk9VclFLZFpSWmsza3I4Y25WenlvSmZsbnk2a3BUaTVITDgwa1BCVytPZ0tn?= =?utf-8?B?T3AybmcvM1lLOXNGb1dHcnZ3RWNmNjJZdzVYeFRwSmYySDJ1QllaeXYwSlQ5?= =?utf-8?B?M3JTd0hTcEE4RUIwYkRpVXczWGdJUUl5YjVKUEVFYnE1dklWSUdlTzU2N1Iv?= =?utf-8?B?MlNNd0FrVndSUjBVYVhSbFdvaEhSNG1qcG50Z1V0a1ZhbFVQUXUzc2JOaVF1?= =?utf-8?B?Vk5uZDJGSGlpL0NiUVRRdkNhZnJwVGdzRVVzcUNwakhreFRsSU9DSlZNdHZa?= =?utf-8?B?MnAwZ2RCc2NNeC9pcXZONWVVdUdrWjZDQUJGRFMxM1EwSFVPaVM0TGN5Zmtn?= =?utf-8?Q?Ze5bmZizuLXZz8cE=3D?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 093d143a-1f40-466c-a05b-08de4d432d4e X-MS-Exchange-CrossTenant-AuthSource: CH8PR03MB8275.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jan 2026 16:46:45.3176 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Hxt7Ro77/UXI/YtnjY9HdXknvZ42jJqgS+cCjUal2+a9R6lSI8h4tvxKLXTHa9Kl33zHYgPjLnsJbMwOsbJ+a5PEFd9Aq/ikMSuCflym1N0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV9PR03MB8438 On 06/01/2026 3:20 pm, Peter Zijlstra wrote: > On Tue, Jan 06, 2026 at 01:15:04PM +0000, Andrew Cooper wrote: >> This is why we have array_access_nospec() in Xen, so you can't separate the >> safety calculation from the array access. >> >> The observant reader might notice that the result of reading sysvec_table[] is >> also subject to memory predictions. Aren't CPUs wonderful... >> >> In practice, even having array_index_nospec() part of the array access >> expression is no guarantee of avoiding spilling to the stack. KASAN is liable >> to hide a function call behind the scenes, while UBSAN is very good at >> inserting it's own unsafe range checks around objects it knows the size of. >> Aren't compilers wonderful... > Yeah, then again nobody should be running *SAN kernels in production, > right ;-) Aren't distros wonderful... ~Andrew