From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753982AbcDZXCE (ORCPT ); Tue, 26 Apr 2016 19:02:04 -0400 Received: from mail-by2on0097.outbound.protection.outlook.com ([207.46.100.97]:48893 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752913AbcDZXB5 (ORCPT ); Tue, 26 Apr 2016 19:01:57 -0400 X-Greylist: delayed 312 seconds by postgrey-1.27 at vger.kernel.org; Tue, 26 Apr 2016 19:01:57 EDT Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=amd.com; From: Tom Lendacky Subject: [RFC PATCH v1 04/18] x86: Add the Secure Memory Encryption cpu feature To: , , , , , , , , CC: Radim =?utf-8?b?S3LEjW3DocWZ?= , Arnd Bergmann , Jonathan Corbet , Matt Fleming , Joerg Roedel , "Konrad Rzeszutek Wilk" , Paolo Bonzini , "Ingo Molnar" , Borislav Petkov , "H. Peter Anvin" , Andrey Ryabinin , "Alexander Potapenko" , Thomas Gleixner , "Dmitry Vyukov" Date: Tue, 26 Apr 2016 17:45:54 -0500 Message-ID: <20160426224554.13079.49954.stgit@tlendack-t1.amdoffice.net> In-Reply-To: <20160426224508.13079.90373.stgit@tlendack-t1.amdoffice.net> References: <20160426224508.13079.90373.stgit@tlendack-t1.amdoffice.net> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN1PR17CA0011.namprd17.prod.outlook.com (10.169.33.149) To CY1PR1201MB1114.namprd12.prod.outlook.com (10.169.19.18) X-MS-Office365-Filtering-Correlation-Id: 78d8423e-13f5-4da1-1172-08d36e2488f8 X-Microsoft-Exchange-Diagnostics: 1;CY1PR1201MB1114;2:H2BoWEzC3sIeyjRk9Gp0FIvfSxyOzpqqbBeaS3srLFFG3sEvQGowEqcftD2jdCZojGO72RfU4p+exeXU/C3rPJoFVq6+EH9hwabxRQLD+Wsl+2veEBN6Fc8hkXa4MnMrTgcDvZxSwHQYXHz4znf4TB5JkQJEpQfJ/upmqqkEQ3D1OWGX7bEC0uKF2hbVPckT;3:0MH0GYokNGaXJGp+l5pF2NJKwyKTL324EmZRsf60l/ybmVw4hBDnqNejpUiWgQnXOIBbA+19naCOW7I1UClMm8wn7krA6LtGfRXTej0+ptKnBJylVU6Fo988qh5UzrzJ X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR1201MB1114; X-Microsoft-Exchange-Diagnostics: 1;CY1PR1201MB1114;25:kyTczDxwEKDNxbJdRqW3HF4yOL4iwqw9QzzKMbAEdgADKn2mWLo14g1OurhpbeHBlhveYmwK5sO791/nRA5267nXdb1mf5Fry1DjKRSz95Jb4OnU/oKFrvKfzAd/GT2+bwINPp5LI2gDMM7xR545lXCPL9Cdck6pxBC8QN9NN/tJKd12kvVPJpp1lr0bMmctizRrt5c4htPQbXGTx06rUm7A821kTKRGjeaIxYpNC7bLc3fodErnsG16AeNEBM+0HQOG/2xjnmbF02pmgQxlb3XJDqCfRPZhd5ajF25EiN/bombgY/ZGXeGeQjkHJioRREVnPHFJWt/SrZFzLMblzEZIUzYzMppXsXPYSv0QH6PlFJ/FCLgOSPS+x12KyAHE0/6CoDoK4ooTShQcDc5w3TOrmyBeCIjSPUscySSfY8aPk1X1R+ScatnxAeP7HBERjVaKTQQVJkCwY9TGZ46WlutEdcTUx06ikrCSThDwHNsQI6tJPX1fe9PoDVZ+qBtDwAkpNA1b3+CDpmr1ybOXVAghOtWSyQ/nmIT01ZNukjOmuzbSLSzuNRSFzjQjRhl6iJp/+p0eLTdicx3IK7iJ17IW5azWcbxf5T2cYcS64Z+/Pw5cfVUhBURNiWKAb/xwZm34/bAuUMsF89rIM2/dJwDc02VcOTyqTduzj9fPC/Y= X-Microsoft-Exchange-Diagnostics: 1;CY1PR1201MB1114;20:CLa8JGB519xgCAha/BkDvx4fawO8XNeXXw7oigd8tq5Jx43Ssv6nfnBl8oFMuBc+SWUSfvqJCX6TVfJ82ETL4BuiW8PBnlfw+2hyrfG+xxeGULQ8QPXUggxmXbvW7kR6J7h+EnMS2AC4nNAh+LrGHn2PjLz1S28MW4qwY2e9SpfxZVgizcbOHIuFzQdHk7GxHYLfFxD5Qqap2BbNXQdj2Zhf1+Va6uKhem7CnneQDJ7LC43GEzWYIspr5RLKQ1lQ86iAxfYRkOyddOMz8vFeDLi+xmb129kEQiZkFRm5G7x2//bjLOJZCy4ZdHhpmfA6KHq7WQ1gNJCyixMZssQ7t26iPK4Ajdp87aUZSaUUTb4K+uGbUwSJxiwvtrNadum3s3RcD4WIQTyPGUmgaxEat0y8Rsn3ECn4/KBF3HSdTXp+8uHVwfWI41zUHsDFWBOQFcDjThbAgW54iiJkUH1A1NbzOkTSQI5REn+/Wgi2d89waCT0WeIreAwHO4Cbng2u;4:OQGM3aoJ3AAHyX62VCyw6cJZzPGPKDtOEreBR1OMhPMC/8NsknSgvATvDkwIeieHWrOuPnfUYAm2yd4r7eDEj9RIukVuIReY3vVJi9MsxqkY582LPmI+tgvHWbk3p1rON2Bx71IJzRDYHPo3A0jNbSWW3EakPiy/UYb5I2GMy0q9NWfObulC4z0sf6Drqn4rTJzAL+YA5STyzg7eIXkQFhmw7bpgCo7dSxKplP0WBeahaOsxoAWL73FHWbaQ1BXTmeuLk9LJAle20mUIXPau/A+d0NTC69ansZ93GuBMfWTFjeYul7Ure2AWqo2QKEGApZlFkyNxOJa2nE5jCWIqxJD4mJEYgUc4AMJLPA+i3b/GVKItkFMpOoh5xydUNYDMNMMQbtjUbM441uICvcykoqMEWhoKTfHm7R7i+Kc7fRs= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(9101521072)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026);SRVR:CY1PR1201MB1114;BCL:0;PCL:0;RULEID:;SRVR:CY1PR1201MB1114; X-Forefront-PRVS: 0924C6A0D5 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(53416004)(4326007)(9686002)(189998001)(5008740100001)(77096005)(2950100001)(19580405001)(586003)(19580395003)(6116002)(1076002)(42186005)(5004730100002)(1096002)(103116003)(81166005)(97746001)(33646002)(66066001)(230700001)(2201001)(2906002)(5001770100001)(92566002)(23676002)(50986999)(54356999)(50466002)(229853001)(86362001)(76176999)(4001350100001)(47776003)(71626007)(217873001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR1201MB1114;H:tlendack-t1.amdoffice.net;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTFQUjEyMDFNQjExMTQ7MjM6UzdlTEczMkNxL0pRdjA4dHlTT2dnMzFm?= =?utf-8?B?RlJJZlpQdEo1VDAxSFhiQmtsMS90WWhxakFXMXJ1bWZ1bDdodC9VREdsNmhi?= =?utf-8?B?T1VmMk9qODFINHc5Ulh1SUoxR1h5Uld2aUJPQUN5MnowQjhocHJNM2tQSitP?= =?utf-8?B?bW1HRnVlaXkvb29uTXlKMkxrRHVwc2pWS0pUcW5GVHhxRDFSOTk2R3dnMHZU?= =?utf-8?B?OXllYzFGR0ovUFR0OTVTSkswQzJPNVBLSFlLZlNQbjI1bXZoNFRrbUo3STdR?= =?utf-8?B?bWFucEZJVVZLNlVNTnF2T1VkSUdGL0JSZ1ZEOHdzT1AzblN4N2k4NnhvVTNs?= =?utf-8?B?dXExUGxqT2Jqb3pSbDhoOXpnS3FsaWhOeGs1TzZNUk5Nc3NYa1lzL2tveHRn?= =?utf-8?B?L2ZhYnZKZzQwRXJPeWVIQUVadGg0a2hFSHRpWmppTEJCSXJRVTA1ZWszMTIw?= =?utf-8?B?bnhCUVo1d2RxTEF1UThqbjdoUmdDc2hEV3pSZ3RGSE4zb1VZNm5ESlJCZWto?= =?utf-8?B?TVcvMW1KZDVHczA5RzFhb0JzMzVQZWFtYnpLeFVtRTY1cVJkRG1OWENqWENm?= =?utf-8?B?WjF0bVc4Y285aVl1VE9vM1R0RFlKZXFxSnUzdC9JZmovS1F4RFAxM3pXblp2?= =?utf-8?B?SWdENWlsMzRvMVRDeW1YaTF5N0FWUUxUclFEWjQwTjdTTm0ycUdVdHpyRTU1?= =?utf-8?B?MnRMSEk5TTgyVXp2NHdZMTgreFhQTGhHdEJiSG85SG5uN3VId0VpSTd1Nk5a?= =?utf-8?B?blRJNDd1UjA2V0Q2THJqQ3dxU0toa1RiNlVxeTRwM3ZwemdyVERCTi8xeEYw?= =?utf-8?B?ZEo1S2tGbTg1WC9vdStHa2xXUlJITjl1elMwbEJzRVgxNGs3d296NlJ5ZUVm?= =?utf-8?B?Zi9CbWp6UTRZbnlIOEU4Ty9MbllNcUhHU0JPZktqUXkwMnlYNGRZU0hkUUhS?= =?utf-8?B?cjJDblhxbHdENUdKT0QvbnBYeGJDc1lsQjlMK29LQ2NIaHhPOThYZ25lUDhm?= =?utf-8?B?YjdnM25ucFhuNFhXQ3BnQmpQVThDTzhST3RnVGY3elJETGZaQmMwRnMvMU9X?= =?utf-8?B?anJ1c2xZdXVYY2F2bHI4aEVWRVNxYmtwUUpYSFdlcFhPMTYxdWJxSFhNYjc2?= =?utf-8?B?VHo1aGw5RW5GQzVBUTV0M0lKUmUrNE1RSWo5ZDBYYm5SaWxaaWdTRnI5RGZB?= =?utf-8?B?SWoySFM0alNuWERUVGJpUkNyZ1ZoVG9paHdOQUtMMXdrSGplc1Y5bnpVaGRC?= =?utf-8?B?amdsd1p2ajl6V25vcjhxMlNpR2hWWDI2SU5pQVhlYkx3bENRSHlURWZqdWs2?= =?utf-8?B?UVR0a3dmc1p3UEY4bWJaWXB6Ymd2WWtNLzNiTHJUcFpRVDB1a3NEWE1iczAw?= =?utf-8?B?QUNseEpoem5EWGI2blROaW1lZ3d5cjBGMkU0OVN1d2c9PQ==?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR1201MB1114;5:zQzri/SQtTd7GixPSBe6QP0BK3C/+/LW2EY4UN3tmLyxmKnfpkEq909BpeStZc0AwBbRSQkAGzI/qzpL+JbvaAIxmnCDjXzuuSu9B5yqcJvb/e8GEUhlLuJtUMqa+HCu0lRDiaZnGb4TqSL/BmcTZw==;24:O2mklST1/In9o4Rs82zkoo2Cz0bGUG3De2BgV1ukDo8d7+6toNRx/FKwBHUzPX+ZN3M4qBlFWtUDrJgMCrouNOfc/af445KP42bY2wEaRHM=;7:s7DyZkF63ve74Tu+D3QFZGLr2bzhl7lk/LhlRtImdKT1OL2s6E9BJfhrSH8zuNcd2z9COgNyuKDxd5R3aQB5oSU1/SE/Ve+iUEyEVkt/JJar0fy9qpip0THJ/mxkufZzFDLDpJa2oQBAAq/iYOkBxe4oPYMKZjw2NrUNKJzKJg8=;20:pMBgZiK2ZwL0SJW0jTxzEEVSJpqp1nqjucdyjVI17jo0aCEQx3hwfYT8EpkNEwtZtOxpCG6w3bLxVaiOD5RFPTXyEKaPgsd4nmEWGiBEVdY81SZo4YLCUnbMdhaHth3PxeQylwww8FARKH4B7sQTpPyF+aLq6JuzS0i8mjO1Fofekx4sNv2ugjHfTP3ceJMJ0y5uujYgFU3b47cVWWAkCuxLsG4GIV5xCb8tkoOgw6q9exWs0md75APvZEuaZ7hO X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2016 22:45:57.4739 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR1201MB1114 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Update the cpu features to include identifying and reporting on the Secure Memory Encryption feature. Signed-off-by: Tom Lendacky --- arch/x86/include/asm/cpufeature.h | 1 + arch/x86/include/asm/cpufeatures.h | 5 ++++- arch/x86/kernel/cpu/scattered.c | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/x86/include/asm/cpufeature.h b/arch/x86/include/asm/cpufeature.h index 07c942d..e27e352 100644 --- a/arch/x86/include/asm/cpufeature.h +++ b/arch/x86/include/asm/cpufeature.h @@ -27,6 +27,7 @@ enum cpuid_leafs CPUID_6_EAX, CPUID_8000_000A_EDX, CPUID_7_ECX, + CPUID_8000_001F_EAX, }; #ifdef CONFIG_X86_FEATURE_NAMES diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h index 47b5056..4aea205 100644 --- a/arch/x86/include/asm/cpufeatures.h +++ b/arch/x86/include/asm/cpufeatures.h @@ -12,7 +12,7 @@ /* * Defines x86 CPU feature bits */ -#define NCAPINTS 17 /* N 32-bit words worth of info */ +#define NCAPINTS 18 /* N 32-bit words worth of info */ #define NBUGINTS 1 /* N 32-bit bug flags */ /* @@ -282,6 +282,9 @@ #define X86_FEATURE_PKU (16*32+ 3) /* Protection Keys for Userspace */ #define X86_FEATURE_OSPKE (16*32+ 4) /* OS Protection Keys Enable */ +/* AMD SME Feature Identification, CPUID level 0x8000001f (eax), word 17 */ +#define X86_FEATURE_SME (17*32+ 0) /* Secure Memory Encryption support */ + /* * BUG word(s) */ diff --git a/arch/x86/kernel/cpu/scattered.c b/arch/x86/kernel/cpu/scattered.c index 8cb57df..d86d9a5 100644 --- a/arch/x86/kernel/cpu/scattered.c +++ b/arch/x86/kernel/cpu/scattered.c @@ -37,6 +37,7 @@ void init_scattered_cpuid_features(struct cpuinfo_x86 *c) { X86_FEATURE_HW_PSTATE, CR_EDX, 7, 0x80000007, 0 }, { X86_FEATURE_CPB, CR_EDX, 9, 0x80000007, 0 }, { X86_FEATURE_PROC_FEEDBACK, CR_EDX,11, 0x80000007, 0 }, + { X86_FEATURE_SME, CR_EAX, 0, 0x8000001f, 0 }, { 0, 0, 0, 0, 0 } };