From patchwork Tue Jun 27 15:12:41 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Lendacky X-Patchwork-Id: 9812473 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id CCD8C60351 for ; Tue, 27 Jun 2017 15:14:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BF96B286BC for ; Tue, 27 Jun 2017 15:14:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B3AD6286CF; Tue, 27 Jun 2017 15:14:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 0D23F286BC for ; Tue, 27 Jun 2017 15:14:59 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dPsAi-0002Rx-CD; Tue, 27 Jun 2017 15:12:56 +0000 Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dPsAg-0002Q4-49 for xen-devel@lists.xen.org; Tue, 27 Jun 2017 15:12:54 +0000 Received: from [85.158.139.211] by server-7.bemta-5.messagelabs.com id 77/B8-02181-5F572595; Tue, 27 Jun 2017 15:12:53 +0000 X-Brightmail-Tracker: H4sIAAAAAAAAA1VSbUhTYRTuvffu7lquXqfmaWbZ+rCsaVJCBUF EgRaVKRRmZNe6bott2u4s+xHNXCaWfRgWLslpKn70AULOLKOUWc2VZTGREEQqo9KohCgtu3dX 095fzznPc573OXAYUnmVVjFctoUzm1iDmp5O6aLVSZrhrMTkle0fgtZUfr1ObUBxrnsjRALaI 9Ob0jKy98t0nWOf6Mzq0Ow3JfWUFf2eXYCmMxS2kVDT0UyIBcKXENzsLiLFQonzCCg/c1lWgP wYGq8A7+AwIeJAvBtqC3N9/SDsIKD/MhYHSDxIw4PnHlokCDwXHBVVpIgpvBiGXMWUiBU4Dqz vGnx9PxwPZcVen6lS6Ht+tshFHIznQe0rm0zSB8DTkrfCLCN8sAxuN0eLbRLPB+dgqc8GcDg4 f/ygxQyA8xE01FmR5LkI7N9fyCVRGLielVIS3gaP6kdI0RPwQnDbtkuzVQR4uh2kVBTSYD0rb Qw4Etr6euQS0S+HEZubGC9k4MlvHy8aKSi8WyiTRgzQ6305/ncKjD4+L5NEHhl0n/ow7jWIIb drlLiANPYpy9onl7VPWdaByDq0lOfMRzizJmZVVJpZr9VZjKzeoIlZGRtl5Hie1XIGNo2POpB hbEDCXUwTXhP60xjfiuYwhDpYUQ+JycqZaRkHj+lYXpdqzjJwfCuKYBhc4TqZpKJMGSZODQpS OCVlgJnTctnpeoNwZxNKYPzVQQpvpkAr+EzWyOu1EuVGq5gax51hghltdA4TSp+TKkThtAhSL Ep1WaZ/RhM324XCVIEKJKRU+mdyZqPe8j//EYUwSB2oKOcFF3+9yfLvv49CFEKIQl1LEKNY2E lKZUWne8JjP/Umb46YsdrKuLc0aHbwJz7/NuSkPLx4xbCPeP9VfmMgd5e2p27d8vQlr/NCo4P fuJIiggb+yHHRzureSuXh7ws6079FpjbdevKr5Uhpztq++/xY6UYiwH30S27drI6hQwN76VZb LbPe6wwtw9zxLbXL2ZhzY21bNwWHBSSrKV7HxkSSZp79C5T+2KyuAwAA X-Env-Sender: Thomas.Lendacky@amd.com X-Msg-Ref: server-4.tower-206.messagelabs.com!1498576370!105292013!1 X-Originating-IP: [104.47.34.83] X-SpamReason: No, hits=0.0 required=7.0 tests= X-StarScan-Received: X-StarScan-Version: 9.4.19; banners=-,-,- X-VirusChecked: Checked Received: (qmail 13332 invoked from network); 27 Jun 2017 15:12:52 -0000 Received: from mail-by2nam01on0083.outbound.protection.outlook.com (HELO NAM01-BY2-obe.outbound.protection.outlook.com) (104.47.34.83) by server-4.tower-206.messagelabs.com with AES256-SHA256 encrypted SMTP; 27 Jun 2017 15:12:52 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=4DOXkgUc1obxFJZSb6702sCTgp5HBw0fw+opWnQ/DBA=; b=fbSZ0cvzCJPf07b85f9S6OwtKRcw/36lBmrVuD4i8G8eDmIg08cKPMELnUqZe8qfU2/y9sBaG0UJtKtrCHfvZ87dgSHt8NY3SAeJ1q38sDm1vqXIoV3H17ERxMgusBkUIcLFtIkHZa0gXRFJ/RGD+mHbc3obZ/EnHARAXPDtiUM= Received: from tlendack-t1.amdoffice.net (165.204.77.1) by CY4PR12MB1144.namprd12.prod.outlook.com (10.168.164.136) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1199.15; Tue, 27 Jun 2017 15:12:45 +0000 From: Tom Lendacky To: linux-arch@vger.kernel.org, linux-efi@vger.kernel.org, kvm@vger.kernel.org, linux-doc@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, xen-devel@lists.xen.org, linux-mm@kvack.org, iommu@lists.linux-foundation.org Date: Tue, 27 Jun 2017 10:12:41 -0500 Message-ID: <20170627151241.17428.99489.stgit@tlendack-t1.amdoffice.net> In-Reply-To: <20170627150718.17428.81813.stgit@tlendack-t1.amdoffice.net> References: <20170627150718.17428.81813.stgit@tlendack-t1.amdoffice.net> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: BN6PR14CA0024.namprd14.prod.outlook.com (10.173.157.162) To CY4PR12MB1144.namprd12.prod.outlook.com (10.168.164.136) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f0bc611c-f341-4433-ccc2-08d4bd6ef903 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(48565401081)(300000503095)(300135400095)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095); SRVR:CY4PR12MB1144; X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 3:E2sz6QBrlc+bkJ9nmnQF78i/c9SsU7KdNX2A4Gj7BoUxA4nDDK1SKdvy/qddwZvXUaJehsz0Ws4DUSDq1LSMDcx4vpXwKX/8UFaNV5PlXkXnw83G91tU8h5KdjSLBNpf5bmm+27dD7mkil5KM+AE94L1MIkoaL2aNOItpqykPO9Vy7/v1c+e5hAmyoKKCPUq+Tojy0s0AJyFA2GPogw+6VTUYpl18cjSoTzqCKzAoYVsdwq83pb5fBawE+zvsIVI3ex9cBdPzRyK7u0WkvEF4FA6+3Z6muZzC+mWO1cl2OsXI0+9lm8JWPUA/5yZXUvZiNtUoDO0tKOwAFwD8ZqKbABtDaeuxiArXWs75T+Ec9gFp1i3ABZCHOt5j864FT+NeP49CdBra8wD4UYJ5wQmJMtsaMB+iw3Q9JfK7/5DOgtK2pDF0ceHdUpwoeTa0jGChlYHekmPEpYa/ZOMrOuz5YVwMtvFZQerLjHTMstLDm/dUIs+rjn7k9R5B6G5RLB2ej/foDdO8fNhkFZK7cZbSylbreMS0OQowQB0pIh9oX9j6DtQubII10WyQcqejPNST4q4GF6PFOAFb5wbjF9KDh3Sq++onWySc7CMaARcw2uOdSS4xPz5sj2UBf8qmmcFdwiWekUE5S261g028tfwrBsixgIN/I4AeyJrNoz51uzu0m5LUStgVJdPPAm66Nnd++ZThH1HphSbmDXQGmJDRg== X-MS-TrafficTypeDiagnostic: CY4PR12MB1144: X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 25:L7kG8GbrX5LndD6IKN5vE8Yf3B8O32Qgf4UfynMpSeabRDYuZdHpNCojWcZau+aCgUUkAlbz8OqjCrgcA4SBFgyotsRx3PAbMRP9AOjr/13N+yQpLYv1UMuUMpKWRfIGDU1OWAUeO6i/vj9IOOXp7qBY5DOnXIjJ/ztkMh4m371x1wkNGRJqC2w88rx3g3kakukxjY4Gg8otSh5wmeDyALBub533mxTh3EWNoMxVAK3NF7DvPVMHJYGUfWSHiVOnz1n9Hl7lyneW+8n/VMrHt2Ahgp5k8+gu/Pb1PO/gg5YG1BqGLQrjsVNV2yDc6bdkgqLp7Py8epbkXxMnvQfhK5FV2t9dpil2/MlZYrY5Tyq3MShuNDAlbkDNKDx+Nvmsbfj4tq7YfSMjVSXP6iZzb8EkquQfZgbVO1i9aEgEOPVP5yP3WJFzid/YrsC3PfVOa1gG7Ep7Ti/llXbN9mPijZz8SuV4yn+HXQBl2corOQmJYSdwRQOK8qmVYfGS8bnziiVmxMPzZSJh2zTq8B91c1lQOl4HNy4BO0prci7mrHPjpRBpmn2xch9OVMT6hktPkVGr2HyTKyjMqVYzQBl+3jfbLOkbcy2IOsAxOCrNMVlO594kktWg2nn05Bdn6HAY68U5tLlGg20rTY+ZLCd3dSOp3Yj4dOexmYCUrHFP6zyIG4IPk5pA62k2ViV2BRwSXiNljMtCG6LXoQhHncJd1oHV2vtRyuTJcGXEdVXwwhab7OFZQxRUGN4i9/jyZqE3WfkDOSHI4sOuI2vWd7YkpC3HmKgu5k2cnnfPtpayTfwOCBxWXPgEimpTBK8td0zjiEYiC2sNifhg+tCHvhO552jQASJSR2Pf/0FHl3+/TfUYOuFXdWXxNhOnLuerbAqO+MYH608NVjkeoQYMNGZp9n4leay3o22mBIdV5/hvLuI= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 31:3S5ZJ+P3gRSJ8uyCBE9slkv41dVCUavcbNAQAE7dZknmR4uS8+Xze1HbJPTdIKRhuP3NHC+6f9hplcLa2KeBOGUhJ1mgixMx+lQWdvusbvQ2FQqkpS4UxMVZJG4dZtF8ULn/x2kok11Hz/6Yrx8DA8J2/SqkKm4SJ7oYDMTKKwfJ3YiQ34OeHJwqmEIJdcRijzvpZDfTMF5DVgw/il0EdWy21i9bOCRR5ASrzpHOKEZP+ex50OAT2m5TntNXCSkNZZMpEOKc7/wQxnfUA8HUFOkEwKaOcgswD+UbejIicjEouT9CSZtzDDYuBNyl2gIin175UsHdY5zPypOlK/kmHQR2ot+70hcCVblFquQOirXpP05NoLlACg+vLfE1zXEvv/EnjehYdcOBcImJwkAv85IM0n4PQrDyz5mqHqKRzJG8sjoJQRaPvqGOeTtKEhLI1TszdH5ujKzAf3izQ8vOgPvkSFMPCdulqKSjUI25qROebhqpcRfk/xaDndjVBLu5LmixSUS0HFS7gZlZBltGNrj+OyGPDK5AhUmXcnMZ5dC2siAvr0vmB9NYqXcTa/pzZfT92pXC3ggZAhZQ8dI1bZGuvKWKQMqr406i2d4/l69q9Et9liROa4cYI9li5C/NbXfyS/3A+FxgmO8wndZXnVQHjPq51D6wnliJqQYmKB4= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 20:6FJcxfpq2GQrKQGoV5WmFVVoIjQ/L9aEpE4KBDx7uS3vhy9z/E7xwR9wHzuPkwI91+hEdgdJKz+dKbmB0BSGeJ+aWtbXV73Aau9akVNJVvzzmQw5hiw3ysPCzbXDza+U/LfjunXIhLXCR76M9TvowhKIAK3vO7j9FVCZGoPeo/0x0OOokzprExDsBH4KY5AwtZN8E3Ugt8lF8bp/4rT3XPXT66B8VkdK/OoS5nzNqM4nXM/y13PkoN4balaHfEVcvkuKrbnxS0sGEfeoupeq0n8/i/M4eqK1/c69w+ZJGkmdJ6DSOvcAy/uuVM5+iXzSvH9kFmt0R75/QnxqFZvsfM/05lXOtKPc8s4pNWajyYn4SY589DJgSDaKzddupdL/z8qUjDiV/GYpdiMJdf3wzAT+UYNwZW3s1Eyq04AwyvAfwqf3WaQbw85rB/wbwtro4jQMW3xG/UL35cNYAh0R7z9wrnIlOevRGN3k0mePf/gnn9uF5Dtk1isZhTXJxMx7 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(133145235818549)(236129657087228)(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(6055026)(6041248)(20161123562025)(20161123560025)(20161123555025)(20161123564025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY4PR12MB1144; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY4PR12MB1144; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjEyTUIxMTQ0OzQ6RzM3WnRVMmh1cWlwMHg3WXljTWZhdlIxQlRS?= =?utf-8?B?TmU5Y2FFYm1mZFhTMHNZZFpIWFQ4UDFpWTFoOWg2ZTZtVitpUjFoSTZXSzhK?= =?utf-8?B?NUY5Sjl0NDhJMy8vZUhpZjdOQmdqeVUwZ2hQK0N0K3gxYjJyQ0ZKU2I4WXg0?= =?utf-8?B?Z050TUZ5a0hmNU9ZZm1QcFh4eUh6Q1JFSy9oM2lFYVFxdm9XVVA4dHBKMklp?= =?utf-8?B?di8xa1RvRVJHOUpjcmxKQ0wzUDNhQmVMWmIreVhhWHB0R1BkdHFjVktKNUVP?= =?utf-8?B?YUw3VmcvRkhUMWN6Wnh5SVNlSVFzTUJsSlhwZTA3Q1NLdzlOYlYrVlRRTytP?= =?utf-8?B?aWF6VlJYWEFSRSs5MXhVYUhyZzQ2TkN0OHgvSEhFZEVTMFNycWpJaWsvTG40?= =?utf-8?B?aUVmOHRTaE8xSXhDakcxaGlLMFlJb1k4ZlZ3VnZwMU5PQWIrN1dmdnVDRmZz?= =?utf-8?B?M1dNVktJUzZRWlF6WmM3c29ZMDVMYVl2RzlIWWtjS1VNZlhTS3lnRUtVenIz?= =?utf-8?B?U1RqaW5kNEowVUN0TWdYQ0pqcW5rOW9Fbm1DUFV6eU1VVzVyMDd1L1BVM0tO?= =?utf-8?B?amJvU21NdDVFMkRWdE5CbHllZHdsU3ZJZXhkR0diTTB2SEV0OHhJRHdIWVdv?= =?utf-8?B?bytkbGc3a2JRR1lxMGJ3Q0h0bGQyM21wWkZ1a2pvc0xEZGRhditnMGZveDEy?= =?utf-8?B?OUhYV1grVjFCRkc4SHB3YW9RS0grbHR3S3pnQVdaUnZpTUpXdmEwRDBuWW5M?= =?utf-8?B?cVc3bHUvUzgxNFlsajdQZEtPdVpTWFNzYzJ3WEJYZFFVVzI1SzFnNDE2RGxZ?= =?utf-8?B?eEJKR3A2Yi9na0dLVkpxYlNqZjQyYWdOVzUyYzJIdHU2YlVIUG8zUndXTVl5?= =?utf-8?B?aHBueEk4Vk1GcHl6N01VR0JkOCt1czBKOWE0M1VCTG5oQmZ0Y2ErR1ZoLzJ5?= =?utf-8?B?NVZMYVpDYkZBTVdpVCtCaUhGRlR0eWlDT3lZZHJ2MXJQV0NEOEhNaHNQcVJq?= =?utf-8?B?Qmh5K2EvMUQvRkZNUmNtV1lRcFpGUzAyalJqMHRpMXBEVko5QlEwd28wc1NR?= =?utf-8?B?eGFXR2gzY0paWFVCaEFkcEJKMWZOUTJZeUFxYzNVYUpCaWJFcVEzNWxMUmph?= =?utf-8?B?TTcvSUt1ZjhTelJBRUVVR2tabXpkVmhwakhQQnRaQ1FZU0FpL3BXUUdRWkIr?= =?utf-8?B?YkU2MXdBV1BPd0RZQzBXdjJNM082RC84VmhISmFXWm83bm8yKzUvTE0ybDUx?= =?utf-8?B?a3V5T1dOdHJSZVpEb29tV25qOTJYcnRIWjZxSThZMzdHdURJQmVCMW9RelNP?= =?utf-8?B?cVFITDVsTURqMmpYaDhmQmJtVFF0YzdKV2p1QXU3UmJTc2ZEdHFSTHEreDhK?= =?utf-8?B?eXQ4MEpzMWNTVm14K3o0RlpNSU5qeTZablJrcXJJT1BERDJQOWhSWnFUWm5h?= =?utf-8?B?b0Y5ZmhwamRiNE5GV3RmaEZGZitMVEtyN21WTEI5eUFveUtPNWhpVDczRGo2?= =?utf-8?B?YWcvWFNhMTZvajdlSzFUOUhWa3pGek5DTDVqbnFyVGVFQTVqSUNkVVMvS1J5?= =?utf-8?B?OXNUUG94YndET0w0UXdjUWFFWTgwSWZwWlcxOUJvTG1NOWJPeWFwREZSb0Zn?= =?utf-8?B?OERYSm9TUWlUTUdwUGFmNFVZbzZxVlFJSmNpNTZSZUU1d3JRaW9vY2dKZWhU?= =?utf-8?Q?zbVb9e3TqUat1TEFS8JbyBkF7Xxwqw89pUJmIv?= X-Forefront-PRVS: 0351D213B3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39410400002)(39400400002)(39860400002)(39850400002)(39450400003)(39840400002)(4326008)(25786009)(76176999)(8676002)(4001350100001)(2906002)(478600001)(97746001)(50986999)(305945005)(6666003)(2950100002)(23676002)(54356999)(5660300001)(53936002)(86362001)(7736002)(7416002)(7406005)(110136004)(189998001)(47776003)(66066001)(38730400002)(50466002)(53416004)(42186005)(9686003)(103116003)(6506006)(83506001)(54906002)(55016002)(3846002)(81166006)(72206003)(230700001)(33646002)(6116002)(1076002)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR12MB1144; H:tlendack-t1.amdoffice.net; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjEyTUIxMTQ0OzIzOksvcG1DQ2Fvci9GY3pQU3F3TG5kV3RFM2lS?= =?utf-8?B?Rm9wQlhnb0wxOUFqUUJ2bXhMQmVDVmpGbzlGelpneGUxaHZRQ1NoOXFEcjdF?= =?utf-8?B?aEY0QmhnbXhrbEl3NS9HdEVEM3lNdHZZU2NudFpuT2RvejRJbGFQUHNnU3VR?= =?utf-8?B?VnFJdFhvSEExSFlJTHhvMTNDSjJZNjI0Y3Z2RHRhdE5kVFdWY3pxQzlGNjlh?= =?utf-8?B?TXNodzVpdXdSTnZ4S2ZJQk9uL1Y0dC9pV2M5eVJOeVJMcVFNNUs2S2xYY3M2?= =?utf-8?B?WmU1cGkxNnpuMmNYMWMxVGt2QWFOTEloSUJOTDl3UmRURmVXSXA2MDFCZUpT?= =?utf-8?B?Qnp4RkFsZHpGOEhKN3l5UVdOTUVLTUxNZndtOEpGV3ZsOU9QcEd6YmlMWGJO?= =?utf-8?B?emVIdTRBYVg3RVVabGI1NGJ2bDdmanVxVkI2VUt2WVA2M2REMEgzWG5QL2xF?= =?utf-8?B?YlE3aCtaVnZHUXRJMVNsdGxOUVJZTVFBNy9nTlF2TWtKenZKSElmK2cvdUI5?= =?utf-8?B?bm55Y3Vqd3hXYXZyQXhnclUxWnRDQWFqdnVyUWtWdjBPNTk4MmxHNUkzTVpn?= =?utf-8?B?d3V4dkVpVmliL0dyZ1oyTnVjMjZRblNtTW9QOHN3SFBPbTFvRzRwazlqTC9l?= =?utf-8?B?c3F3TUMrTWVkNlgwbjQzMnlwelFqWTcrUnFQZVRrcDdrbWI1djZvS1JVQ1Rw?= =?utf-8?B?cXg4c0MyOWZHZ25PWUMvNmFrQXB0S2w1c2tkdE9FWWx0Tk5MdGNQOTh5b1lW?= =?utf-8?B?UytXSUZYL2llRm5GLzJwNC9CVzJlWUxDK0IvZGNaVHRTVjZxTnZDVEh6Wmo1?= =?utf-8?B?UGlHeG1hY004ZzBUdDFWQWF4cGpIVTBRWXZaSVBsSkRSRU1xSzNiMy9sZFVF?= =?utf-8?B?Z2phd0poLzhCWndFVEVENW4vRGJMc2RydFRPdnVGY05EcVJmL2pYb0ptOVMv?= =?utf-8?B?VlU0S0oxTzdPRUhrYnpuMGhobDVOSjFzYjAzRm1KancxMTdwT3JPNlU0RTQy?= =?utf-8?B?SFFPS0xibTRRTC95UnAvSkZabzRYOVU3NHA0NlozUUM3N05TT3c4RTVqL0Ev?= =?utf-8?B?NWVNQzlSUU9JenV6bGtrV3I3VG9JMlN2M25NNUpGdzdWQlJRc0ZQaEFoQW9P?= =?utf-8?B?dlZyNWdKYk4wNFNESHl6dHhYNDY0b2hvUnkyNWtmMUtxWEcrWWcxdVJuL1JW?= =?utf-8?B?bHpPV045WXhWU2VFTjBLSHBpK0RqWkNEYjBNUVFLcW5hU21pRjBBaitCdTds?= =?utf-8?B?SnJKT2NJK0c0aFRuRi96MHJCR3l4cUdKUDNVK0RyQndrWjVsVVdyczZkb1lq?= =?utf-8?B?ZXRkcElReXRwMUpqWUJ3ZERYTGNoWCs3TkYvWFlPWUV5L25WeU1zYkl4d2h6?= =?utf-8?B?ZVdmNmdqYjFsTGlJd2ExZjdTakZIYVkyZklPQ3JMTng3bFowNUVmcVVYZzVE?= =?utf-8?B?Zll4TzE2ZG0xTEtxcUNxT2tLQW8vcUw0cElBbXRLeVoxZkVpY3RIdjQwdnJo?= =?utf-8?B?VHFaVWRNQnAwb0ErdnFtQTBIc3o2bC9VSms5TDBaMzlybmN4bEFiMmp5MFdS?= =?utf-8?B?ME1JaTIyTDVnRlg5SGhmUGFoejM2L1RRc1U0eEVHZ3c0cmZONGtIMndicS9D?= =?utf-8?B?dGNtaC84Q094VEpWVFBaZ28rYUVSSlN2YU5MMWhMNnFYbDR3N2hMNk9keURO?= =?utf-8?Q?8fwQBiRRGRCoUE84oE=3D?= X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjEyTUIxMTQ0OzY6QmNVbUlsUGRJVzBGQ2FYa0h0WkQyT3k5RFlv?= =?utf-8?B?Q2tKd25tSWlUM2lhQm1YY3pINGV0TzgyVGNoZDdGWmhydEI1aGxKRDBkM0Jj?= =?utf-8?B?T25nNkp5dGJMQ05qNW05LzBOMDI5Wko5R1RJSjVmeWlialFZdnRzcmIrRU1S?= =?utf-8?B?S3E4Y0htQTZoaDhuSmZuNkt4Tm5mRmhzRDh0bVM1NUhRQUhtN3BXbk5lSjhE?= =?utf-8?B?VHFadHlqWWtNTi9VRmV0VmZoMjROaTR5ZGV0QzQ1RTR6R3hlRzJtV3BVNnow?= =?utf-8?B?OEtuRUNnTUFvSWU4UFNvQ1VUUDYzV1RrcHZYRDBLSzVCcmQ4dVZwdWRaSkR3?= =?utf-8?B?NGdYVGhHcVJFdGdkd0t0LzlMTjR5UFVzdEZZTXZqL3E2SFFXNFVTUWRoRFVR?= =?utf-8?B?bDJYczh4WFl4TnhsbnZrLzFsSDJqQ3VNZHg1SU0zdGYxY1J0ZFZ0SVpDWlBl?= =?utf-8?B?MmVnUHRFV0FuODJTVTlvRHV5UGdsSnBJeTJ3bVZkNHhYWE0zSlBVTkhXQjUw?= =?utf-8?B?NE92WEpSYlU4eU9FeDNwV0VCNUhJclpKaXpFUEJpWG4rcVpDWnU4bzFkdG5q?= =?utf-8?B?OTRoRHh0TU9nWWJKbnl3d1FLSEp6YTBxbWtNTVVTRTVCZEl6QUJqMlRveDRj?= =?utf-8?B?a1JrdzQ1MWkrUGdHMDZraDB6cUQrZXZhRU5Cc2pBbXZ6YkVMSjVJOFo5TTds?= =?utf-8?B?SGhtWVh1TU8yTjdHUWVSL1A3VUZmQXNoK2U3TmVsR2pwbE45d3NUUHhZWkhQ?= =?utf-8?B?c1gydy96c2o4VUVWcDRyai9sSlYrN3lneFVUUHlHWTU1SmxBeHVybXpjbTRi?= =?utf-8?B?d2huUGJSQ1NUTnljZHk1RC9qTGplUE5uU1pWVFNha1ZIZVhxL0hYaGJBV2hm?= =?utf-8?B?Tlk4a1N0N1BHUjJZSkpLS08zODBmNnRsRTJURFlnY3d0d1pHL3kvTUM2cEUw?= =?utf-8?B?T05Sd0RZRmdzUzhlL05QR29IamF0amVXaWxqN0xFWEgxT1hxSzk4bE50QjNB?= =?utf-8?B?SFNPT0dPWEJvbDhvLzZ5dGdPa1FqeXRHeWp1YkFzYUxMVG1IbXlVL2YwdGpw?= =?utf-8?B?dHBqOWhtNmttT1N2S2pVQ3Y3dEprRGV4NVcxc3lnaU1YVi91dk9UajBlM3Fh?= =?utf-8?B?SEtDSkw1UlR1L2hBOHdCN0NjQ3A5b0U0ZkZ5S0pGamZPNzlRazloK3dUVUxD?= =?utf-8?B?UVcraDdCUnIxUWt1VGEwZVZCTFFLVXpQNzZHd2Y3V0lmTzdybkZnN09zVklF?= =?utf-8?B?ZDJNUENRZzNCUnRwQUhZaDdPTlY1a25SLzk3b2k4amRlRGtzUjNuT1ZDUElD?= =?utf-8?B?ME1KN3NXblhiOFlha0hIUlhONjczV2lCOHVYM3g0VFpQaC9KaUF1b2NldEhY?= =?utf-8?Q?iS3zcP0?= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 5:qN5S6oIE8pA+vsobi5ZtExphCSA6u7xdCOzl2aATjJy6DAiQMVblMH7+2y5k5EkANjFcrSk+oG920Xl8f+0YKabI8XENcZHhC+siGsaZdlHbRFoQdjs5DA1eJnPc2CPniYjmi7k5F60R1tZnO7rXpfgSToEZGmmw5hxJO/PEgDrrryF70WDAuu8/pzJmrH1EKHKM7efktcwgwWB30nc+4FAvXiavq0ayk9JpGqvz/CksmiDdckvkKJTHdSyKY0X9i6h/39NSNUguE2I5M/EtUDPtTjYNmvENIoZDSWl0yqMyWJVWmHMs6VIZfwHUO3wWyefZv0FbG8dIvlmu64rkAt6YWy7SULj0Qfl5lwzY00pClzVsJm0WULkzFxMixFeSJw3B2nmMwiPEIykMnNWtSCKZQUcrYrtomAFDskjv4/h/0OBGJucS7pxz/jTNRnMAYpDcLcV3RA5aLdIB+FOi5yBdR89iFA7aUkhKN2u5c6hJrI3EPOolYCn65NFGE6UY; 24:6jnH9zHxEe3ish9drO2T+ZKPZJhG+Z7oonTEVB+gX1vbv6iOaqrKYaa8ysUKD47Gdz+jmBKM87eib+CiS8vFXG1K2BMmra2EquoQSPtOuQs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 7:yB3Q1i0l4J8zCyn0knn1joghJhcvvyW3U5kpye91bGPmT2sZoDmr/amL/vv9cM53834pKUSYZgXadpE1w3CspTEAZler53K7bAWeG+Udou/ZZlCUu/d63ddyPJMxSnb+bAWQP+HcrVJ9WLTLsWbyoLvV15B68V/0mVSu5rCs/yWMQ/7DkIDMah2WjJZZIfiUbRz4lMYHvqUuS+07fmVDZOssEYbIAjsRNPzAPA2eGV/dkPYt7naJZg7kbsEHaOUrdpwk1x9re8KoWpBUTT58Pd1Qvhd86cwBeM+uIkuZu6R74QIEqA5lPFUtAN3Kip2ppOGT/3UcHmW0JxCV+1Wg/ipwLZZaJzdT0nBau9HQv2YL7P6Wp3QC84AeVSbNAfUExgedHxJuJXkXxy+sKenYEE1/U5ShEh6A/uk5NanhduLOs70b0P4vUHCMCugT2vqZagxnE/Yt3F5SN9O4pGxqnn1cCgyiHf3uXo+34YCGGCb5Wyzog2GB9CuYFGFtgZwfHRwQLHS1Nb11XaUW+UwOa2jNLtyou72X24GWiOZmMsfVMgxGzbwxIsf7F3t3NAE49pqrnHflr8rmhSTFVJlD1QUOn1jz/IIvKZi+VrDvpoeTCWoGZkFENIdcyTDnzfuF1iYuTy8zrmJjuqn0T/Q5NaD2cjujDrXPIm1YzZ2d9+0iBnTzA9nW61P9VBWc7X6vr3F0gRlK4FcWADj12mlnCPbBrRxnaM2dw1/a39Ux6asniZBZh+VPdlrtF9oq5QEbNAY5137Kc597LJqcc0lt74NYvLXViSW5B7RFFmZGvEE= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1144; 20:yOF9zJ930l25/+9pAl6T237KUlLVJSxenOiijUIJ6nsKsiKYnLYw3v1RFTmv4ImnYlsvpMDjEgw+PxRrfDF+0BZTFvnABOx/+v8X67izwkTqkVrhAKDsU8/RbwZ/wt0lEpKBtktk96ZL9UKC2dF5xtlr/SzPUpSGppFOIe9VRJydDJLoqtlzQ6MZtvIMsHBd1eJwo3oAmGp9cyMJkk8J1608sEinT3xduAwW2tQRxVi8hmC2qII00y/8V50v4hlw X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2017 15:12:45.5566 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1144 Cc: Brijesh Singh , Toshimitsu Kani , "Michael S. Tsirkin" , Matt Fleming , Alexander Potapenko , "H. Peter Anvin" , Boris Ostrovsky , Jonathan Corbet , Joerg Roedel , Radim =?utf-8?b?S3LEjW3DocWZ?= , Larry Woodman , Ingo Molnar , Andrey Ryabinin , Dave Young , Rik van Riel , Arnd Bergmann , Borislav Petkov , Andy Lutomirski , Thomas Gleixner , Dmitry Vyukov , Juergen Gross , Paolo Bonzini Subject: [Xen-devel] [PATCH v8 RESEND 28/38] x86, realmode: Check for memory encryption on the APs X-BeenThere: xen-devel@lists.xen.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" X-Virus-Scanned: ClamAV using ClamSMTP Add support to check if memory encryption is active in the kernel and that it has been enabled on the AP. If memory encryption is active in the kernel but has not been enabled on the AP, then set the memory encryption bit (bit 23) of MSR_K8_SYSCFG to enable memory encryption on that AP and allow the AP to continue start up. Reviewed-by: Borislav Petkov Signed-off-by: Tom Lendacky --- arch/x86/include/asm/realmode.h | 12 ++++++++++++ arch/x86/realmode/init.c | 4 ++++ arch/x86/realmode/rm/trampoline_64.S | 24 ++++++++++++++++++++++++ 3 files changed, 40 insertions(+) diff --git a/arch/x86/include/asm/realmode.h b/arch/x86/include/asm/realmode.h index 230e190..90d9152 100644 --- a/arch/x86/include/asm/realmode.h +++ b/arch/x86/include/asm/realmode.h @@ -1,6 +1,15 @@ #ifndef _ARCH_X86_REALMODE_H #define _ARCH_X86_REALMODE_H +/* + * Flag bit definitions for use with the flags field of the trampoline header + * in the CONFIG_X86_64 variant. + */ +#define TH_FLAGS_SME_ACTIVE_BIT 0 +#define TH_FLAGS_SME_ACTIVE BIT(TH_FLAGS_SME_ACTIVE_BIT) + +#ifndef __ASSEMBLY__ + #include #include @@ -38,6 +47,7 @@ struct trampoline_header { u64 start; u64 efer; u32 cr4; + u32 flags; #endif }; @@ -69,4 +79,6 @@ static inline size_t real_mode_size_needed(void) void set_real_mode_mem(phys_addr_t mem, size_t size); void reserve_real_mode(void); +#endif /* __ASSEMBLY__ */ + #endif /* _ARCH_X86_REALMODE_H */ diff --git a/arch/x86/realmode/init.c b/arch/x86/realmode/init.c index d6ddc7e..1f71980 100644 --- a/arch/x86/realmode/init.c +++ b/arch/x86/realmode/init.c @@ -108,6 +108,10 @@ static void __init setup_real_mode(void) trampoline_cr4_features = &trampoline_header->cr4; *trampoline_cr4_features = mmu_cr4_features; + trampoline_header->flags = 0; + if (sme_active()) + trampoline_header->flags |= TH_FLAGS_SME_ACTIVE; + trampoline_pgd = (u64 *) __va(real_mode_header->trampoline_pgd); trampoline_pgd[0] = trampoline_pgd_entry.pgd; trampoline_pgd[511] = init_top_pgt[511].pgd; diff --git a/arch/x86/realmode/rm/trampoline_64.S b/arch/x86/realmode/rm/trampoline_64.S index dac7b20..614fd70 100644 --- a/arch/x86/realmode/rm/trampoline_64.S +++ b/arch/x86/realmode/rm/trampoline_64.S @@ -30,6 +30,7 @@ #include #include #include +#include #include "realmode.h" .text @@ -92,6 +93,28 @@ ENTRY(startup_32) movl %edx, %fs movl %edx, %gs + /* + * Check for memory encryption support. This is a safety net in + * case BIOS hasn't done the necessary step of setting the bit in + * the MSR for this AP. If SME is active and we've gotten this far + * then it is safe for us to set the MSR bit and continue. If we + * don't we'll eventually crash trying to execute encrypted + * instructions. + */ + bt $TH_FLAGS_SME_ACTIVE_BIT, pa_tr_flags + jnc .Ldone + movl $MSR_K8_SYSCFG, %ecx + rdmsr + bts $MSR_K8_SYSCFG_MEM_ENCRYPT_BIT, %eax + jc .Ldone + + /* + * Memory encryption is enabled but the SME enable bit for this + * CPU has has not been set. It is safe to set it, so do so. + */ + wrmsr +.Ldone: + movl pa_tr_cr4, %eax movl %eax, %cr4 # Enable PAE mode @@ -147,6 +170,7 @@ GLOBAL(trampoline_header) tr_start: .space 8 GLOBAL(tr_efer) .space 8 GLOBAL(tr_cr4) .space 4 + GLOBAL(tr_flags) .space 4 END(trampoline_header) #include "trampoline_common.S"