From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753371AbdJUL1E (ORCPT ); Sat, 21 Oct 2017 07:27:04 -0400 Received: from mail-by2nam01on0043.outbound.protection.outlook.com ([104.47.34.43]:35360 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753303AbdJUL1C (ORCPT ); Sat, 21 Oct 2017 07:27:02 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Cc: brijesh.singh@amd.com, x86@kernel.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Borislav Petkov , Tom Lendacky , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Borislav Petkov , Andy Shevchenko , David Laight , Arnd Bergmann Subject: Re: [Part1 PATCH v7 13/17] x86/io: Unroll string I/O when SEV is active To: Alan Cox References: <20171020143059.3291-1-brijesh.singh@amd.com> <20171020143059.3291-14-brijesh.singh@amd.com> <20171020193953.7814f013@alans-desktop> From: Brijesh Singh Message-ID: Date: Sat, 21 Oct 2017 06:26:52 -0500 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <20171020193953.7814f013@alans-desktop> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: BN6PR2001CA0015.namprd20.prod.outlook.com (2603:10b6:404:b4::25) To DM2PR12MB0155.namprd12.prod.outlook.com (2a01:111:e400:50ce::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 2f4abf67-2145-4927-33f3-08d51876a4ab X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(4534020)(4602075)(4627075)(201703031133081)(201702281549075)(2017052603199);SRVR:DM2PR12MB0155; X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0155;3:BwO7JCqptbEgh5xxzSz4Zp9OyMA38ft7NIl735O2xlLDIIp8Mf1EuobJ69ZARZYC0EV361jhCqYgLZ4Mty0c2bEpNl3p44LB1+sFkl0FwhAEbgbLPvTL+ZoCBWeGNW94JiUBsAIAHLweo6jajAUqCZsA6YPGCAlpJuz26sKyRXKj5QK2nq3yDVOeSvaeFpmeI73LmUC0dx8jjmTgQYxsCoaYei544Syl0iCAt5f3pxxgmVDqcOK0/Q92puJz71aG;25:AIkO01SEipdV7PcVE6oJzXgBN6tO1Scs2H/XYJQf8crbuuiQL24TRsB/1I+hvQjxSMw948gjNtUKT6AT1i3cX58D+40ly8NJQQaReuy9wzgC/2pfhtfpn3lc/+7sHlHt7KrmvOx+aoQ1piP8QJHXMaKLZR7lGGXTdPm84k7CuCXZj/r0pgTQpniTCRleeezWt+9+Ar3kDGx+OnOUZ1M8e7FU+VbqCUvY88QCURT5G/4iQCXDhcdrYfELrGzPpWM9O1cb3A/939gisashWk+IDWIkUuWWTjoHnakdBYrDEEVVuSd280LpSMVlk3S/BILwD/hBF79+aM9Vkw/E0MTzA9ZNFQq5p4WvddxII+SZ0dc=;31:auV78cePE7Yg1eIypemO1NhNHGp2KNdsZT5muJ48ZVFG6CQN2wuhv09JBEvO5kxmWhYMSHJOUQRvU2URCD5+pQVbXSVL1gQ1K+QYwwxDrF9C+cf0dya1QeVdnwwPd/pEmuUA055cr5qKq4w3O+muLoo7fEcBzQKjlxCq6LzAIStAgYimZUAcCu1yEJzHFaK0p15PoCkpFUoH2Qymvawbqzi6GMXoikfeALTYyGwUO8Y= X-MS-TrafficTypeDiagnostic: DM2PR12MB0155: X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0155;20:BLVExdEzOWMALdhxgSoNtYX1HfxwFC9Bcc6dBmfU/qLgRRCoK3F72gcMWyoLh/rh5EqkI4OTmXYAr32ZfkwDE6OaesTe4A0Qad+N73vQN3sGVBaWfdx4mPlv4ivifs3IUvppF8tT2vj93BORxEQz7NKhOLyizhBX8guVfLUcfsu7f5PcFbYyF1uKDLLI17zFxAV1yQ50LWKnv5vPndDi7d7fScS2G76D/efEaO/fh2xK0y0zHBrE9bwYNKuWdOjgc1FecSxWvlih60gSrTZe0GgKK3dZfELb51JjIpk98cc0GdYdBwR0nAShsly1pkKeAD224bMcbsq4ma9bpEcYu5gFFeRWrnYykAm+BgQsluMPiGTL+GvOzwvYPtSkPc6134m0QdsLeI8N3JhFZ8QVJDi8oRGZ8v+koJuCeBEO0fxKNfSd0GpDT3F/58s29FXR+rw8SEqqKvGhnVBddgHoiVuNAJM7zAq7flm3aYjfO0krAZiI5UojPD7X8JgVhCSw;4:CY5h1Pr++gjzkQziMEaouHSmGVuiZywWEVzaAP2ZVNqbwJEyaQNnRj/SqBvNa64gMBFz674gpfbHYDERJCoL22jefNE9kqaZQhb6DZ+ioSVlv+uWFu7kCzxkcQ/YUGnkW5EwmCMRjEk2azzBq00QLNtF+rf3JgT5rxPVWrkAxb5LNkowYLohIAd8ioPl6bYsOEr3UPvTVMYzRQAx9akrL6AmSo6APy891IxyQGogfyZZwIxwE7bFjQBVHI9jKTlx/oP2IuP3YNCtHhkBy/dcsyIVv1WYq6Shly31ZHgx1dzn+EQ4oyd5m3oJOsvxnD9zVbeZOSCeIblwBGZQgv0H9g== X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(767451399110); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(3002001)(10201501046)(3231020)(93006095)(93001095)(6055026)(6041248)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:DM2PR12MB0155;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:DM2PR12MB0155; X-Forefront-PRVS: 046753C63C X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(39860400002)(376002)(346002)(199003)(24454002)(189002)(8936002)(6116002)(6916009)(106356001)(81166006)(54906003)(54356999)(66066001)(65806001)(101416001)(76176999)(58126008)(47776003)(7736002)(3846002)(53416004)(65956001)(50986999)(105586002)(6486002)(33646002)(229853002)(2950100002)(316002)(53936002)(305945005)(6306002)(8676002)(83506002)(81156014)(478600001)(53546010)(966005)(97736004)(6666003)(7416002)(65826007)(68736007)(31686004)(2906002)(4326008)(6246003)(25786009)(230700001)(64126003)(16526018)(5660300001)(575784001)(86362001)(36756003)(31696002)(23676002)(189998001)(50466002);DIR:OUT;SFP:1101;SCL:1;SRVR:DM2PR12MB0155;H:wsp100757wss.amd.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTJQUjEyTUIwMTU1OzIzOmpDRkN5UVRVbjdVVFVTay93c0gwdmlTZGxG?= =?utf-8?B?R0tGb3hPQzRzVHpVVmRkT2xUUTJmeUFSYUFsQmZvbHFHekd5bGxzYkhYVnR2?= =?utf-8?B?ZDdRL1UxenZaN1k3cTFEY3RxaGI0b1dab29rcFlHTUowR0lEUjdhZjZhT3Ir?= =?utf-8?B?Rm1DdlV3dXZKMTNQbTlMcDJDQVh0MUVmajA1QUVoN0pQRWVqdmhjQVBJeHho?= =?utf-8?B?NnpjQlhzOGx4ek90Z0NMV3ZHNUxDbWNuQ0oxWnNSTndYTGRLNktBNTI2Nlo4?= =?utf-8?B?bHk1OXJDZGs0TkZUWklUODV1VXlFTEh4MjROODJERXJYbHBFVzc0TkRqQnBa?= =?utf-8?B?cDd1cXBXWm9Ia21qNGFGbHhNUFVkM0hhbE9QSFR3eHM0UjZLbEpGUHkzdVN3?= =?utf-8?B?U05OQVpNSDQxMlpPWE0wSTRLa1VBbU9oWCtDWnRCWlpzWUhqNm5UWGh5ZDBF?= =?utf-8?B?MUNYTURiMzFRbkQ0MWQyUWYvQURwRkFUWE9mb3ZaSkhOTWJRUGFsVWpOQVRG?= =?utf-8?B?RWJleDZMMnlabnI1dTRHTi8xbjRvTjFOVUdZTkFOMWI2NGJHS1hXb1FnWDhl?= =?utf-8?B?U0grVGlEK3JWRXJ2YXhNSDFYaU9WclNsNlNTbVlTUitVenBQRUU0TEFCQmtj?= =?utf-8?B?WWNTQm00SjJPRzdJM2tnWGQxcm1yNjd0VGNlcFJ6bStKM3ZCeW5HYXNzYys5?= =?utf-8?B?MTY1VTRvZ2VRSkpIbmJSNENTK2VoUmdGS0VwUXN4eEJGOHAxcTgrYkFybVh3?= =?utf-8?B?RmIyRU1VdHVwMWs5bEs0RVZYaXNTQTBxVGdiRDdURGhBMVJDUzhHM0xwRzFt?= =?utf-8?B?UzUwQjRqTFhVTjd3SFBzTG43VmpvYzZGTldHVm9BRUlRS0R3YXROU29vQ2c3?= =?utf-8?B?R1BoV25iaWRtVkpRcm5kbnJSRUYyMm4rbEEzcFMvbzk5MmdiR2s5MDBkYlFF?= =?utf-8?B?NytVNW5GUVlyMDArNlZNOFU3UnI5cmJkRWJQdm1XQWR1bWRJSTYxVWlhTDlB?= =?utf-8?B?UitwSktzN2E1aXpxYlNFbDJIZWM0NzROblV6SG5KSnlCYXhSU1cxOUZBZmlE?= =?utf-8?B?anRFWjFpWDk1SXBMbHlUN0x3VVJNWFBtdkdaMVFNRVNDcHM3ZjJhc0hPODBx?= =?utf-8?B?TUM3b2hkNWlwem8wemhZY3NLSHUzV2FrQm8xcUJuc3hUMVlXUy9TUnlDeWpM?= =?utf-8?B?cGgwazhYSnBzZzUzRGNEYW9tbXorVkplZUE4NTJReTYxOUxQR0poQm52UkU2?= =?utf-8?B?NzBqdXc1YWdma0lDbkJReE5tU2FPK3BnT0xhWmg5STlaTFBwWk0rKzZML095?= =?utf-8?B?UWNIRkN2L3hUaC9wRFV3ZmxhOVlINWVZNERrVGJhYy9qQ2t4Sy9ITjZraER4?= =?utf-8?B?bFJuNHBzdXpOc1dHRkU1Y3BDTFFHYkxKd0FNNjJxODlLS0xTYjZvaXBUTExM?= =?utf-8?B?QkFYZ3dnb2EwVXc1NzZrNTZZS2liTkdET2FlcmhzaTRQTkpIeGs3WnBqQTV0?= =?utf-8?B?ZENVcHJMREprd1ZDcDBRb2diTlJTNnR3UUYrS3hBY0NHVHJ4MnU0SERhS3dJ?= =?utf-8?B?VFEzbzZ2TGNuS2FtNk1pR1Z1ejlFYkVISEt2T0IwaW45RGdLbFhPTXhRZEZm?= =?utf-8?B?VFdsMzhrSHlqRTJVTGl3R2paY1NVSnNLaEtkQUMrQ3ZPbG1KQTJBNGdhT014?= =?utf-8?B?L0syTzFtMzBBOWZhbDN4bVBFL2UwSHluVVl3OVFvOG9PNTY4QlIvREVrQ3Zw?= =?utf-8?B?bGQzWGI4Tm5lNm1FOC9VY0pMNmRoTHhSd2RqMk5PU3dpc1V2ZXF0dFJ4UEln?= =?utf-8?B?Tm1JR243aGIzeFNMc2xSRWlVZFpxcWNId0xLaFM0YUpWVVZxRmNuQjVIcnor?= =?utf-8?Q?pdIhnk3mtHtdpGq0dm6wKCgaaKE22Jwe?= X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0155;6:ETKgLm0L/qZF3JnfG8/ADuIh30CfYyAAX1xyVIMV4c4XAHYOB4J/Quc8qIoli1YeCugHVEkp1BuiuT1f8DAfLuupUU+g0+nWK8fLIwxai5fVgfeDBrwYpA1uGpiE1GewRpvKKB3N9rlXnCvTRxt/8fQkcCiEqmNv+C4JaWbvmnwomuoLurSrSvW/qDD3MZKU0DSHZM8EBLuAPMHbXJrRiCCmI9+6D5D/KVa7SfOoNzCl5RGEmldqrY+iWZ6aXu1GiDvFAt6u16XcheLaxtKziMCohM5z87HB0lj792h0kTs9hBa5iodWGfwzbiLDUiBP38f0Hc+aOwQ29h7UccStVA==;5:Ugqb5QzR3o9QvbIVnMtZzW/na8AzapVdfSw207vENOmgJbxxpkU85gtmabZoRPT6dhPg3xDtoNISljS9+NKD53P/S6dRyp2Pgt+aUQcl5Y1z+gqjua92a3Yy4zbuoQ1FOvaKf3txJxrYkyU2oQIl+g==;24:SUwFOfZivIKYegOK/oy46gOJUXbRRnw6UlKwQ6uP6xt2DLAGd9VyhsdEeNo8fEZKioBkL08HxY2ZPNG+lTgshUDL+aUeFj31zXPTjZzJ69s=;7:Kl90ZvC8MwlSkKkXesvkYpV705N8DfCJ5y2u1k1XxWez2/aK6zyJPINyatLA6uldnD97KoVM325t/ShSOzEXa4KO5X25U1NW5F82FMVzO6F2wqFCN0nR1UPZoV5zZu+BbP4a+xbCjDQ0ilSqZIq7YzEWJoF5YI7mXn8i9lpNgPjiTx7zbLL7W84fCyPv3A9Elq4oZuLlnypCOrx3iEjqux/8hovj84XAIWdu7mGum7c= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0155;20:rzjtH2NUlmMEnKHSaQ2MQL1CLEb48ux+W+Hw/sgko5WDRmgxqHuPNqsgRjnlNC5SFl3gkzjO27MKO4pB76fp5fHPgN/4SQ+y1d2hk06RN2te33jZsLPVJ9uofJy+VimboCa8I68IV9466xIRaxz2PIjiNMeqdf/wLJCnXMyCxLtcpu9L6XtsZyVMhMtUvHhg/SbG2eakP8XzmGl3WidabpzbXbmpAIVA6ygiKkApL06aVp3Uv1SMR9pMTlFTb33d X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2017 11:26:57.2715 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR12MB0155 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Alan, On 10/20/17 1:39 PM, Alan Cox wrote: > On Fri, 20 Oct 2017 09:30:55 -0500 > Brijesh Singh wrote: > >> From: Tom Lendacky >> >> Secure Encrypted Virtualization (SEV) does not support string I/O, so >> unroll the string I/O operation into a loop operating on one element at >> a time. > Does this also mean that any firmware running in the virtual machine > (EFI, BIOS, VGA etc) has to be patched and if so shouldn't that be > documented somewhere ? Yes. SEV support has been added to EDK2/OVMF virtual machine bios and we have similar patch [1]. [1] https://github.com/tianocore/edk2/commit/b6d11d7c467810ea7f2e2eda46ef0bdc57bf1475 -Brijesh