From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751983AbdISUrd (ORCPT ); Tue, 19 Sep 2017 16:47:33 -0400 Received: from mail-by2nam01on0052.outbound.protection.outlook.com ([104.47.34.52]:32170 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751936AbdISUrZ (ORCPT ); Tue, 19 Sep 2017 16:47:25 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; From: Brijesh Singh To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Brijesh Singh , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Joerg Roedel , Borislav Petkov , Tom Lendacky , x86@kernel.org Subject: [Part2 PATCH v4 26/29] KVM: SVM: Clear C-bit from the page fault address Date: Tue, 19 Sep 2017 15:46:24 -0500 Message-Id: <20170919204627.3875-27-brijesh.singh@amd.com> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20170919204627.3875-1-brijesh.singh@amd.com> References: <20170919204627.3875-1-brijesh.singh@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: CY4PR04CA0071.namprd04.prod.outlook.com (10.171.243.164) To SN1PR12MB0158.namprd12.prod.outlook.com (10.162.3.145) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5f6a4d47-cdb9-456c-9c22-08d4ff9f9e03 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:SN1PR12MB0158; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0158;3:DwmTanqgJ96CJjOduA5v3wLlUt2cCGq7z8exQs9dqgOdDQdAT2gXHKxLlq1F758wsu37Debe4xtqUD8Ve3h70ahIdXIav/pBR9llUbNz/kSlmWyrqdri9Nnzi7kKzpLsxU+3ngSu6rbH/QZnycKAhTffmGYoMP2Hk2pGi1rKzW/A42gNOnUXtBnylCiybJRzv3CzXHeh9q3cQLYDNIChjBN9Oxl9be8LcdEEdGlQm9/VyHS3nfLbJeRXlTXKGP4P;25:awxFDPPK2yCrXxdiPOtmlOBm6NaKA1EdOLV9HWQ2wMrs8AsqDeSYCiC5MthjmMK2vuzyoX1zENtp3XUhl4sQZjUKBfo7s78+iERaKVhbTmdnHNjz1kFDVwE6j1taciw8lUrCFQ+fmRla1Ji7YNOfJzcvlkIcbdJQxnruY0tvYbWuzOBsfrcNupo/zpwNMgt8crlVpZQxd6n6eOfOD0xQtZHOqecukjcxVzyNwhleO+aCa1Vx5hKGyYwVuuQDzd9v6m9rwJpqa3/+xagMCp/PfwNadAWiiRaQATjiWNODbFO2d/gWcsf8tbudURrFROC7Iygyj0tU+J5fs/Gfka668A==;31:c+f1hgYtMn9vhQT4UnU7RC6H7iAlxDR8x3lRa9jjeXZpyAcTG2fJAz/bBG5LM5ct2oy6WC713OsYM8G2LmgrJYONttxqdRU9g2tnN/ePtrOOQnXzx998yiA70am7V5XQ16RUsuIL34ySntFUhSZDFFoz/OU3y0UKx1AECUtlwWV9F4JJns9TMo9SudXRaZaHioHZEjt08AdT9x382Rg9fxc2Od6J5DDRI8Bk853YMNs= X-MS-TrafficTypeDiagnostic: SN1PR12MB0158: X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0158;20:jrZiNkWVDN6y5Ig7D1hfFnDwaYpUlcmV04s9ORsFYkOs7EGcQJi9h10wJV9ZOd4ERN4ATZrz0TmPacqxhOjOJtlNtS4LYh6X715+QotSVUFEtF61HNlIIUsc/Tncm/6MT6onsL8rU2TPM721/nz5+E024uinghqv8okj12Zl/uXI+1NecS9jGeduYO2SAtGOdV4nUjNB1KB9/d+cX532GCQ4OY+zu1E+PJ1iJUl9yCjd8xkJtztzAetKimR7Vqn0fO0WRKxes/1n+8xTgO7q0x5VBwJeflniO1BD2jp/cbBerQUTl23g9LiGq1+mBgDYS+cmtvnt93p2KK0HP9mH7UV9mBc4tfhBI8lWoZ3naJDHzGHNqwgVvdUVgB+7BnE3jD/mhJc47o1CEmEbJStIVu/AwcHOgM0gTakdL6gySgwhLZnBywt3GXvC8xC4Sf7SlVWd2XqCoavZwJQx6GPqQ9Vvq2G5fPmGsz3fQi+P9LwV5R1L/ra643cX2fW40mgQ;4:Dn0AV4KM2S2OHRPuKHUrUBUHLnZ/1NozltSVJeKeugYM6L9McUt+cDJD7gUYuQHahEyHry4HkdwLOSM/F+yEn/jXEuEdNwV2T3uOHqz0wZyRUJrUiOSjz8Bkdp+DJ+oxeOlS6fFsFbwqej3efoocnPnn2ctqu5Mesye/iHOG8lsu2cvZu/v6TDdO6BBb7ml7HkfkNyzMEP5TIU5HZ2ldZ6dES7SfUoXt4DlYUqn5z4dO1LPlEYBcPILHlbk1WEMyznP4wwsnGNBoEgL49ewWi/c2RBnzC/huZv87BIa1eDxqUyZITe5sLDgj86Deadvk X-Exchange-Antispam-Report-Test: UriScan:(9452136761055)(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)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123562025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:SN1PR12MB0158;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:SN1PR12MB0158; X-Forefront-PRVS: 04359FAD81 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(346002)(376002)(39860400002)(199003)(189002)(86362001)(50466002)(8936002)(97736004)(6116002)(3846002)(7416002)(81156014)(8676002)(50226002)(2950100002)(575784001)(81166006)(316002)(478600001)(16526017)(6666003)(7736002)(66066001)(305945005)(47776003)(6486002)(189998001)(53416004)(25786009)(101416001)(2870700001)(50986999)(76176999)(53936002)(2906002)(68736007)(36756003)(106356001)(1076002)(4326008)(5660300001)(105586002)(33646002)(23676002)(54906003);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR12MB0158;H:ubuntu-010236106000.amd.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtTTjFQUjEyTUIwMTU4OzIzOnJHNXJ2SXZqdXVGZEhMaUwvRThsNldWenM0?= =?utf-8?B?TndoSzA3WTlRb3N3YitNWnlyQk9NcE4rTktPY0dGWkUxRzNkVDJ3YVVHM0ho?= =?utf-8?B?REpiM1N2YzR2dmkzMXNZYUdSV3M1cFBpbVhBZ1RtRDBMcXEzZ0lnV1pTYWJu?= =?utf-8?B?TC92SENvS2lFNTRsYTMySFZ0K2IrL0dvOTNIemhDdzRSL3M0K09MRURBNXNU?= =?utf-8?B?OGxnZUxMZHFNMFdFRElVcUJkOGF0cUNxR29ZdlNpWWdHVmNJYnV6WWFwUWxZ?= =?utf-8?B?dkNxTFk4TW1YdVBxN2svN0JHa3BQekY3bmxyUUhmTEswcGVKZDR0MTZrTU4y?= =?utf-8?B?NlFGMGlLM2JoNVBKVFVDQWYrdVQrbEtYT2ptV3hSKzBHYk5DUEU4ZE5CWWNr?= =?utf-8?B?R3o3YSthTlFkV0tRWisyWWtGc1ZZaUc5VVZsNUk5eFNZLzgxUzB5S3ZDaHlt?= =?utf-8?B?NXZORzdMY3BrMjhQdzRlZDdUdXBPVnFXRyswK2JOMDBJek9GQjN5MlpSNktv?= =?utf-8?B?OUlrYzB3VTJyRTZ3dFpXVFBTZllBRXpjdW1QOXMwcmRXWkF1N25uTllOK29t?= =?utf-8?B?bDhyN3A0blBkRjQvWmExcTlXTkNNclVmOHhSckZ3RnBTNmJVRmpvbWRMRzhF?= =?utf-8?B?NTNWWmtVeGMzY3JYZGhZNlc2TkhRTTZBS2J5UHFjQmVjOENsSS9SWk9mOG5T?= =?utf-8?B?K29oN21hTER4Z2J5WVgxUm9Fb2RqbVFoVUdtU3NHTkdhL05rOGNPQkxpM01Z?= =?utf-8?B?R0J0NlpydzJzYW1FMm1tNjlXUG8wWHNyUkNwckE4ZnBVSlJWL2xqa1JoYkFN?= =?utf-8?B?MTFRaGE1MFRWY2VpQlB4eDcyZ2VnWW5PREdHUGpVV2lxUHpXQllTM2VpWjR2?= =?utf-8?B?T0VsL1JZZ0N4a2s3cTcwdkFYWW82Y2tBc1pIZytvSGxIdUo3MUFrQlZOTGVV?= =?utf-8?B?cWdENDVjUGJVdTlDYk9nRmxsSHdxRlN6d3p6SlRMaTl4bDZXbHczUFBJZy9X?= =?utf-8?B?OUMrTitBVzBDdERxdTB2eUJpS0h2UHFYaXl4UEdIWnJHUlpENC93SzZJMjhK?= =?utf-8?B?T0sxM0ZjS2ozcVl1cnEvRnZYZmdweHc3ajlrMC85Q1dLaGdhcGlzU3dZQVd2?= =?utf-8?B?OGhIa2RyZmVUTmM0OHJHWWF6NFg4SDVraW5FT0wwNE1DR2s5TUgrM0syZldR?= =?utf-8?B?THhBY3lPTFYwNzBGYk9vem9vdS9rQnp2S2VRQjNYRndLU0VaWXdSTThFRDA2?= =?utf-8?B?bVlSU2xXSFU3ZlJvcDlVR2xTcGxOb2w0ZWMzczQyNjVmS2R0ZlpZZTB6SWpt?= =?utf-8?B?bEsyY3E1N2o0NDRYZm9VdE9Pa0h3Vjlia21Fd0ZLM2lkTG5pSzZtMTJpYktm?= =?utf-8?B?dzJoUHVZOG5rYUlsSFh1UUxFNzVWRFJtT3E1UlRLVWVlVjE4R0toSFdUWnVH?= =?utf-8?B?ZHNSay9xUUZ6bTJOSXdDM05tWTVETzIzN3RVbEVLa1FuUUFYWmtGOFcwWGNz?= =?utf-8?Q?A3rVkya27nh+nczFM6ItJW9Lg=3D?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0158;6:4L9X0ZXAV3shH2UwDWiI5aIgbhixQqjmkgQF4Te7O83ZuV/HcJaAcHglNK9s6wxU6qHK2gUgIgjBqBi74D9EunsdUQB0GH4OjYyCO+KQC2l/qVbacM9JYW7qqQyvbc24FWSg+XPeQdh+xigWUB5ybOK23bpX7ZaStdwX6HGCrkXW5v0QN7YcCPPU5fvfDKBX4Lik7i9b7pPlPVOxV2zpH8xQ7LI2LXDgHciQdxjPIjKjzVkQlee2aWJQsUp3PbrOSqodk2dxAaPtEsrgJN1Gw4blZ5+zTv8sxJWCNFMgDqiPlrJZVOwboKYWsmFyiY9ZEOQK2XyX5e9hUPza92t6Wg==;5:6y9F2fX8crDkh7oQ19NyaWNLeUh+/s0v9jkreiXJt+FJXIOrdJghk74SqtjJtxPrQ4nKlRRJSW4RiOWrbt7pBUgtxfNo1Pu13/FxLhV1zJEgbpk8AFcTW613ENBrMlJO3Xs8AuyltPi/U5MMJygrwA==;24:tHd63cRrMXvNYyD5/HgXSpka3vHB1N0hzNh/8USkagXrADs5erlvBz6LBgcBH0hFWI3aarjtLZoNf6BHDMQ74aaX0daRJHdOg1m0XU+GPsw=;7:tkuBUfxVwXtPLaBpxVjE7gnc8PYanngUhpQNgwbascF6wec2KgU8SbrUeVhzJu4HunayICvmxJXphEcsC0OJ27jeAmGhZ6JGAlbCD6DMbvQwrVG0/kfmGYGDlJ93EL8AtaVo0L0HVLa+8WDqK6I5Y0C6c/1RVEDKNB1cH89Xs5uyMCWcxsqzUWMBriU9yvxeePE5L/HlGUlM9fVfzl8IzbGtcGDHMtSPlco5lMt0DR8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0158;20:p5uDiDgsM0b0ywL87Wt24s5J2PA86Lp70/FVWyheQxSX4tOoLMwqKxQew85A2UqdmD1QFcPxN3U6SaA9UMhDMiV7ObemcVIyjjl2JJvxHSJJ/CYSlYTYJP7gEeLbZRFaX+l4rDvsAGdQDHkbRzxl5f6zfVvqdKj7rYiOQJuC4jDEUWG0Isr1kliJuf+4puXj2aKTekhwGn99XZinaHIYTQS2UOLpy2MRlTMCaWsp6eXl9qMCLBdE27jpPZeTL/Qv X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2017 20:47:17.3253 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0158 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When SEV is active, on #NPF the page fault address will contain the C-bit. We must clear the C-bit before handling the fault. Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Paolo Bonzini Cc: "Radim Krčmář" Cc: Joerg Roedel Cc: Borislav Petkov Cc: Tom Lendacky Cc: x86@kernel.org Cc: kvm@vger.kernel.org Cc: linux-kernel@vger.kernel.org Reviewed-by: Borislav Petkov Signed-off-by: Brijesh Singh --- arch/x86/kvm/svm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 208c8abf0bbd..b9906cb59238 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -2436,7 +2436,7 @@ static void svm_set_dr7(struct kvm_vcpu *vcpu, unsigned long value) static int pf_interception(struct vcpu_svm *svm) { - u64 fault_address = svm->vmcb->control.exit_info_2; + u64 fault_address = __sme_clr(svm->vmcb->control.exit_info_2); u64 error_code = svm->vmcb->control.exit_info_1; return kvm_handle_page_fault(&svm->vcpu, error_code, fault_address, -- 2.9.5