Message ID | 20170919204627.3875-26-brijesh.singh@amd.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show
Return-Path: <kvm-owner@kernel.org> 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 998AA6038F for <patchwork-kvm@patchwork.kernel.org>; Tue, 19 Sep 2017 20:49:50 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8D7A728EE5 for <patchwork-kvm@patchwork.kernel.org>; Tue, 19 Sep 2017 20:49:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 8254C28EE9; Tue, 19 Sep 2017 20:49:50 +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 0FCC228EE5 for <patchwork-kvm@patchwork.kernel.org>; Tue, 19 Sep 2017 20:49:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751908AbdISUtB (ORCPT <rfc822;patchwork-kvm@patchwork.kernel.org>); Tue, 19 Sep 2017 16:49:01 -0400 Received: from mail-by2nam01on0056.outbound.protection.outlook.com ([104.47.34.56]:55572 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751634AbdISUrX (ORCPT <rfc822;kvm@vger.kernel.org>); Tue, 19 Sep 2017 16:47:23 -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=WxWF6D42TjoL0hKN1zlH+V2hQlw0G5ELso1OwkdqkG4=; b=EoCJAMZI+8EP4u1/mHUhyAV1vpPqFPRuOVH9TM42kx2kXQ1uPNzmsp6iYvzH1oKKuNwsYqhHm5HlKMbPyXL/JtKl8ras8q/F8xuXrDoZ2HlLcRZtwQF2AXjRpRiyjP+VF7CuyWffb1RFoaHP1jO13nZWyAjVwwmBKJBGaD/oGh4= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Received: from ubuntu-010236106000.amd.com (165.204.78.1) by SN1PR12MB0158.namprd12.prod.outlook.com (10.162.3.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.11; Tue, 19 Sep 2017 20:47:15 +0000 From: Brijesh Singh <brijesh.singh@amd.com> To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Brijesh Singh <brijesh.singh@amd.com>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, Paolo Bonzini <pbonzini@redhat.com>, =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= <rkrcmar@redhat.com>, Joerg Roedel <joro@8bytes.org>, Borislav Petkov <bp@suse.de>, Tom Lendacky <thomas.lendacky@amd.com>, x86@kernel.org Subject: [Part2 PATCH v4 25/29] KVM: X86: Add memory encryption enabled ops Date: Tue, 19 Sep 2017 15:46:23 -0500 Message-Id: <20170919204627.3875-26-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: d4442f40-e356-4fac-8a25-08d4ff9f9d23 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:Ef1h6Xr8oOyc1eht45HhpeWUE87cYCSKE1XsrZVkBeX76nq84+wPj4eWbnb9siE8wzblo30kPQOUOa/okr8wp2YSmpiytc9zPGUllCE8UTEoo4em6QIcrTlC1OZppjbMdcRY9T73Mvlcvn2UVtnMr/U/ixoJosTtcNXZC+8mzW/vjYNHyH78euC/xatrt6WbWN1+Ek2OuW4+/e4IbUsLjbTShZrkslRMM2CQeeLoZ8jv4P1D6K2/VAUY9DOw5J7P; 25:P8G/3YppJf3jFpccu0nrasTysjFrev/W4j3MYWECLkkmHP4IX1u+BAW2Hh/6P1ZREvkygnxM+KR91RLA1WS8OazdAVFhg5tYs+MiCrYDT8aUt6P0fjjxspQORYI3NK4XWzYBj96GHqZT1wGPS6g+BmUijOWxJHaKWoOJqZV9CqZNow7C5qXp2Kf3PCacfUDB3zhBy4AmPKPtGW87+JQaJ6UzkIG9rItXVN48B6535JIAfoL7Qq6hmW2eB3a0hhqvm6R4tVYabtgH+3d0x4sx08LHekSwbcNXziL3Kz72ekH8+BRH/jNrtC6+kspNC8Dj72NXCS1m84Npz6eekF39rQ==; 31:/fRXar3LOtCv3+bvlVpeO7hq7jHZWpLEgBlJjDkECc3b3Vt2fdChTVHG/ier/LwTTv3UZ5TfmLG6z8Bq7GdG8xRDP5it0K7DfDwI4nFAbzgxFDZJ6E8QoYfW4gyT1x7wg2YFP0me6POD8e70AiC4WiGffCvNwWOxFZAOxpOWQeS91eLD7fKIXvgXgjLSz5Bq471lg3wsS9SlJkPwAkHrk04jSh13j6/vfrZoa1U+t7g= X-MS-TrafficTypeDiagnostic: SN1PR12MB0158: X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 20:LJyoWPCdBiGGYl0w+jtlq3fLyXmiWmCszoX7RQMJG5IVg1aGnkcA7eXIe+2bJWatDri0K54kBxBNphj0/mBo7PBMZyVnx8cWBFw/ZodWBqe7ozqREKxB1veM7D6XRra8ye++BZtrUAj2lqkm2o7mILLLqtx2XQVIi7oP29ivgU3fE3nNDWyo+VBHvEy1nedTOqBmVwiu3davfIaQAEfNUCDgqi20U9ih9YUNANVLfM6GGA3qSJM91SAkfz1fWvF0CaxyHpiLdlr8lBJxQUat8BmoRca3Bc6eus6GRC0RglM3/81lohniwh/Wt8QGWMq1Xkjd5UFJ8u/Q/p2csj/TocX7Quh+IwXmAq9Pdygct29viahnr9FuwrjAibdy+1t+pjTTnBJ7k1TMvRhd4vohGrzJozt7C/yGRJ3wXFtbihjYV4NP81RdU0AZmeFDIzRhkm06gL7k1QCBJsGW0sB1Jl8ThavaNrWsSg49/JGU/yJxIdlnTvbncmAkpupWbcUM; 4:r8XWouKu0vV+DVTqW3l9S8ZsvezInko+mrrWD8+FLSZ41Dp20sSD6ywg2s7iR6hQlcRiyrQlQZ0JVBzUhSKLt3t6FnOaRrakaYjxHWNDs+PLKB4TPanuIxgoctg02y/lGaQOVj1TybShbzhA5iJZ56Rh9PZGfIYG9PhPkw1QA4XxZAx1hbQWmfFsgGjNEZlNR0N/NzgDIiS/fVpoIVhbrQYavnRgHU1i2dAHPoTTk0EKdHTfb+Y+2ys7EJ7mKrAeiFMZqhfkQqbS1v2A7XH+KXUrajxRpNptKoRyGzlYFs1VNPD5lOhoPip7CkhBoidipYiLj6tQZDlqKl7eR3Kizg== X-Exchange-Antispam-Report-Test: UriScan:(9452136761055)(767451399110); X-Microsoft-Antispam-PRVS: <SN1PR12MB015863F9B5864C7660DB5E47E5600@SN1PR12MB0158.namprd12.prod.outlook.com> 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; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtTTjFQUjEyTUIwMTU4OzIzOkFuaW0zUjEzNlVSMTJKTU91OWFhc2kzaW1I?= =?utf-8?B?elloVHU3RzQ3UHVEL2gwcW56dVlQc2ZDamNoVGorS1lJNVhEc3BBOFcycklL?= =?utf-8?B?clBPcVlMWVViUHdEeTVnMjh5ZWF5RWl6NENiRXdQVzhYb01EdEswWkxHVUNx?= =?utf-8?B?RVZtUit2OHc2M0RwWlQxM3prakIxUTJmT2wyUURwRDdJeHFRVzgxckk4b2I4?= =?utf-8?B?TnVZcDdoYTg3TENubjBnZ0JHQlRwdnhpZUNvOWJ3WUk0K3hFNWFmL1Q3S1RT?= =?utf-8?B?M0N5ZDZGY05Gck50TmhJT3ZLaVNiTzh6Q2VoTGNwZTJZek9lQ0Z1Y0ZFbnZn?= =?utf-8?B?Z0hGb3FBeTByNE15dElhMGtpa1RnZGpzM2ZTVEtUQUFGSlZEL1RlOGVkWlNm?= =?utf-8?B?VEJpQ1QwdU9ZRTJPMGRDMUpRcTVSaDBydHM2MXhZdCtwNDcwUk9Namo3MnNl?= =?utf-8?B?ZTV5S09USi9UWjR5dUFBMlNZZnE3c3IrZmlTendreVA2S2xJRHgwZy9MVFBw?= =?utf-8?B?cnFaMm81ZE5uMTVyb1NjVXg3SjBySGJaUzRQNXZuQ1BLMUtndVhHdDZQRStY?= =?utf-8?B?TlpPaVJVRm5CNzNma3dWVkRVL1BTWm1BRlRIR0xwSnBVemhqbWFGQ0cxczRp?= =?utf-8?B?ZkJ0Qjh2MVNnd0NTNFZEcHV4REhCOW5zK256bElHKy9SMEtibGJMY2FWZmhO?= =?utf-8?B?eGxZcDQ2WlVnZXVEUFdzMUVqUU9rRXVkM2VRM3o1TkRqMVozNUxPMGpzN1oy?= =?utf-8?B?MGhuRStwdmRuUUR4YmhhSGVUaHEzS2RrcWY1bGRYd2RNWmNuTURKZFRjUWJj?= =?utf-8?B?dFpaTitCRlRjYkNZRlZ5QUJVZFpxTjdLd3FNV2k0bzN2RlFOeXEwWERGK3Jj?= =?utf-8?B?UERxV1JjUUJqZVluaHErRlBENlV0MDFoK0Q3Z0pDNDJuSkxVQTNkU3FVTE02?= =?utf-8?B?dTNPMSt2Rm1VVCttd0tWYlZpY09RVE1MWFFpTUY2NXV0L2hrc2tJN3FkeitB?= =?utf-8?B?VjZrVi95QytIQ25rOWJTOHZieUxVSnR2dW5tcEIrcmUzUTVYUHRqUEc4UDRj?= =?utf-8?B?bHF5c3hvdnQ0OXBpWmpBKys5NUNQcHVScHhWYzNaUkdmL3lySndKOHZWV2l1?= =?utf-8?B?cjFhakNMditVVjVaZEdQRlIrVWdqSG4xbUg2K3VuRnJ6dk5ybDdtZlVVLzB3?= =?utf-8?B?Wk1SSWYrOFRJeEh6Ny9WVG5rM05LSm9DMXpqQ3YvTTBYeGNFM0UvSE1QRldq?= =?utf-8?B?Q3FGY3J0YTIyMzROZUZ2QkpPYWRWZmxTMHhCSytYK1luZnpqSmMwUk05N2lC?= =?utf-8?B?Nkk0Zk5Lem5jcWhZOEpwdmY0bk9xOEhRTkJEMlRhOEo3YmdSQkJValNSNm9C?= =?utf-8?B?S0laOUxkUUNIRzRJQ0VxdVZJeWNCWUN6V29aNk9sTmZqaC9vYVowcWQ4d2JY?= =?utf-8?B?ZUNCWVBHNHhRRmRJS1Y1Z3BpYnNyeHRUYUM3TXZyelQ5RHlzUzlRdFVQeVBu?= =?utf-8?Q?ilmaO4be00eke0m/52rej7i/s=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 6:fXLD0MONs4jRzpC4eRJOYbEra/3Oaye2r3gDNWvKHJoERXMjKOZ+oVx8FP4vWBaXthN26tQUuI4oDWwJVWSsl1pE+rhsBrEYln5xEV8j3mcH4Iv4majUly6znOn8R2kO8cvJMqSmFotz632xX1tZSaZRtt/9kcAGwiUtFjy0OSztiJeklKErwoEg4Ujzw7o2EFiV5iggxnoLjQX1fzvCWCMJbrVAVeWQQ0IPnhHbEIwUENk6vga01DW5KmBMmOnfS2kBJtouJj0rzhwc5oZkbrYDE85aDUAsfp0iqtqfCRw8T4BbIxTY/zDKsI32CGTMW/iCqlZuymsG0vcOpFEJEg==; 5:ki3OcTDCmBMJ/DkXpZE2jHmNpTBkiTEEL4idd5nJnFm9vrydgsJgoeU0yIlRApC+VbXgeHuBTnLhP9q08M/dzkLScgbvu0GmY1tjmfhDm1VojDVfiwTQUjAWTPjrNcmNrDB6fYB1iMIhh1fx5CDGTg==; 24:RnpaLfsan13Vw9vHmLOFLakQWD3xAlMkmc6hiI7bSUi7LqIhVnrXigB7cYywUp2ajobBIpe4bGPHhxAqEPhB9ccYWeLof4AicuWc/uADYHE=; 7:XCNn5KsWOaGR5ORHiwF5BiLe+XsbvtvsNFhmQr0EPqG6UOkb+S5xdUO7b778+hNtX3nE9pvyYsdx31gOEVNfZFKwEBerlqWqz6PmNnSAVxECH3McmHXzB8CB4Myj4P999UkQAkYmd2Xb19Z2UesGIMxljaXVc9QuVZV18BrSrfb3PjRnhxDy7qi5MqhHK55nILUjgLQsiqd3NtxpkWEOeoJ2LOw3Td7WzZLNqjEGZGk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 20:kOLj0NAdhVTU49m1n1JS5H6gZQ6Bv6/c8gHtlWnQkvwDJf9SVhAMCHaj7g3cKdJUA9FNdH8hHerDtq8XiyiOvFi19se58NpUanstACXkQhberqxu1cQc/d4sUrrQ1U+noqcBXbj7tY9qGSwcpEtMWZ9tTcxA4Ee5VWo19PiLV2NK0ez0FPR34zjxViERQCaYMOfbMzYJ53G4tzOr0Uva/v2yfvSoszhCXl1y2r4yqVtznCLJ/PLuZYOsT9IOueTa X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2017 20:47:15.8413 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0158 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: <kvm.vger.kernel.org> X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP |
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 3195a8cc517d..cad9672fbe8c 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -1076,6 +1076,7 @@ struct kvm_x86_ops { int (*mem_enc_op)(struct kvm *kvm, void __user *argp); int (*mem_enc_register_region)(struct kvm *kvm, struct kvm_enc_region *argp); int (*mem_enc_unregister_region)(struct kvm *kvm, struct kvm_enc_region *argp); + bool (*mem_enc_enabled)(struct kvm_vcpu *vcpu); }; struct kvm_arch_async_pf { diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 0bb62a114a20..208c8abf0bbd 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -6631,6 +6631,11 @@ static int svm_unregister_enc_region(struct kvm *kvm, return 0; } +static bool mem_enc_enabled(struct kvm_vcpu *vcpu) +{ + return to_svm(vcpu)->vmcb->control.nested_ctl & SVM_NESTED_CTL_SEV_ENABLE; +} + static struct kvm_x86_ops svm_x86_ops __ro_after_init = { .cpu_has_kvm_support = has_svm, .disabled_by_bios = is_disabled, @@ -6745,6 +6750,7 @@ static struct kvm_x86_ops svm_x86_ops __ro_after_init = { .mem_enc_op = svm_mem_enc_op, .mem_enc_register_region = svm_register_enc_region, .mem_enc_unregister_region = svm_unregister_enc_region, + .mem_enc_enabled = mem_enc_enabled }; static int __init svm_init(void)
Extend kvm_x86_ops to add mem_enc_enabled() ops. The ops can be used to check if memory encryption is enabled for a given VCPU. Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: "Radim Krčmář" <rkrcmar@redhat.com> Cc: Joerg Roedel <joro@8bytes.org> Cc: Borislav Petkov <bp@suse.de> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: x86@kernel.org Cc: kvm@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Brijesh Singh <brijesh.singh@amd.com> --- arch/x86/include/asm/kvm_host.h | 1 + arch/x86/kvm/svm.c | 6 ++++++ 2 files changed, 7 insertions(+)