From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.21]) (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 8A2C12EEE67 for ; Sat, 1 Aug 2026 00:49:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=198.175.65.21 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785545384; cv=fail; b=WMzW01zPYSTMOALFqBbViN8xB6VCeKie6Gl4Dmr+iI0fsz1JV/BU0mvCNulbPH8LawjI8Tfwj7vr3Y1dksVgB2Y7aMwdohHSN6STMKqzGpZgL6RcrDCvZsGnJQ79UWnwBwWYRIIDBirw4GBKyE+1w2XcUAhMkTrlJP1wPzQSZZM= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785545384; c=relaxed/simple; bh=X/ksdUMYqGKir/a8Sq5V3E4+vefeauttomJsHy+9x0A=; h=Message-ID:Date:Subject:To:CC:References:From:In-Reply-To: Content-Type:MIME-Version; b=p5yrC3kl7jFAA53NHrcvd07C1iqWNZbza5IzDTHAga9Y1aqd9hb9IEPjXlI2K2NsF4tOTcYG6ynLkuSvSMMYRhSvhE5CKz8EdLIm83mRofLWvIVnoF6swyT9RC/s1xPqH2gPEiuSslXPx3xt5WrEG/FRdN+Nu0qDKIDC3Q4PVgo= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=FdVUvh/z; arc=fail smtp.client-ip=198.175.65.21 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="FdVUvh/z" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1785545383; x=1817081383; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=X/ksdUMYqGKir/a8Sq5V3E4+vefeauttomJsHy+9x0A=; b=FdVUvh/z3F0xWFL/kgQ3ACc+zUZ7VbXBw5nS9o5N0hU/qntHp+Bo4zmb ONul2xQrWlb6FMXOtxXBbkpj3oz9nl6rq5Y5tsgdQQLWO0k2EMT+yHoOg VOiHBPypD1BG85EWEr3ANzyhUsUJwWysyCxq+oDPf0aGjiXG0AXdjPVHW JxG7NPjjOJIlM8tZgz9YRYBdtCdwWoV2y/KZqeZgSKSzLShZXRb3eqSKb 1ExvzVKueANw2bALHVDQ4jdQ04m4kciRgF3WBZJiem1mIsRwfeq7rxgqW WE/1xdBxARFNnjD2hoNeqVl7lB0FKnBlteLSf5NlYFdK0e6fE86JFKetX Q==; X-CSE-ConnectionGUID: QoiwBFquT2q+24wreqcRVA== X-CSE-MsgGUID: oyobXKE1QDu7W7F5HW/kaQ== X-IronPort-AV: E=McAfee;i="6800,10657,11861"; a="86033452" X-IronPort-AV: E=Sophos;i="6.25,197,1779174000"; d="scan'208";a="86033452" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa113.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Jul 2026 17:49:42 -0700 X-CSE-ConnectionGUID: qicEnMSYRmazsIN+Xr35Og== X-CSE-MsgGUID: BduGZP5HTTGGkAQbbbtTzA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.25,197,1779174000"; d="scan'208";a="284057900" Received: from orsmsx902.amr.corp.intel.com ([10.22.229.24]) by fmviesa002.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Jul 2026 17:49:41 -0700 Received: from ORSMSX903.amr.corp.intel.com (10.22.229.25) by ORSMSX902.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Fri, 31 Jul 2026 17:49:41 -0700 Received: from ORSEDG902.ED.cps.intel.com (10.7.248.12) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45 via Frontend Transport; Fri, 31 Jul 2026 17:49:41 -0700 Received: from CH5PR02CU005.outbound.protection.outlook.com (40.107.200.59) by edgegateway.intel.com (134.134.137.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Fri, 31 Jul 2026 17:49:40 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ycTeQiuHEK3XgRXMIeWsdRkXSrvGiAzarpt5s5jsFLiF4ZHU6BrMaQ6LJfJUHm1kmQzhsEUz50/GAwf+Wepv6LAl92M42t/z+nnKeDdbZ0qO7QD2q3qEwVCuniQhVe7NNVOjKz+zjY0rEFK8tgfZH7xluQgwqRbqGSS9YkrN40tfAH2xqFiYT0zsdh6iSMFMccSw1ItUxWTgN+/OD4BK4/3+ofdIyRE4IjAY/9UiZOhNzBkdDy0t8iYwIYeQ3j5TPaVUh/rTArFWtn91Uou8YOrCufkh9i7ZxxicXVwKBFeJNuNsJssiUnY5O2ae7WRPYVQGIizyXltDl68dpNdPBw== 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=KQss26BcgrWocTMKHjGl8lYepjCMXmizsSLZzq1Xi/c=; b=QggabGAIsUXR7dB6pB6CAotcGZTmcrG0o28Sss+FzkW4ORFCiFe1ooYzJb105ICR/0GnwU5rOzPHAUAscUgFVVQjwX+n3CKuuaIL2FLZWtq8ijjPfYq3Yfeg9GdRaWipbQS8qc/6495dt1tWFjwO5FEWXASJdYAfe8auGAy8TNnkbocz4uVQYcnnyVVBpWdzHrvB2y0R9BaL4mcVT8ecUkSusO/zOo6pFvkIC2RCN1vNXpVNT52rOdiuZK+7YDqxRjYuT/XzZHXQOedhZTNSEmQSxiWUnmXI4fXb72191NVF0N2o2JGi0+qsTeqXT3hyiLm9W9zG4YqB6fgIaE086g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from DS0PR11MB7925.namprd11.prod.outlook.com (2603:10b6:8:f8::18) by BN9PR11MB5322.namprd11.prod.outlook.com (2603:10b6:408:137::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.16; Sat, 1 Aug 2026 00:49:38 +0000 Received: from DS0PR11MB7925.namprd11.prod.outlook.com ([fe80::60af:89a0:65dc:9c84]) by DS0PR11MB7925.namprd11.prod.outlook.com ([fe80::60af:89a0:65dc:9c84%3]) with mapi id 15.21.0270.015; Sat, 1 Aug 2026 00:49:38 +0000 Message-ID: <1bc74033-ba54-49e1-b548-6742deedf1bf@intel.com> Date: Fri, 31 Jul 2026 17:49:36 -0700 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 09/10] x86/fpu: Allow restoring signal frames with larger xstate_size To: Andrei Vagin CC: Andrei Vagin , Thomas Gleixner , "Ingo Molnar" , Borislav Petkov , , , Dave Hansen , , "H. Peter Anvin" References: <20260615193716.1843340-1-avagin@google.com> <20260615193716.1843340-10-avagin@google.com> <358834b6-86da-4f7f-b2b8-cda31663682d@intel.com> Content-Language: en-US From: "Chang S. Bae" In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: BY1P220CA0007.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:59d::13) To DS0PR11MB7925.namprd11.prod.outlook.com (2603:10b6:8:f8::18) 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: DS0PR11MB7925:EE_|BN9PR11MB5322:EE_ X-MS-Office365-Filtering-Correlation-Id: caa0ca32-b554-4136-4765-08deef66c39e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|23010399003|1800799024|7416014|6133799003|11063799006|5023799004|4143699003|56012099006|18002099003|22082099003|10067099003; X-Microsoft-Antispam-Message-Info: fFJcOw1cLf0KMjzUbRZ8g3dXYHMR94Env4dm0ex3pA70ZXIngVgWr/X3YPSX+jWOfUXGdlTcgs3JRhGhMqmy/GMGdOilhfN44SE5WOnygw92V3xeJRUb7cXSr3fAXkraIou4IB7A7Ttyth1/qd1143qOA3bNB3j/gCtLFqJMiR1BLNxtmy6v1EYzB4gNwgQGPSVaMDh1UZM1l7Xi46EZYsiwDD+UNfoUOJG6PuB7vkcNYb8P3zmxdUKGOHWm5FuOV/fBNOOD88q5pmPbqravJNy1qy8wKV90kJZhyNJ0eDTOVtFCtWYrAX8/tj1K9zMnVP3YIJOxOkAjh+PlcMxy1IlYmJMXpxU6lFxSfPS3kkFK+Rl2pDdUExxZPAVo2AAoHQlnTsOPoKeb4dLaVoe3o845dz/cIczrVggfAc4yZvCoEGBJv7qmvPRo8y9rZiMuSvTIgcmdjFZh9QaSCM87aRvgc5+LzkQom0d0T/vybbc72Z6hKD64jsyZpyR/j+ahgkmGEb94wiYr/z8pWj0iT/SnZgPdPqZrTnAjeUey2+160fqDTgqbzp7X3sgK4rzvZlI7xzplFh/Qw2EA8K+ktErms32JTWRWkbyOTyjV0Bi06uhFoQS19xJn/K9n3pRsUHpomqulTGv2MQKKqpq5DJYAflfXCj7O6dKXg0S/Ytw= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR11MB7925.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(23010399003)(1800799024)(7416014)(6133799003)(11063799006)(5023799004)(4143699003)(56012099006)(18002099003)(22082099003)(10067099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N29ZY3FJN24vWW1ac25EaFRkTE5UMUNDc3JzcFdmalFzR1hta0ZWSGxGMWc5?= =?utf-8?B?NWl4aU5lYkNFNzliOUF0aVdmSVpBWDlXdUxmL0pldDk0SmpNQW9zcFNuRDlx?= =?utf-8?B?MStaTHRQR3dnQlZLcTcrSlpOalZxWUNTTGZCclJmUi9nMkRFK3JSMWlWZ2o5?= =?utf-8?B?R2JNSVBkdWJSbVZOekQxWjduMVE4RU1hUGgzWUd3TDZqOXUwdDlzMEVpQjhw?= =?utf-8?B?YVRETDZOOURUYk1TV1ZRV0gvMlZkdEIzQUNBV2VDWk9IbXNJUGtIbG4yZlhk?= =?utf-8?B?bkZGRUQzRFRDeUVaeVpGbnVkSHhrU3pxVi9JN3gvcTIvZ20xTU9EQmJtL0VL?= =?utf-8?B?QTJmV0h0L0lHVDZFSEhSd2hWK2g5SHVJZ0dXLzhDRnpsNWZPTjdKWmgvL015?= =?utf-8?B?RlRyM242bW5sbE1VVWNSbmlKU0FsSW1IQnBtdi94S2Zxdyt0N1JXa1Jmb1VE?= =?utf-8?B?SWNhVGEzVEJJb3NiRE84RHd4RUxnNmdNV1RNTzRTNmtNdkZITjdiZkJ2bXo4?= =?utf-8?B?VWJlTlBhc0F0RTBTYlZ1NWJpM2ZPMXRzU2gyTVFIWTBOUEZzbTREK3dReUN5?= =?utf-8?B?UXBiZjVOazJKYVQ4cDVxek04ZDcrcnVRbHhLd3NhSUhyUG1aYnR3Z04vQmZr?= =?utf-8?B?MVQ4U3Nwb3k2Y1VVS2d6aXpIQU9qY2dQb3lEY2dqS2MzT3p5aG9xd3Q1UnV0?= =?utf-8?B?RU9WQkxaeVU3WGNOYVMwZ1plUUtqZWpoYXVZbUNPSjhDNzVmUFF4ZzdtM0ZU?= =?utf-8?B?K1VYNElLTDlUMWxuSjRBUGY0RmlhQ0JLaUJabkFUblJyMjNLMlVxVXJDZmU3?= =?utf-8?B?emtIcGgvVlpRZFIwMG1YYTJIN2N3QVphZGVkZHc3ZmROYXNNTVhEbXhvcjIr?= =?utf-8?B?T3ZkNDNzYUJpeWdRNkRnYTJSckFnMXRBM3JMODRHanNuUGhJdTZjbldQalM5?= =?utf-8?B?S2NVUDFCTExSd3BrRGUyS0pydklXUG1GanlqUEJXSmFnL1IzSlBnRkxYU1Y0?= =?utf-8?B?eGEwRktyVmZtTUxDb2dadUhvTjdEM0RXckFacS9ReVhrTnN2K09oVVNjam5V?= =?utf-8?B?ZXA5MmJBV0UyYkw1eEw1Qm5FM242ZzUwSTZhV1kvYTJjU0lEZVZKU2RHY3BB?= =?utf-8?B?K242R1MrWThIL1JzSzlJZmpHTzFOR2Eva2I3MzQ1QjNnY0ZCNGdmSWVUeWVB?= =?utf-8?B?T3hFcVRxd1hQSWFEZlRWRUNvMnRSbDJReCsvT01qbjZSQXpSNGFXY2hTN0dP?= =?utf-8?B?NGxwWjREajErODhyWXNJdUVqMjJ0RE5tbmRaNkJ0ZTA4VktTTWZzaHdyTDVQ?= =?utf-8?B?bTljRzVPSEFTOWtYd1JETHpKN3VFdEpLWnFmN2RSOElhcGRhVHZGM3ZFMnFJ?= =?utf-8?B?QXVWR21jL3c5MENvczdUamU2WFpjbDcwMWZYOGN2YXFrTk1KM3dqTm1xQk1s?= =?utf-8?B?NU03QjV3SE1Da2lVNDFtTDdadDl0L2ovV1NrTkwzNWJFalhyaEdidGVDMkky?= =?utf-8?B?RmhYZVNQYlFnaDU1RGRqSHRKaGY2OTJZT0FIZUIzOVhvSEt3R3Q1eXZXaWpI?= =?utf-8?B?cExxV0F1eHdqNThTRmVVQlBBREhVeHBaZ29IVS9lRTZzNk8xcXR0WW1OQ0R3?= =?utf-8?B?a2diK0hTcWlmTE5HODllTGxWbmRnMTdhT1hLV3FWRnBDNG16dUsrT1RGV0U5?= =?utf-8?B?WHA5Tmh3VlVRNGFuWmpza284SENqVU1zL09KOGR6dHBxUUNlVGdUaFpQSThO?= =?utf-8?B?dWF5L2N0YVdwRitvUk9rUDRUdXJEZWZNcnY4bDhIWFlUVnNReWJtdzg2eW1v?= =?utf-8?B?VTBJS1JIeDR0Kyt2cTdjcUtJeTk3SUxqbnFCQzAyZEc4ZWpBYVlYQUNRNnN2?= =?utf-8?B?YTJycDlabjkvYWhyREFiSmFhWUh2dVpNTlY5dVYyc3owcDMwSGJaQUNncmZM?= =?utf-8?B?b3NZZnhUU3pNczMrOTZrcGtoUjRqOG0vZ2Ewa0ZpVUZPYXBDbi9KUnVLbUU3?= =?utf-8?B?a0VVNzhhRjJkUWJsZTNrMVphNzNFQVBLY3RkRkc1Um1NTHBiQ1I3anJJcVlO?= =?utf-8?B?ZkVjYmVmZzFnNjhRU2pMREYwc3N6S29ZQnM2WXpNbDM0RE1OQ21EUkk0OTBQ?= =?utf-8?B?dnFjVXp1QWZXYnRWVFpobXgrY3NST28vT09SUWpzZDRnK1NhNUVGRUlwc0c2?= =?utf-8?B?R0UxM2pxb3R6WWEwVXhKYm1sUjM1UElubG5xNGthMmNTOVJ3cEhvUGdJUmJn?= =?utf-8?B?dng2a0hQT0hzQ2JTU0YyZnJIS1BmOFBMMnMvRWkvKzdRUld0aHN4VWUvbXV1?= =?utf-8?B?clZhemIrSzJsMzd1Q1dCaVRueVc0aDZJdVNFbzMxdm9QTVhqQ2Q0UT09?= X-Exchange-RoutingPolicyChecked: g2UPNHio8agkBF6MhJjJWEBzGnhbIVXGCujdK7KIHhW/u4NAm3viVu0Tds2ukjz/HxWxZ9W+I5sCilLW3LjlaG9+LlgCyOMRR3nf5iWOX1SLEkIjTvK+OtPxRBo8XgYvvM3cdehNDMeQQBrEF2RFR9a9rGwYtCo/OAGSPjP98j5e982EDTDsydU83/3K2L+It2cdbhPH20hhUcNLu9Ju94isstkRNPVLL0U7R+A8wFcbnk9j44Ui1tfhHn2Cx2hpE06p2DEFdqQRw8nzH0Dw1p92gKoEzv1wUtxtJb6Mc2paaUV9iKdsZHs58ERk7h67dnNOqnxA03+B0dC97/pKwQ== X-MS-Exchange-CrossTenant-Network-Message-Id: caa0ca32-b554-4136-4765-08deef66c39e X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB7925.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Aug 2026 00:49:38.4105 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f1wx60fqBJc2UU237bH6AdUwYIHXESam++ZV53/IlXCeHU98dD4flXIR+PW7+GA1/qJKOTpr7AWBUS9rzRYEbtlHwNdGRR46nncDdA/6MBY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR11MB5322 X-OriginatorOrg: intel.com On 7/30/2026 2:26 PM, Andrei Vagin wrote: > On Tue, Jul 21, 2026 at 5:35 PM Andrei Vagin wrote: >> On Thu, Jul 9, 2026 at 2:15 PM Chang S. Bae wrote: >>> On 7/7/2026 1:27 PM, Andrei Vagin wrote: >>>> >>>> Dynamic XSTATE components (like Intel AMX) require a process to >>>> explicitly request permission via arch_prctl(ARCH_REQ_XCOMP_PERM, ...). >>>> During the checkpoint, CRIU detects which dynamic features have been >>>> enabled for each thread and saves this configuration as part of the >>>> process image. During the restore, CRIU invokes arch_prctl() on threads >>>> to request the identical dynamic XSTATE permissions. If the target >>>> machine doesn't support a specific dynamic state, the restore will fail. >>> >>> The permission request itself does not expand a task's fpstate -- it >>> does not reallocate a larger XSAVE buffer or update its size/xfeatures >>> attributes. >>> >>> Assuming the target task has never touched the dynamic state, if >>> fx_sw->xstate_size > fpstate->user_size is permitted, while >>> fx_sw->xfeatures is still used directly as the XRSTOR RFBM, I think it >>> may be possible to trigger an ugly #NM in the kernel along the way when >>> CONFIG_X86_DEBUG_FPU=n. If CONFIG_X86_DEBUG_FPU=y, xfd_validate_state() >>> could guard this by clearing the bit as part of its consistency check. >> >> We never pass fx_sw->xfeatures directly to XRSTOR as the RFBM. In >> __restore_fpregs_from_user(), the restore mask is explicitly restricted: >> xrestore_mask &= fpu->fpstate->user_xfeatures; You're right. I misread that path last time. Sigh... So, to summarize the implication with this patch: When migrating a user thread with a larger XSTATE layout, unless userspace prepares the destination (e.g., first touching the dynamic states to allocate the necessary backing storage), the side effect would be missing user data. There will be no notion of crash. Also, relaxing the size check nonetheless still means the signal frame has sufficient space to hold the states fitting into the destination task storage, correct? > Friendly ping on this patch. Sorry for my delayed response. Thanks, Chang