From patchwork Mon Jul 17 21:10:08 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Lendacky X-Patchwork-Id: 9846255 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 BF0C260392 for ; Mon, 17 Jul 2017 21:22:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 01C2C22B1F for ; Mon, 17 Jul 2017 21:22:40 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EA4E7265B9; Mon, 17 Jul 2017 21:22:39 +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=-6.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8BC3E22B1F for ; Mon, 17 Jul 2017 21:22:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752580AbdGQVWd (ORCPT ); Mon, 17 Jul 2017 17:22:33 -0400 Received: from mail-bn3nam01on0076.outbound.protection.outlook.com ([104.47.33.76]:46539 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751440AbdGQVLe (ORCPT ); Mon, 17 Jul 2017 17:11:34 -0400 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=Ck/aPz7TfTj2AklxRyEZ2P5eMMBqe+ndL8QmZWjXTtU=; b=iakl5EUCuxQ/quKtLJhBoNjMu2mUM5E2s6NQw1ljpduXGjlHOAxT+zX/P6WBsl8n5cnNwb/hWYL9RLEF75sy5uQuaEY/HLYRIwYl5gZv5jiIR7waVN2UGOgw2X6iPGq/AYaPrwgUYtkKECWbe2azA7A68YYD83WjBlyj1BAw/Ik= Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=none action=none header.from=amd.com; Received: from tlendack-t1.amdoffice.net (165.204.77.1) by MWHPR12MB1151.namprd12.prod.outlook.com (10.169.204.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1261.13; Mon, 17 Jul 2017 21:11:26 +0000 From: Tom Lendacky To: x86@kernel.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-efi@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, kvm@vger.kernel.org, kasan-dev@googlegroups.com Cc: =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Arnd Bergmann , Jonathan Corbet , Matt Fleming , Konrad Rzeszutek Wilk , Andrey Ryabinin , Ingo Molnar , Borislav Petkov , Andy Lutomirski , "H. Peter Anvin" , Paolo Bonzini , Alexander Potapenko , Thomas Gleixner , Dmitry Vyukov , Rik van Riel , Larry Woodman , Dave Young , Toshimitsu Kani , "Michael S. Tsirkin" , Brijesh Singh Subject: [PATCH v10 11/38] x86/mm: Add SME support for read_cr3_pa() Date: Mon, 17 Jul 2017 16:10:08 -0500 Message-Id: <767b085c384a46f67f451f8589903a462c7ff68a.1500319216.git.thomas.lendacky@amd.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: BN6PR03CA0008.namprd03.prod.outlook.com (10.168.230.146) To MWHPR12MB1151.namprd12.prod.outlook.com (10.169.204.15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 78602b6e-7b6f-419b-213f-08d4cd5864c1 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)(300000506095)(300135500095); SRVR:MWHPR12MB1151; X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 3:Tm1u6y/1qp1qQHSPuOZV7g5s+5j6y0cgflWewIAOqi2oJ/D0A5r/VWcWADL1Eys1VG2NrsblsNETrFRS4B5HTp/efOB2fMvZmDAWwr5aAOC78hefzCCoQpUwb9Mz2Y6HNZqO1FltoJfTCtgtp95qXQok28fAa3/IA4R5N/EuggLG0AKgxSdBMAjvmfx8a46DbY8ykR3XYB0NRr6fzPs6w7gImFjmT01Hf/NYYAicBld0/RUel3o4nH8Jc/Y1EWOEMvfFpucEh/tn5cCvB8xJFKuYl4Vs10wIuSfoBzCQoGkV+VPjjWwiub4uGvMY8QvsOfxiX1REtQAJKiJ0chKYiM+ehOWF1+TlO5+9fnwNEnoim+ukkU+mDS6mg4oUYse26MxS66ZSDq+o0/eDXCgE9DW4rXiZ+nHM+asjyh2ZkKwVrpJrQSKR4aTZQ8FyXQGhRAaTPvnDWXkBYlDbssRu/+/REpX3SLQ/Yj0QThe4TBlkGjoR3iLPR8DqPEXd0RPbCffyJc6UaOzvnQFBhnFvxvTfhkn+M4Nj494lqFi41F22Lgy8ahSmlxVX/vS92SQ6sgSjQKAPM0sIBcDsBSASfNspZzURucnbNvXRm7fc7mgmVfCxXsoTpyhPnHtcx5RLdLBZZDKbPXGpeMxP5setbslpLco1YpMuPoW95zV7qYbVmv6/EiWoxQtrwAtFHlt6Mr2n6SdAgjj9F/Hja8NYz8rBudbKAdMuzhILGOEkB5R7bUWv3xyy26K9csnGOoSbsbvrxVOFtwv5+4pzAJ3XZA== X-MS-TrafficTypeDiagnostic: MWHPR12MB1151: X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 25:uSh9b9nWxzM3Z7xsjxYBB8rzHhoc/Ld9Ko0CtLA7qtFozfx7hRG8u4YvYt6X6FQy+XzNCVzPXwOYLeb7wMeL07zyQwa5vgeih8yJ+BqPLi0igRLHcmVgrMyqwb4J7N0oWweTleQquKrD41ASRz/3aOJXZA423XljtegG6N/ir2/JgAs1pwgwMKbLDpNyySyb8+Z43EDJFLEtK3NelqXpA5DlemBh1t0O8uHgKVfR2nfoi4PaepkF0qWRyLvTMtAWCR3ni0zMY4sYtP3XUMqMBo68krcl4st9Hk+IE9GKVqZDQrF5fymEO19rn5XRGBSGkGR5q2kACRKjNiuVWRgdbeelK7XladrG7o0TcBsHMb2uIW3yBuiGlESST16DqffWyQ6aWuwPLhD01/c/L6g/jS/hMMi9DnyBth/jos/ENi6vltns+qUkJFlrLzzkp6R+S9bxHUa1RPzcU4eQizPWk5QcwOXUd+v7gNMKcsg0a5PESe+TmJMeTkoBJZSyWfrrWh9/xlkz5b0+7Fv5/D1w/vBhdHbqaIZu2UC4lLHClN6EE2YEVXUZlpX4tNS2hREFZnK09NDFeM0fz5Z9G1t2fru08wk/N8Yd+LDte8UbT+W4qmU6pKifcJJAo5Jvluk5WlL9TPGX9OmcaIfLbbBJTwK1oKOa2F7sCQnodK9ThzOw2WOmImiU21PkBmnDwpJj6iUy+CVKHDP6qekymN9To7CEVrYbs+zXMdLr+pv+wCnrhq9754PQgmC/IEg1BILCqXAVXz6S4lfnXP/Gmc06+O2BTX+QPUCZoxGoTzOy66IrU7Ed8CnAdgd9cTIdPR5mHomenDyaFZ/NJMoyCYKS2FRo0NDIjXSqWnMNlb1CEVpXVi7ie/CqlaTumwsjjrDw2q/ToSYuGQN+udDymrnpMRiNTfS6rSLEcbyMcwLIm lA= X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 31:otMfKFxVtQHTSX/xI0MTIZQ2GITLnkinkr78iyeBoix5xPtFT/Ri5xKEv8Jxo1ltPWUH1LkEZQT3hkd7Xo2Ht2hNdqHmjvIG8rewW6ckT8ojtl9OGsMEpHzmXTOhFsoGAQcI/Q6+fsNz5lnSnyhrG4jqnXu5myD4XfModhDgyuJ2DEoBC2f4qEI9FNX9vWknfZvhLkr+HWw9NkPKjZskT3PaG7wrkVbbP3LP+RF0x569k2jTvIlNcgbnlqHism6XRvfWDvxYfzqlWqHhSnEkjn8jUmKEX1mjZrqHE8MtnTq7r5d8RljVhmOf8JO9Fe9bOFx3NjZ6G8FBAT3dOy/SnaB21R20RgVZlrUMbvSj/Tm0awX/xR8Iubzdv5ixKLuxE3ah1cx2fi9v0Jt8dVzid60roh+yT/QWiLtIs8pg66g7lObqinHBiOzeus7V1EDA3y5w+DiC79sR10XewMh+BCusAiP/HQS56Q3vGOv6phGp1bXIFqIoD/ttchh4QTdah2QwTeVIIorBjIQJaQktPT9pd7y+lxHpGIHgdZ2xPZ1lv79hxmvvcljPhYg8gN8JPoBuAKjssQKb+/W9/9JoupWmNnSyuDoja4MIWWtEMnnW3BVn+HaEABcSfCkcsxp3vC4iIub30WwV4VJp9PM5T/TuHSTo9AIRfxEiIS00CLOTQSck4K5d1K1pOlfmSJUMrYfbj9A/p8hEfFkQO5mHRQ== X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 20:F6BgavZRrm5qzs2hFkR7Rpz6yXjRlyVdIFTBOMYbVZSUi0zRm487XXO8HSUKXTkCwKMUceX2aDmMwlHKSEZKosi0vY0T25onIjQCR7szTeOGqV0cCfNawYpXK8ag9W+PLMeGfCxi6fn+FIwZMqwvzEGHSvMYHrh4osqmKgUWSRux0IlfnaRfs5UOXn8O1yZjh1MV9sa0YGV8GVgi8sahg5am5rFvFIokZAssuNjY7z0DVXZQ0ukdGb+8hEmzDgovXFhNKnAGp10idZCYAqItT8nSHtk4b1/RgvNEYZaPMvGevzELNb9F2abukUBuHpUJb9CH38uP2s7Twf8rvUguhxkGWzLKL8q4QDjTJTDbYtzTKzFHdi7faEcSelSW9ZuMGr1qxj/5Drh6a8YkHsJx039HuR3j1hWj67QvyJF51giKR2Ph3ZodJR1leK9dEbfrxB7XzhwuBZ1wcfBtyeilXE12iel4EpcRdKoGOEUTzukGkZQ6/0/JIuEH5oDkuecH X-Exchange-Antispam-Report-Test: UriScan:(133145235818549)(236129657087228)(767451399110); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(2017060910075)(5005006)(8121501046)(100000703101)(100105400095)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041248)(20161123558100)(20161123555025)(20161123562025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:MWHPR12MB1151; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:MWHPR12MB1151; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR12MB1151; 4:GfKTLMPSmRYNpDv4TEOfXtaOZPQENosAA/L48ho0lr?= =?us-ascii?Q?5I9QlRNdzRKgr0nfdWKZ3sJnjAqdhsnN19WZfDM1iZwzVboy1IcRsxdXLlhw?= =?us-ascii?Q?RTliy+hLlXX7v3XN6mrAmG9+ps5zf33fJHOMaYdPp8TFdbAF9KlxFqQkkQON?= =?us-ascii?Q?BQ/Rydf/Fhjfy/c2Dys1a15hpDkRSeRX962EfhIxzf/E1Rn2+W67KMVz6MFL?= =?us-ascii?Q?9ZFBV+unn8XfUbvo4Kn5iYSpawcPspN5pnq9CsqepqvE9wu8Jh4AV9BJIZyE?= =?us-ascii?Q?XWnO4R/aPMNCZ2ihdeUbggnFHHc2qfw13ZB4jR1Gb/gzK3fxqOez+fQWsh54?= =?us-ascii?Q?UfAZiwgVWepo1vmrqjyTNRLlGMeKc5H/F069aq8A24HTMfkhtlqIJG/Utkv+?= =?us-ascii?Q?r6qh1+fcfdPvWG8J3dGnvQKZvbhpxffwPrHfQeZ8TWY0fSBgR9OAWZYbfMnK?= =?us-ascii?Q?MMgGmiFn/m45qq34dN7S6i3vG7txROoA+MMClW2yCsGPdZ1nLFcyQRatmc6n?= =?us-ascii?Q?CDqEC16mmXqr3Laoc68WyReUX0OIZZiT7ZkmBWZiPXyfe4Mq8YEseqRdrHNk?= =?us-ascii?Q?w7phuX4sn8wCJfKwUBlRvo5i5DUrEpEag7n81zrMC8UcYXSA4/h4j7UQ/in4?= =?us-ascii?Q?dfdPDz2oInN/STdFWdLPQ9x4Y0eco7WU/uo1rJ2Cf03OG2emZDq5DMPUKUlI?= =?us-ascii?Q?gQW/G/6Und6wwftvW2Lcipm7LYZjpsh7Yq4ELVyVWuXltQkPFtRpqTyC5Dx/?= =?us-ascii?Q?rfqI9yy3zTz0aB6GkcLOw9+LAczgu50kX1BPNQpP/G8m6TNtNQGkfCzSCu5p?= =?us-ascii?Q?r5UFDlZS93YKynbMXlfv5kC4363+/MNd6HBBWKsUftAxvuvxIPTu0mVLUjHf?= =?us-ascii?Q?HDJWiRF3jYObmJZqCH3O8tM06k6VyPfzoYq0kkAYi1rI+tLK1KCZ/3Bk+vSL?= =?us-ascii?Q?DXMygozugc5beqWeRtAcB0J32jDojuasLOk5Ng6oEqEMM8VgSqJ05WJqeLzX?= =?us-ascii?Q?5iSv4KeeM39VSXzXQ3TzeeJOw6VRRbfwQtMsNZ6E47S+7h/ZacirR8xufpbc?= =?us-ascii?Q?atUV79MnYTpF5/eGfwGe/DmGLSA7q0SndkUK7m73MLSeVqCKyn3J3rnIIvg4?= =?us-ascii?Q?h4jhAJUhZhuAiD+AEoRRzXlkzrVVTSTZkxqNWzoW3S8gKGbVqGdZQk1/ipoh?= =?us-ascii?Q?93u8VS0rLsmKmH4/A2cIVx5dG30SzCsH2I1GQ84pWSYhGaVWlz8rTc6NONs5?= =?us-ascii?Q?6tGoq2ZDp++V0hkW5hvXteI0GeIdVa8Lh0RonWXeuFQvzJhm9F4T3TQ+gr8s?= =?us-ascii?Q?3mZYLdtBTjPYEEAsSeMi8=3D?= X-Forefront-PRVS: 0371762FE7 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(7370300001)(6009001)(39410400002)(39850400002)(39840400002)(39860400002)(39400400002)(39450400003)(25786009)(6506006)(33646002)(54906002)(7416002)(76176999)(478600001)(8676002)(50986999)(6486002)(47776003)(5660300001)(189998001)(42186005)(38730400002)(305945005)(72206003)(53416004)(66066001)(50466002)(48376002)(110136004)(118296001)(2950100002)(81166006)(5003940100001)(3846002)(6666003)(36756003)(53936002)(7350300001)(6512007)(2906002)(7736002)(6116002)(86362001)(4326008)(50226002); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR12MB1151; H:tlendack-t1.amdoffice.net; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR12MB1151; 23:A/+k4EOTtxRcYAzu/aDfqRPObSynCn4MUWFYs1blD?= =?us-ascii?Q?DDFXLN+6pPJw7rmvevcof2nDJ0M0t1PUHGvEz8UTam/SkZYCz6LhGgVdq12M?= =?us-ascii?Q?sf/+otzqjA70EjR1Vgg8/tBIgEeQ3FNtEjpmRjl6rMe1ticliX89h6qfBUWw?= =?us-ascii?Q?0WmwY33U4Hj9Oc2nfHjrkb/KiEOD068XyvNo5/irs9XCJxxbUqtPD2w1xLEi?= =?us-ascii?Q?01leUV3IFo4l881QSz1+k3rOF0N2dLPguAHhf9NVVN4MyeQcmr+3Zgy3G3cI?= =?us-ascii?Q?2k/dWkHovytAckIoVoxxpYPVyACqxVqmcGFAY3fYVGPvc37VrnaeeF28S0Xu?= =?us-ascii?Q?X7m+PzavSOKiFLAZjt+gUi6YfL/8Kvb9IkCi/TT1WliCytJCkCmzzhiPqNqj?= =?us-ascii?Q?sJZTo9IZ47BspBFCkdvdUGjuChLI/MO/LT6fmX1L+KaPDjb2AaCXXQ4d1Xxi?= =?us-ascii?Q?NJOpdd0mSLXiMYfNeAr6OghdXPZAx00Z0iV4xkiwOhDzL4xgwDRwydVJusp8?= =?us-ascii?Q?5SZwEdcEu9dRyC+tYv4XT5iXe0lquAzQ/D3AB5ZbO5ldzznFMvKDq2xvQ5o1?= =?us-ascii?Q?oR6o4r6zXayrHn+cj+jeWM3Q12viLhHJYIpEZ9sEy/hvjHfmT84w+YPUYAhZ?= =?us-ascii?Q?UnbFsfsWWKmwGps70SO6rkGeUj3M2fPE+h5RBIBDN5k6U4VX8bUycY69yORG?= =?us-ascii?Q?ysUXnFttozC9svIz8Btw9qbbWv5LnAcmgds9B7yWqTCynqt6ESFCTPC5N12N?= =?us-ascii?Q?hguWbTlJefB/+wPhti1aLrs2vLSfZsWm2MjMYBAmWj+O6OTsEFVC4+/rKv3X?= =?us-ascii?Q?cn8NYRkpYQ15l8NQpUJVOOn11RMzdG6LyXVJZx7aWqiu3pIZWRuX2QmmfMvL?= =?us-ascii?Q?SosBVF5XIfym92I4gzQene3avOZxqf+PYNOb8bS7FHReg90GM+5BMmfZuF88?= =?us-ascii?Q?kaGbQDwAE/vt90RVKZVz6/+jNo+lmWQnF0dF7XjovYxjWgtexGlepWUMjmMw?= =?us-ascii?Q?zjvjYfXn3Vl8dtfPlr5ZNvRAn1sW3s8dAkKEtFTPmdwQ7brNR9LueRO1beKy?= =?us-ascii?Q?/4EWKGv/0LgJzdiWAfWKZm87sYAP840/WlSsvEZvqg8CU3H/oKzE9j+XURR0?= =?us-ascii?Q?K+4JlaCG9KCs5Hwl/yKpLM9q6h7KSezoub0c5TeGZcCt9PeNyaqzk/wEO1oe?= =?us-ascii?Q?jxycN1J32jeq2Y=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR12MB1151; 6:jGLrbK9c8oc4yT+/45sxrMi8Wslba4wJSz3N4Td9Dr?= =?us-ascii?Q?TCsQjYirw4XHD/S8AUHj7JOFTlYeYnVVmFnbhhFSQB2GxbT/sLHpTFgFVyxx?= =?us-ascii?Q?jmGqKF4g2FvUGIBMx5kNPvah7Zy+2Epgkzcn44nnL5o6GERZzriiradq1v6L?= =?us-ascii?Q?NlcUZ6YnSV9lSBGb5K9oFAFj7EHu1VVDeY2ralJn3g8xPOzp3W/JjfnLW4ll?= =?us-ascii?Q?G9oRRskmoyry270oZxkTXQcqJtTMwOIuygFGBXcrs507U6AALA8r8X8GX343?= =?us-ascii?Q?Aq1SqRfxPDBTSUSFPBfyGyw4pRz6nSIAidHtjncGkkNHQEtV1H64QYqLMojl?= =?us-ascii?Q?52L5lVKguJyFaO/gBj4l9PSzl2NZzyjFswougELMU+4caVlgOrSw0mYIFUTu?= =?us-ascii?Q?pWoYgk4OOQhm4YyfVtPkitCLd1zCD2Ll9o4wOJAXQ0B9csoFuhJGw/QUv1A4?= =?us-ascii?Q?/Iyd/0VMDwC9lS0CUAWcjPxX4BfuIjGgqGUswFLriFrK3tKVx4WDVAOZtH3r?= =?us-ascii?Q?uh1jgxArL1Z/Q7lDRHbFusZE/4kFroRkNQRE0dbhuLVkwJCtvmWvxpa7XGpk?= =?us-ascii?Q?nKmnwa2lylCwtgxPoCkD/wYXHz5gX4AMmZPAkD5V27TNMV7h7GFWTpriOElJ?= =?us-ascii?Q?QkZXim6SESHzTfytGGPR6tGvxfWaSjK6DETIOEN07VTPatYAeoctZPphl5OW?= =?us-ascii?Q?n8nNNi3Oiu3dhV4JwD/WViBrrExduKbcQpQ7ADiDJR9S0xSTVU2nP0ywDYIN?= =?us-ascii?Q?PeeZq5gGLkPwDEldQYq0syl8kg98uPpSXG/rpJYs/xSqIPgYgwVON0h/DPUJ?= =?us-ascii?Q?d4qNFYWAWqhzZ/3do+i+B9fZcl0SEyWEsk/+gfvnPwYqUtjZIIcMSHY+jpzc?= =?us-ascii?Q?OsdFYSMTpDplKnXiLl9J0VT+JbTd9mwAG3YwFW5wkpHqovvNPwAcsI1g9xOF?= =?us-ascii?Q?SaEFXDOL6ffoIjZw+1X1Z1CkCSR9y+eiMGVO4BE9OiYP+tUNFYRNO1vdSuj0?= =?us-ascii?Q?R1eVSLsGEkXnFZNTQ10PvN?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 5:kKkUeHzwoRaeyyNaAHoIR6i9sKyfHjO4BobDEjMzm4kVVIgStnaGBlWFpTcPRJvwfDsvdRjKQfR203bPuW9YGLX74zYvUYOa2Zas6oW5WUHQ7UFVUfQoufoSgXFoMLjYz79+ZcJDgt/HcR/itXCGp3jj6UqrxNT9UiRnrRaMsEpwxz7+XYEuBiLnRD01DHUx/l2yHQffdDy3JzY/vbBOpI5Xf9JaovWrtEd0xgSo8ppNrSf7apE4HUzyJX3rPasY5p0LNR4XbB/4AXAdgUsDy6QKn1RDt1MpQ7td1IiBOSGzHUhFSBRIi71XR4Cz5wqCIho/qvEcgOknmQHr1ty32+Z14xZ2rGaTtWLyIMLrg4/Qf5vChhav7mj4+VaX7JNwL/vJDqDlzp3Unh2PMRp8j/R1SL/vNnSzllm5jMXbhJB1Vd21LrXlbrg9KX54oC/RWr4MQ02di+VmCdHhXR7RCd3YIZvZBrPtN+MuuhdUuX8uY4ucJnyblOg0j4OmPhp6; 24:ncWqZwKlwhNdJMi2Ht8PXMB0JXgIiXZVFOHbGJKC2BKbZRfr5l7DVTndef3Q6a90O05qjq3mrbepkQgzjZdtSI2UTqsriXKDg65EX7oSQNc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 7:wKA6WfQxeqg4gTqRL6ZpTwLgZJXB9DX710XRbgXveErZ9mwPSBE6utKfL6UFdlkTZLK5rPxV3mruVcjHiSkCnbdZJ2E8cKLRmG6k6KQu2lWdnRApox1dBn0wfSCYOY9yHn8K1L4Jd+ul36B2Q88Ktkoo9jyEDcyIF549gGErLtF/u6L+fzIQn7agFAy9XKZ8zNwWxlDrkCmX2LN9tpgS9/qf8lBenf3Tic5+FnTo4gTNeoBhhvPyUoAOZ7NNTSuZPkOAd2ejo9uM+v9N5aHg7th7xFzrTovCHOT7Jcspy+5KPcftXsXQNgcTdLb8nqxwFsOI5N4a03xQpWWOXkjaWjL3FZd0OHhr6v5cmH/oJUnZd3qg8oenXDscuL16MYj9johMxWtO/2F8fkqVTyHpglCgc3lC7lFaKYjhwKwX40nXHFG3Bm5V5vtxSRqmlM/+DBDTzw9sGirIXOQlPeaerUz1AyJqyXOOXHuF87y4vZedjwIPyHiYhtACC9CbNxGSRQyOHQvFCwRzZQSBFFXBy2JHMn+//0DwJV58sYCm7pdLoddSeAg/PK7PNKr0ZVBUmSccZOks8GkM5tIuAbxb8XIGHn3/L88J0usjTNbOFWPLFGYS9GueOiuUMJ15PHY7VIbli+tyUa0oIbyJQyKr/2GrhhcgsBtATixqVjZWi3U0XqraLGw/a4fFbBuDX0unF0ov9O+M2TjDbhnhj7yg0l9Jt7H6qfRbkxhiGDVq1Dtc+P2KR2ngK3Dx1csdCc7jU/3ei/TgGZfE5cNNxvvgXowibtd5nozegFkl7eoeFSI= X-Microsoft-Exchange-Diagnostics: 1; MWHPR12MB1151; 20:4XOcCiKhDuNvgTL1a4XAInes75ajdJGY1xjpTIyMQjIysAUTvLCTOychXMMwWlJdaknl4WZxcYoDzeshKYCMU+LTIc8qatPr0i5dVy614l5JsgVJi9mogCWFyOvsQZqCOqhwIF0UGC6RVO1w9HG54HwGDsUakT4NCrwhwq3TrJwLqok0AiH9mbkiqG8Zf/ttzbYaJ9gaKBeVOiOlCTL6wZWgz6B2bpghJ5BljFjC2nBF3pANvdCPjrqJWK7XzqYW X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jul 2017 21:11:26.2728 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR12MB1151 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The cr3 register entry can contain the SME encryption mask that indicates the PGD is encrypted. The encryption mask should not be used when creating a virtual address from the cr3 register, so remove the SME encryption mask in the read_cr3_pa() function. During early boot SME will need to use a native version of read_cr3_pa(), so create native_read_cr3_pa(). Reviewed-by: Borislav Petkov Signed-off-by: Tom Lendacky --- arch/x86/include/asm/processor-flags.h | 5 +++-- arch/x86/include/asm/processor.h | 5 +++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/arch/x86/include/asm/processor-flags.h b/arch/x86/include/asm/processor-flags.h index 79aa2f9..f5d3e50 100644 --- a/arch/x86/include/asm/processor-flags.h +++ b/arch/x86/include/asm/processor-flags.h @@ -2,6 +2,7 @@ #define _ASM_X86_PROCESSOR_FLAGS_H #include +#include #ifdef CONFIG_VM86 #define X86_VM_MASK X86_EFLAGS_VM @@ -32,8 +33,8 @@ * CR3_ADDR_MASK is the mask used by read_cr3_pa(). */ #ifdef CONFIG_X86_64 -/* Mask off the address space ID bits. */ -#define CR3_ADDR_MASK 0x7FFFFFFFFFFFF000ull +/* Mask off the address space ID and SME encryption bits. */ +#define CR3_ADDR_MASK __sme_clr(0x7FFFFFFFFFFFF000ull) #define CR3_PCID_MASK 0xFFFull #else /* diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h index a68f70c..973709d 100644 --- a/arch/x86/include/asm/processor.h +++ b/arch/x86/include/asm/processor.h @@ -240,6 +240,11 @@ static inline unsigned long read_cr3_pa(void) return __read_cr3() & CR3_ADDR_MASK; } +static inline unsigned long native_read_cr3_pa(void) +{ + return __native_read_cr3() & CR3_ADDR_MASK; +} + static inline void load_cr3(pgd_t *pgdir) { write_cr3(__sme_pa(pgdir));