From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754110AbdEDOSd (ORCPT ); Thu, 4 May 2017 10:18:33 -0400 Received: from mail-bl2nam02on0084.outbound.protection.outlook.com ([104.47.38.84]:13741 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755261AbdEDOSF (ORCPT ); Thu, 4 May 2017 10:18:05 -0400 Authentication-Results: google.com; dkim=none (message not signed) header.d=none;google.com; dmarc=none action=none header.from=amd.com; Subject: Re: [PATCH v5 31/32] x86: Add sysfs support for Secure Memory Encryption To: Dave Hansen , Dave Young References: <20170418211612.10190.82788.stgit@tlendack-t1.amdoffice.net> <20170418212212.10190.73484.stgit@tlendack-t1.amdoffice.net> <1498ec98-b19d-c47d-902b-a68870a3f860@intel.com> <20170427072547.GB15297@dhcp-128-65.nay.redhat.com> <1f034974-20e6-b5e9-e6ff-434b634e1522@intel.com> CC: , , , , , , , , , , Thomas Gleixner , Rik van Riel , Brijesh Singh , Toshimitsu Kani , Arnd Bergmann , Jonathan Corbet , Matt Fleming , Joerg Roedel , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Konrad Rzeszutek Wilk , Andrey Ryabinin , Ingo Molnar , "Michael S. Tsirkin" , Andy Lutomirski , "H. Peter Anvin" , Borislav Petkov , Paolo Bonzini , Alexander Potapenko , Larry Woodman , Dmitry Vyukov From: Tom Lendacky Message-ID: Date: Thu, 4 May 2017 09:17:48 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <1f034974-20e6-b5e9-e6ff-434b634e1522@intel.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: CY4PR20CA0015.namprd20.prod.outlook.com (10.173.116.153) To BN6PR12MB1137.namprd12.prod.outlook.com (10.168.226.139) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 92b81b39-06af-4679-ec84-08d492f85c2b X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(201703131423075)(201703031133081);SRVR:BN6PR12MB1137; X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1137;3:S0L8JaSWgaSg1F2M+cnT/1LoBKAjhaIluc9NAdH3nDGLf06UWZqTLzDXWg5RyjJ3+u1A8mNa/fzUBRNL8U2rCSZ6TkW8yjObPO4VQl4JgqcrJ5WdO+KQAtg0VaXpCae8uiG+HgWK5l45xrXqni1f4MmL4xNIeu3pISpnySs/2FgXxIYSrfhTLqe/neAWPkNFs2mWpwcycDmq8fzz/v7wGu2cHvZ2HExQDDBrnfioC7IjCZHm/Toa77+diN+Np+9+DlxxHf3A6G1cFxJavyOCLnIJNIWbBvYn1fSPDf7i3ZbflUNaOB20Z1OW47xzi6EEJa8oCThQJ+AUF680hJ5FVKLjkUPWZzKJTmCc9bY6Q4Q=;25:zHCiFcbUrI5YgCdiNYKMsZ0n6HBfFm5adPMaO9+tfCKspQPQ8xEvO6vX3y2Zc8a1yQSC/6CHZi5mbQ8o9kTa/nvQ4+ECev8Xcf2f9yaapbxhy5z0jZhyI0QV7cF6F2OvHfbYo0oEejNJxIgfvosSwKhzAfNKtsQyqISAWPC6whKxL4zX0yNHFLvpddCQ4uOMGuBln1rypnrn5lgL9vymk1/9sVI2Y6eWJgTmnQu4D0ZekFZSH2Us6ww7PMQGh8CChHjoVaqXbAWTiAdw2UFxzIjOiGY9ct6KjDb8qgKzwnaqM98Ef6wOb5XQOLJWaUD+zSYYBdmN4LsAu+2HW3Vi4ofFMtAAlNtB4RcB3s3U4acRdSA9CNw/wKlUi91FVIIKmukjBr2TSSJlFTQo5iUZ1xFNGmokUp0zj8nirfhlNy0QqvmYTL15WcDXQX1FOjLFrOechfmWAHV+YlN0dMoaniv7ligzghFRt0R5JBo23no= X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1137;31:R3Ot6BGiKrUTNADm7QdTeq6z+2Dy93gchdKIDMBlvBitkRMez39eck2zk22tCf7gpM+OSFE+WqLpZkKWa5khsGJEHVHndEmT1OmcBpAGuDidLDoQ0UKcqdLiEj9gtiJUkGXiMq+6Je6e9VdHhVFvHxCEL/rfvltGBJ+2kQ58wOFQ2V+W7rRwZAPrHKNuGoweyw6vgr++VfVDqCUSe/i7h7ZZCSir/mRveg0G+FK4mNw=;20:A8RFHLZdG+f3yHhBsV7vYYpk4QKd+ijdSU5T3a0RI9Xx6PCvPdYtsWzAXAwKelCPspl3LGdIzpghcRrRV5kVBlYbw+1q+5hvZzS+/Dl2UAyEllhz6nrEO/uIMsvT2nA/NF0V2Yz180bIe/2LgP0R9/F5p8gLF1EiajT+hmFFYr4cKiWlRJZhD7gjBpwyIZY6LHHlBb8yMXGjvtsMFeGfqgfWHLRv4VIsxi7Vzp1fd1dsBul3DFX+OqE9tWbS1fyuilzqyTMuiJ184CafGHJUEfFbQMjh431Fg0719rh5HMJ/LeEqtl7ofMLUGkdjAxlkeU3PVQz4vTIUHPKiVfus+x3+jqDkESlJahrqzdEHznwXTxc7SOuPv+aUTYfWmJ+4oTgyjTB7Bx9EzxHeaL5YJjBXICFDeDLEl5TPyCdDMjFQC3ff7zdcgrrRqxzxVrnyK9vTSbeW5D9j/+FxHcCzGbWqcsEuPiLkT+XuJSR2+GpItRR94X/ktalEKNDYB0Qw X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(93006095)(93001095)(6055026)(6041248)(20161123558100)(20161123555025)(20161123560025)(20161123562025)(201703131423075)(201703061421075)(201703161042150)(20161123564025)(6042181)(6072148);SRVR:BN6PR12MB1137;BCL:0;PCL:0;RULEID:;SRVR:BN6PR12MB1137; X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1137;4:9yz76v8jqgVU3rAX+jdgcqC4SlvYWV8IT7Kxv66BHkLeCpr5Ep3eIsnfCJNZuKaibY9uOUPP5jIpS9yDVqoRNWod66IlXqppAXSaH6OJKg598ZyofUDuezzTyK44uyD69+Zm8XY3b38LbJShauaLNZ2y3qa+KJ448Bq/BBrf6P+j32w/2i+YCJjUKyNZVx5Trw4Rnh7WABjatK/+K/RUV/OnlANaR+GvrDkmObMf6LBaAFMK9t2Tbjn6s4gy5+0l+te1zIP9G/hFrmxaCokxZUQFbUbI/qKAKfRJtrMENLcTvq0FiEPJ1PSXHJaL8dnJ/VwCO373oKtqaQtw4h40srohyWFSVFoSpGXQpqh8r0fASPDfgUN4MIseserpuCR1rT4hFTyVQtuD2i0Ser9Rq0d5b3lP6csWPcQJtVyJcn+FaiLKWKRci2CQqTY9XnKCkQno3bCoMrVPfmuZel9tIHgmV98ff5iZAGRo+jQ/MNVXR3NaQ2C3Jk+7iv9gzymq5RqD7LIvAvJY8nGcSmpSFl8oBVhp9Ee4/qOBjpbut0XDwYdbgDzOZ/OoMPNter1FZMqqRoIZtk9Q313CxVye1e5Jtem3+TYr/W8AdxlLRl03xxThjQbNSOYBaatQ0Hg5lX1B5CHvb2sqZrXTfSSxft6gXuBgSG3ZzehAdEBjlQhbf2/Vg18PszMr75ypxldrtw7K2mziLAY8wAmJfPZoqjOG9lJ6Qw1i7u5lVQKEpIwTinXHWh2aDxEK1/24LwcQbFJhTs4DgfEPfqBFV9vo6R+V9MX+558joeNYRtBKUhQ= X-Forefront-PRVS: 02973C87BC X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(377454003)(57704003)(24454002)(83506001)(33646002)(2906002)(23746002)(6666003)(38730400002)(7416002)(86362001)(305945005)(229853002)(6246003)(5660300001)(53936002)(498600001)(65826007)(7736002)(2950100002)(8676002)(31696002)(76176999)(50986999)(6486002)(77096006)(66066001)(25786009)(36756003)(53546009)(3260700006)(189998001)(64126003)(81166006)(6116002)(3846002)(4326008)(230700001)(50466002)(93886004)(42186005)(54356999)(31686004)(47776003)(4001350100001);DIR:OUT;SFP:1101;SCL:1;SRVR:BN6PR12MB1137;H:[10.236.64.250];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BN6PR12MB1137;23:s+dgjR4x2QmpLq05YmpWMGxvCK7sEwmlTo7x4?= =?Windows-1252?Q?V/OY6RgHIiqS+53SAnBS6LyFRBUqz1Z91hAKg+H8hlkV3CCsdB1IUlU4?= =?Windows-1252?Q?jdF57GhCGz4F2c/LDCIdL9gTuOiQO9+4SDRQY/DeKaEFUd79kVsVcMft?= =?Windows-1252?Q?ImALfb0sVZab4pJh0gl+PA1s1w52p7tqWGGiMdiXZLlV6Ad14f0ofLGX?= =?Windows-1252?Q?uWF0fD6RPjY8P8rIIymODCy/o/k3b1+MqIFGpgK7aWhKt1aUrlVGDv+8?= =?Windows-1252?Q?EyW0To4+IpfWj0hcb/8cIePq+sUQJViKtHtyoqBZ2Sx73EMtsegAd3Cx?= =?Windows-1252?Q?UNRWNTB6PRznWXdvqu6kPtVMpl8mp788+EMWZoOKyj3UHW39pzuVnT+b?= =?Windows-1252?Q?rHAV53cvY5lkk3WOn3lqdaL0CD3t+4P28zPiAm0j3S2Xa73EDRlfVKrA?= =?Windows-1252?Q?De2H4A+O4WpPEaqm+AsMC9azUSRTbshrBEQZQ0pdLpKA2jz8d0fVgc6r?= =?Windows-1252?Q?dN0iZIK3OT15EaOM63yhDBTgVBexLgtp2FL+nSD2PF4BdGi2TKrSjcIo?= =?Windows-1252?Q?zjVZykdBZgzOiw+v155fDlaUCrtVhwCKAHdZbKQJhNqKjKm99RgkbIli?= =?Windows-1252?Q?pw27HsZQU28KPfyg72pa2FnpdpNcwk/AJwI513TQeNYyqTquSlnCDO8H?= =?Windows-1252?Q?ZgNNPoxZXW9eTAZD+/tauhv3rkJ6CmkiL9oYmU2n8Ivsq9iQaREw8ukh?= =?Windows-1252?Q?eoIqYt/bDGoaB9QYBSA6g59PPL6cVE4Qr6/k+Ox1GBsSHcYTjLYBWNsI?= =?Windows-1252?Q?eddPFL/28PkKvv9P01c/9yYww8kCAuDklWGqfmWlraj5+rUSTfHZ0rbG?= =?Windows-1252?Q?Xib4gDNbIIA8AhQ8vayw2rHsanK3q+xoSVGyYAAHwmmYl7/CHEyLnj72?= =?Windows-1252?Q?3xVrmcWGHtAelrX9p18yvIczJv/+hU4CNj5jTly1bSWOhX5OVuRTo77T?= =?Windows-1252?Q?wnlBk33rh+ObLr96RmCvhLybzufhvIUaxRk+o9ZaSu8bDEcoiFhCKoSl?= =?Windows-1252?Q?gmzndnOnzRi3pIXrLocZHtPpLvMoriaoCm+FVDEtzlJ0/L36boKtykK0?= =?Windows-1252?Q?qo2Irgg+F9gWlRAth9FvgIoyZT0dDJtT9RherCF57xKNtC73zZDc1H+U?= =?Windows-1252?Q?5UEzgX+bk3Nn5ej+jzLv6LV7wRPlzEU9q9wCRHjSuE4JSpnjO+LXJVku?= =?Windows-1252?Q?JrpLk3Ewn6RyKDFkaeptlSkFbfm7p+xIlaDCWA=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1137;6:Xhprn+pggNc5dNthobRa+Hhiutemb/xJ8NAglrmyDOtUAxJ4xJOH1gzUQNRYNVV4mVSGU1bVTPaCl9X2Pk2ZUWRwbHhdPATDHrwtJ0rQfHKINGen8UxTLC7BGJuEeqi+a597CQ9SRtKzYioUsRZN21zISYamzW0C0W70Sd4nhxoiqVxgFl39cYMj1PbWhzzIJb651X/r7Oog7LTIm3sey69lkFbjqshcuPus5v0fqBUaJalKnEeowWXutO3gPDyEZBWgGUpxtR63Ql72mvj8U9pOhskZvyez+svgtLDizp6YzcPbNxCd79YcetJtNJzvb2sTdPrkbAQw3YjUSYQ/v0c2kRfB7iyDA+byXuyV7nDSOwuJNolC+q8wQhc7Xz5+TPLWo3uy1Nisqr2xnLL3B1vcjomzPHGr3XXXtPPKPLWmGK2JkomMpbPrtA0xPP92oULIjjBVbHn7Vv+h0f3cDWSM/iHvmmP9N+3tveIv+WMjq/8GG64vwRLgdoMJi6TtWPCAGvOmm50stTRYdwtSme+SV7BCelJbZBdHwA7FvWWqxVpY6l2NBrA9ph+lijWOVP8Ysf777YFB1LXVTV8Xyg==;5:BuL3OPQ/lrGJlOYCDyij4X+fGaqi5xv4pStiKn2yDnjaiFdAovOiuK7wsxrPdNkzXnHzycWdT1FN/rFhv52S+MNsbjAUt+H52gs9HqhXB+fDofYTpqoD3gcl/fX91iTMqPuAZ+sXgAyuXC9381GR/A==;24:0SM4Krp/Y7jnMVcatYjaUxngO1S95U2sVLv52fJJaenrC2zVfS/IAdTp/l8+MObp5w6WnfnMG4HAxpgDLkyoTrXx+xn3CetuIVuqLCc98d4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1137;7:SWusevKthYhyMfN7LCk5d8FgfAsV2DNSpc8WBgcjJj0tMjWHVM0rTMr+yI3klNRyDCYxx66GILL9UFc013OAcjmujWLX43/FabtVDxJzghltgChrLCaBtiL8G88oaxjijmIDeP+WnpV0jmJpkLdQO4M+r1a4wjByG0p7cTfVdk/eXIErWNe/R97ktZ04CQA2ixVrOx41jD9dFJn/xgBzMDhIMNEx+9KBCkAVqPTza418vKKNgBKv563J1mk2G7lllTPdgXhcTGsUqMY+RCzqnO4OCrBkgY5hQKNaZ1oLRhpsKIxgVU9o7GNE++Ci6+exL0SIUGvyCZmX9KdiJaqAdA==;20:eGXVSWmy1CrZ7W/MwxiEhTGgmqH+rF/xQR7qmOP19Wt2DAhgJ8Hl8x94CUfBIZxujLJo6SnvBbphD2oE0+CI9o6u6JZPqhhvvZthy3w1Dtc8xwpWZmWhspol27p/GlDegep1Fp1E2vR0wMXWSzHx2Sg6As2AknZSwuLE7nQwNJOtCNyE8FpNYyV6VDvAyxr/Vh6NnMqhgEaJCtGWO/2KfeAQMrXMc5NHyBWwYXGuxeLWH7GCaictuzridRHQdW3O X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2017 14:17:52.8221 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR12MB1137 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 4/27/2017 10:52 AM, Dave Hansen wrote: > On 04/27/2017 12:25 AM, Dave Young wrote: >> On 04/21/17 at 02:55pm, Dave Hansen wrote: >>> On 04/18/2017 02:22 PM, Tom Lendacky wrote: >>>> Add sysfs support for SME so that user-space utilities (kdump, etc.) can >>>> determine if SME is active. >>>> >>>> A new directory will be created: >>>> /sys/kernel/mm/sme/ >>>> >>>> And two entries within the new directory: >>>> /sys/kernel/mm/sme/active >>>> /sys/kernel/mm/sme/encryption_mask >>> >>> Why do they care, and what will they be doing with this information? >> >> Since kdump will copy old memory but need this to know if the old memory >> was encrypted or not. With this sysfs file we can know the previous SME >> status and pass to kdump kernel as like a kernel param. >> >> Tom, have you got chance to try if it works or not? > > What will the kdump kernel do with it though? We kexec() into that > kernel so the SME keys will all be the same, right? So, will the kdump Yes, the SME key will be same after a kexec. > kernel be just setting the encryption bit in the PTE so it can copy the > old plaintext out? Yes, the idea would be to set the encryption bit in the PTE when mapping and copying encrypted pages and not set it for unencrypted pages. > > Why do we need both 'active' and 'encryption_mask'? How could it be > that the hardware-enumerated 'encryption_mask' changes across a kexec()? > We don't need both, I just added the 'encryption mask' entry for information. It won't change across a kexec, I can remove it. Thanks, Tom