Message ID | 20170919204627.3875-21-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 DA72C6038F for <patchwork-kvm@patchwork.kernel.org>; Tue, 19 Sep 2017 20:52:58 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CDF3228E8E for <patchwork-kvm@patchwork.kernel.org>; Tue, 19 Sep 2017 20:52:58 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C1DD028EDA; Tue, 19 Sep 2017 20:52:58 +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 29B0E28E8E for <patchwork-kvm@patchwork.kernel.org>; Tue, 19 Sep 2017 20:52:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751550AbdISUvV (ORCPT <rfc822;patchwork-kvm@patchwork.kernel.org>); Tue, 19 Sep 2017 16:51:21 -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 S1751883AbdISUrS (ORCPT <rfc822;kvm@vger.kernel.org>); Tue, 19 Sep 2017 16:47:18 -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=RJehHvtObZEOQl8a+7kmXCtQgUhOSQu7z/5SfcXqrwQ=; b=xzdxSjbrtU1CsaQXC+l1kfbTH9insLo1uQS9eyKgaffeksWjqNFFeuhvq24tfQJiCE1wlvQtTjhv8zz3BWk2wrqaeSW4ELTcC+A+BLn+j2dqoJb/TtaYGElCR1euEYbgUhaH++wY2jduHWKijcxDPP05RvfxanzzGQwzezFQ9UU= 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:09 +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 20/29] KVM: svm: Add support for SEV GUEST_STATUS command Date: Tue, 19 Sep 2017 15:46:18 -0500 Message-Id: <20170919204627.3875-21-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: 06b9fb16-f1a7-45e5-c514-08d4ff9f991d 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:FBsayMbywmq2BSXHXwyCJ3J4+aa+ornfYqPe6/ult/ayal2ExFND4j8UkTRpbDNQotgcwyC7RLZ5qAU3MbmZ0XE2gTwpt5vG2RlPf+Hy4ArdnwrRGo+HUrIon6I0gKwN5lu9T8Ibkgg7/RA/L6d/cNnpFscEXMwwBdv0Jbd/z3lzzTqNRLB3UVjyMDENZ54AjkXywqgAsKJl9hKc8eIqmzUrEDHvVYyVH9qPuLG8ojSPzVwgn4MUTDSIVl8+Cm+2; 25:QIylTlbL9kkFrl/ZuuFP8L+o/6jzrvY3aB3BeJztBMgqdoWVsFaY6GwMbTc3Y96JPyS4Fwy9So0MoPIN7oowvTYWYprWoguyIYPsBD60CXKyO/TvRJSl1hbHGJCttIeGX+j31Cb0gd6U47n4eVFUyjdrCg5d+pNxkjVr1ZS4pRmETTyqgYSMM12hW0AdKg1bN+WkwBeVvv7JIHpC+BiE88CnJY6noqnmBnPfoV37t1I9E01AJqZ6n+SeDHxmBWEHkGJFWAcZy4PJ5CC0lN0ppu2Tk/nlPr5jLlFD4YEsk8aiIm+3NqV06Fs3p6J4KCAFqz2j6F1AVlrgZRiSxD8n0w==; 31:SQzQIgHyt+xkPvo8ymU6bWkuKIhMib2rTVvcqcfwc7ThuAo9KPtgfIYQYIQvftMNozsC3PVTZYZ3DNysZoJN9frA9ELxbtmEKkZ4WEL1z+SUaWA8iieTBewhldTIM36m2bomaqVyi268mgCC8vZPi+PRo1kGJB8pGtlhp6KkwN7oicuu2yFIgN+IcOFDIBHkCXjL30YBt0E9djig0CCK2gE/4gUT5D/WA1UuM9OryTY= X-MS-TrafficTypeDiagnostic: SN1PR12MB0158: X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 20:GeNStUjYvY/rF2mtWupChablFW6UVPqk3x4AYQ3/+uDe/vfUn7ih39vWQQyC3yVGEEomW0455OPDmJOE86CZnKeFwqXO4HHEMoByY/I5GMD7gb6Fai1PmMnrkgrlCe7tawGddgfn8DvOpKEncossWmIYpZBZBZa4rCWut/GsWZez6/FfHxqdbmEFyW4PrU1JuAXrXVhxj4BAF4mrdQ2GSk2eQeq4sNYdwhywUTKY/EFSZt4aZieZW4bz5SZ63vse4tbegOgVM3KSaC0DQhVmJ6sJ7JO2YLNU8JsiglNNgps46XoG6p7mltq/K6lN3JSVLOaXlirQpxRI128tfgPOYiGxCovmb2ZbDi0UMsWmoocmt2mzIXh1GPpBLC4Row70OWzs1GHI25gzdT4NGqGkkRbzG5whqGRJPjpj1oYPJtgHkhdVOCV1OHsu0ll4/ngtp3JTHaTiu100ZAxOoVffwFL0XGqlDRgpyBav2Xc5rP39YHTfusTQApQg3QZ14aP0; 4:h1Lm9+62gRtzfpF2x3SO5bxz3AB0PU2kmEUQ2D1Is7l2cBXwttkYnK521NWyTpGur7iSrxiQ63BoZzsgVnfYMLPRaBXIRS3XXzQ/yeW4YTofk/OQnE+dYtaPBgmcwmP0BRE56+t7YgZ4XWFdGZrvl1cxD/zbT3p6PjbYXaPDcE/XiIS+93QhjAURVnCcTFTH2ALS7uhZoezn9LSh44tDFu37IWGIuhbJgF9PW4H8FoXNeEBoSYqjMo0d790F4hbzFAwiyrgjeqvf3EAiCr3rRXz2Nk7IncnCuYr6ZYvcds1bGd34TPJzV0SRUyuPTJmYw8ZdeDNNdjo+vHPJ/anm2A== X-Exchange-Antispam-Report-Test: UriScan:(9452136761055)(767451399110); X-Microsoft-Antispam-PRVS: <SN1PR12MB0158E5EE3556FC90D665CE29E5600@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)(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?MTtTTjFQUjEyTUIwMTU4OzIzOnJCRUlFb0lCOTIrM1ZBdkFUVkFVcEI1SDUz?= =?utf-8?B?K0QwNEc1ZDN5N1NURkMzcnVhMzhSbjdRcVN3Y2tlZ1JUeC9ZRS9wMlRreDFz?= =?utf-8?B?T2tWZ1JpWklXQ1NRZU1iY1RFTThHRVlaSWg3d2d0MXQ4Ynd6VHR4QjdycG1s?= =?utf-8?B?dWtDN1NMcVZPRmUwNGhqOU12VXpMSWpyQ01qQk83UnZCREF6Zm81aDFwM254?= =?utf-8?B?Y0dnSWYwWXVmbXdCTTN2Qkt5Zk1ZeUt3NGlFUWVJUVBNNUNpbWV1N3lFcXJE?= =?utf-8?B?V2h4T3A0NDFZeU5HVzZabnpUZ0VWMk9OYktmV3NDNVdMS3kvbTRqS1hobWhV?= =?utf-8?B?YkhqbGVENnp6d0dUQlQ5aGszc2YrV1dmdXdkaHo1aVlWZU53Y2pqTGplNURW?= =?utf-8?B?M0cwNHlEZnl5TC9ldERGUkoyVlp0QkZiYkgrM28ybVUxSzN1K0orOHQvbDUx?= =?utf-8?B?RjJhYzByNnJjMkM1YkNtMWUrNFlWRXY5WWxQMUNtQ3RZMUFTZWFmdTZVZ1Zy?= =?utf-8?B?MlZTMS9NaXFZTXhzTkMrTE5xYkh0c2xLVk53OG9WdTRxQzQvdDVsVEY3eXl0?= =?utf-8?B?dDBrRmhud3ZFK095Qm9CYjZUZzNwazFvV1YzS3pncU1TczVIZ1VZTWhzZHlx?= =?utf-8?B?c1BiT045V3dDSUM3NGhMUks3YUFYdlVpN05CQW9VUisxNE5KbGlSVHU0eDM1?= =?utf-8?B?cDN5cjdJVnJIRkJlbytraE1BRHVTT1FRZWlvMk1KVy90RnJvUVoxbXY3UWx5?= =?utf-8?B?cGw5T2VicnJ3Zi8zTmRWTTdBSlJZZlllK01ZR1F1MUlhdFlaOVBkcTNZUG9i?= =?utf-8?B?WWdXaVNCTXB3ZS9ObEozQ3ZhSHdVZ2UxUTE5VnJzamhMM2ZFYXBSSkYxOWh1?= =?utf-8?B?QkdzR3VJZy9mYTNkZ3djTUxDYWJSS0NOWjUwS1NQUlhnMzRqdzZ6TU1LaHRL?= =?utf-8?B?SVd3blN5Rk9ZTlBNMnpCOFgxc1Nta2ZOWllTaHhzNExJZGxXbEhkZ1dDTndP?= =?utf-8?B?WVRObXhRVytzK1ZPa0VTd3BGWmRRSUR2a1krSzBVdWh6dnFkU2djeEZ5VlFT?= =?utf-8?B?OEl1dDFZNUhKS3dHM2wwRytieHVJcXY5MXhGZUwwUlkyTkFURHRYUXIvS2RG?= =?utf-8?B?NUREWDYwbTFLTWpERGVETUwwUWEybDFDOHlWRC9PMXMwMGhlcTZRMkptMFRx?= =?utf-8?B?VDBRdmxPK09RRys2V05mWFdTVWloNEgxU3hsd3FCT0Y2OU0ra0VIZlRnYVZK?= =?utf-8?B?RHlxUEl1cElhRkwxRkdMbjJzZlVqM1JmeDZTcVNhVWJqaXU3Y0xkd3RhODFR?= =?utf-8?B?V3RpdWh3KzFUR2R6Z3NsNXYyalZqMm1xbEk1bHRGM0UvSDQwTUNLZkV2eHV0?= =?utf-8?B?anBTQ1h6U291K2QyZ0VsM3ZHYjdUMXJ5WjJKTzgvcExidFFVOWZxRm9FRWZR?= =?utf-8?Q?2KA5fR/v5zcVUGtp1z0tnerPRmm?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 6:mpo1AcZ1Aqs6Mwlt4tZGtEX9qmKZNpHy8yODmmpsZ1Dva/7W+LNtGwsvhlAwz9Y64QTqrl9igdesXeLGGwIpmY+Ht3ZLxLhRSY7P4Z7s5PUO/rzre5uxgI6AZMnu4nBrOEYMdmeZefb7bHHCAMHGxbpklfpcRhBt2cCYf/BH8/hyki9CCOV26CM6ZWz5ryR9YCMzbQkUDoAzxCB/efPhNV4rI8EWd1am8bDUOXDIt719L5PtMXJ8EaXxQ+0AfZRjDgLXwrZ6uhoMZ8RnRSUT5lQAUceZExo+LHMl5mRWywvNhfLveZRiJVDwmEhBwdDPY52y7T4i9umF0Oy6y6cIDg==; 5:gaXzWKyEqo8S4QwXdDUhbbYE0M8wixDvgz3H/+9LbOqVEOfGGxyc4E4Tj9M0wY+u8EZDM4+3Xfe4wPRY4we/e21O+53cSx2gJvJxWMXYxYSDwVSBmwxSeoXnEh0GNXFonyhIW1h5vqGKcyXz3HObWA==; 24:327enDQ5FDe2GxH9sBdzpHDDgUKbkNZ7hesjAzpFOhfE5w3vfEzuIxVQLCeNxI5vFaNdwFzj4han3SiM3biTG3ncwCLnKPuiZJHEx/aOQ3Q=; 7:icS1GlUbBEn5cPfXBbhRW+krZevtBZMMCBmWdw36Z6by4lYBtKcoEo2qKTuA0RkqylziXS+nYhh+0F9R0cpGhA25XfFt76nC4BTzz3Sc667Q/lX/XsSC0gZExz4/Y6XpOXqCrLBr4cn2aBZHCizR3Rh3i3C2UcG9XNqF76V80kK85lyTruErJKczMY+sVhry8705LyrKg8OFj/d/bCGaMCtnwMrLKOc7vGLUiGGoFUw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 20:U47r0OGRmgVmJTPVZLD94nsFCIns6SnIcCv1CNCfnK/byKmKyxP1kbdTuEG923nJG9FFCPV1m9S6UVyw/rTON+GfiroW/LdKCEfuHwuGS2Vu5RB+h4z8Wcp7SXJhLwWKO4nZTHs0AM31Oyn79F21Lokj6sPfsEPDhTqlC5+UYTCCW4mKiK/Dv8DkKaXAR31saWhPhdH7V8bL2ywNoW/cz8ucMvuqclzvmRzxqbhvkIfIhYHeJ/hXJBCfjrZ0yS8T X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2017 20:47:09.0613 (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/kvm/svm.c b/arch/x86/kvm/svm.c index c1688542df72..7a6e82c48142 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -6075,6 +6075,37 @@ static int sev_launch_finish(struct kvm *kvm, struct kvm_sev_cmd *argp) return ret; } +static int sev_guest_status(struct kvm *kvm, struct kvm_sev_cmd *argp) +{ + struct kvm_sev_info *sev = &kvm->arch.sev_info; + struct kvm_sev_guest_status params; + struct sev_data_guest_status *data; + int ret; + + if (!sev_guest(kvm)) + return -ENOTTY; + + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (!data) + return -ENOMEM; + + data->handle = sev->handle; + ret = sev_issue_cmd(kvm, SEV_CMD_GUEST_STATUS, data, &argp->error); + if (ret) + goto e_free; + + params.policy = data->policy; + params.state = data->state; + params.handle = data->handle; + + if (copy_to_user((void __user *)(uintptr_t)argp->data, ¶ms, + sizeof(struct kvm_sev_guest_status))) + ret = -EFAULT; +e_free: + kfree(data); + return ret; +} + static int svm_mem_enc_op(struct kvm *kvm, void __user *argp) { struct kvm_sev_cmd sev_cmd; @@ -6106,6 +6137,10 @@ static int svm_mem_enc_op(struct kvm *kvm, void __user *argp) r = sev_launch_finish(kvm, &sev_cmd); break; } + case KVM_SEV_GUEST_STATUS: { + r = sev_guest_status(kvm, &sev_cmd); + break; + } default: break; }
The command is used for querying the SEV guest status. 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/kvm/svm.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+)