From patchwork Wed Mar 8 20:51:17 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brijesh Singh X-Patchwork-Id: 736724 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3vdmq505Flz9sCX for ; Thu, 9 Mar 2017 08:28:33 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amdcloud.onmicrosoft.com header.i=@amdcloud.onmicrosoft.com header.b="XzHADA2M"; dkim-atps=neutral Received: from localhost ([::1]:58525 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1clj8I-0007T8-R6 for incoming@patchwork.ozlabs.org; Wed, 08 Mar 2017 16:28:30 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51888) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1clj5B-0005Pq-9P for qemu-devel@nongnu.org; Wed, 08 Mar 2017 16:25:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1clj58-0005Li-33 for qemu-devel@nongnu.org; Wed, 08 Mar 2017 16:25:17 -0500 Received: from mail-co1nam03on0070.outbound.protection.outlook.com ([104.47.40.70]:42411 helo=NAM03-CO1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1clj57-0005LV-OA for qemu-devel@nongnu.org; Wed, 08 Mar 2017 16:25:14 -0500 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=GkL31UlmZastFm5Gd+SxLbF2hGJ0mzJaLsk8LPtG+z4=; b=XzHADA2M+pdhmzfwfsGZD+KzmnIpinNeOHQKfYHDQsZWU4Esc9wwBG2kuiKxza6vSHELUu3psrlH8U3Nl3g3vyMgIUGhYrgFRqlG7dOkYnkt9auR17SVw1R+OZaVx7JXcd95X4O/rilLS35Fi0W3a8+Ba+78531W0+/Tw9nxk74= Authentication-Results: amd.com; dkim=none (message not signed) header.d=none;amd.com; dmarc=none action=none header.from=amd.com; Received: from [127.0.1.1] (165.204.77.1) by CY4PR12MB1608.namprd12.prod.outlook.com (10.172.72.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.12; Wed, 8 Mar 2017 20:51:21 +0000 From: Brijesh Singh To: , , , , , , , , Date: Wed, 8 Mar 2017 15:51:17 -0500 Message-ID: <148900627753.27090.16222970359757079799.stgit@brijesh-build-machine> In-Reply-To: <148900626714.27090.1616990932333159904.stgit@brijesh-build-machine> References: <148900626714.27090.1616990932333159904.stgit@brijesh-build-machine> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: MWHPR21CA0003.namprd21.prod.outlook.com (10.173.47.13) To CY4PR12MB1608.namprd12.prod.outlook.com (10.172.72.17) X-MS-Office365-Filtering-Correlation-Id: e7033059-2c76-46dc-3441-08d46664e13a X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081); SRVR:CY4PR12MB1608; X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1608; 3:WmM2dnrOUYKpDzoWc9fknHhPvJ8HhnDG0XO6oRHPZnGRUkRZRagP7L2JiEKpuGVWn9gmgiIKo2aKvpzRPMWerJMavbATiryDRbu9FOioxd3CjtVCgf2NShbzFb8G6bolhuP0WTDmQdaBI7plDEr10LoGVzmLBwbK48+53bypRMIkv5pAOhU61MXSKMRpIJXtdvDwES5j/W/uSwseCKMcAx0WKWtLOinm4wRDWy2xQqZKzz1k0aDllyYLsALVwgEr1YP1l9nyY0Xjsgq29kz47d3xvjhh6POOZLYCIHYqgpA=; 25:HmuP5SUEpCu0+rJ/n4lqZiPyokLcUHIPztiOMA9XvLzKB81Bb8I7sMhoPXroXHgJ5KGRLTsF97yRl1ik92fXOnx+ElriSCdX2jOC5inYNNekXUG9QWaOrjDhxmaTjmqDN1LiP/s+ptj/24OVv2vXfSMAWjuq5uzhTXKdRaxr3tUL5PEOLJ4RW3yLeEKmVlTG8xxz9T5WIH9TIiPoHgMlCpQSe1Ddeti7dhIN2YRdbqx2QbfFHgnY1wnYdFI3q+SoariRFVWAmw1anKtIj/7mHEJmhAauBFXbR2+wbcSW1U97lYnSVQrfE8VPfdNgOU0NshHJQMgLqR9MNYQGOWrR7YVkAjzlWfVFlhJyLTvZ2bwXOlQ6yRqg6lFSH9yDJkwLmas36o6YtrxfJD5gel1WCH13UAsIEV6zEyVJA4X+dJui52ejObJKfhX0V/KFdTHhVC2Pcm1wCA5A2Xmb7aB5fw== X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1608; 31:kK7Loagoajvjwrb6DeBmGjiWY9uAKaiyYq7S3jFTdgXL5uAYxrkolu9rd/WTnmlLqsvXEYfmgqDJaKnT5ief1YTHvqeS11idDz9GMaQ53rbyFJv82gRdm6YGY5KVmdvGKUI0Fi60mub3g2PSlXhyrfrU8m1cidwmli87QpJtYwum/l7a0KXBHRxAXW3KtGhuxq5iZXXKrpkcko0pXKX3R5EzevNKT9Wnxz7gkbFjKLnu2HDiyL5lPLLP92uY7CaS; 20:/LEuI6oIOYvMf3CthEp4/llaqxdFuKEvZuDywlKCdcyHUbrr3ZgcdfpSI+Vu017UdwvAHzEF+kYqW/dd+16zO+HM0y+fQsoHxyBGwWMm4c8x6QB1rN8GPlF43cxdC2/FeHZeixdsT4myt4CGPxs6tKHNGeWSgVrABnmCXhZmJZ3D7hs2XRuYB5M2JyRuQNTDWXiPMTHtXl+/44RZlnmXkkt7jjan0QBdSUGXxJk5d1ooEKjMOdCJPkwhgBkJfwS6/qo0w+fJL5brDWJL75UzzF8Pau964KbU4dkz4dHT52dN6eT+PNcvgaddY66qGfgFTfITaEbgDFDyUFUCerE0NaamXu1hEbxUHlZ18cNZPexDN1XRyxI6lA4YTFPqUhbJZyPxvWYgvuIVKgHiBnkt2Y9nRF5iqvKt7/iA9GxvwWhpa0rPP/W979PKo5p9CjNDB6rrVmgm96BfD6huxmSiYE2APZSom/xZYWVGzIfKNxc14S6dcxnZzGGsongKcszV X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123560025)(20161123558025)(20161123555025)(20161123564025)(6072148); SRVR:CY4PR12MB1608; BCL:0; PCL:0; RULEID:; SRVR:CY4PR12MB1608; X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1608; 4:CU6ZYuG2dd7YjQjnpTNrtpmysKs3F8wqYN2tIZN/x0IoVopwVA0EN4EhuQmPz/ZDW4HPwdADWNbjocnbKCgCYENl45RvuQOtHdjbKi05Pvo+eekA+B5l86ULg1D3dEvotvBLibEVIyhUtZGK/Jh9o/Frna74MBhI79uJmLdexMSBfKY9uo19g+6+r30UjRKN441pdzmOuvwZQL468jUQ5a/nktYgU04r/X5yA8kxy/VapyqnjViP/zOg7G/HahMcRgVPzZXEu+oYC+VoNJ68HWWCm1nTB7NM24Q/0aPZzdiyaFR3Gyc1ISwmLbLGmyDMVQodHeP1FkYvoFsUW9kMzljkJJxWM8lOJBzViYbV3sTbXoAdeMmxARPGtVR5vA9chL7LsUS9i+S/RRVQqZgHC1TnfqN5CBFg5YZnA5mKYNHN5Df4PA7oKFagevXkoLPAI+5lmqTMryQ3OmH54lpdpnVKjTmH7d0rdZsSzPpgruHg7b0J8o6QQPdos0ry+HGeXAyM3WPWKWz0tE47qCummrrDhxinx7B7qwi4O/1JkcqOHa6hMm3XO0nvuGX9w+6eYahpzHhBTgiBmmJKtO6dBH8WkokK9d9RY5Dwpzd5UiRfSxmnQ2P8GFPGIkuIGIjaDM5Syj1dYnzGw5WMkjRMHUOXtIK08aMY7Po6OdycqlI= X-Forefront-PRVS: 02408926C4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6049001)(6009001)(39410400002)(39860400002)(39450400003)(39840400002)(39850400002)(209900001)(966004)(8676002)(3846002)(230700001)(6306002)(53936002)(77096006)(6486002)(9686003)(7736002)(81166006)(54906002)(90366009)(25786008)(305945005)(86362001)(103116003)(5660300001)(2201001)(6116002)(7110500001)(33646002)(189998001)(10710500007)(47776003)(83506001)(2906002)(66066001)(2950100002)(33716001)(23676002)(6666003)(54356999)(76176999)(50986999)(38730400002)(2420400007)(53376002)(42186005)(15650500001)(4326008)(50466002)(217873001)(6606295002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR12MB1608; H:[127.0.1.1]; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjEyTUIxNjA4OzIzOnJ5N3htSlMxNjlDZEVURjJqMnZqVldzbjlk?= =?utf-8?B?M25EcXFEQkZBb3N2cDVSL3ZKdmZNVW1NSWc3MDZLTnZWMFU2RkxkZHhZMERF?= =?utf-8?B?Wk9EeFR3ZHJVQ1J2RGVuTGlxemVOYVRRZmJaUWJSSTA2NDhMbnF3VVgyVWlH?= =?utf-8?B?ZlJ6ZCtqWnhCaGNQNFhpaklleFpsTlNFeWhpSitzSUs1Z1dBQ21WSFp5aG02?= =?utf-8?B?ZHA4d3VieEhPYzJBOHh4aDYvTGFLNUxXZXZYOU51Q2FqUFZUd1FxcFpTM0Ns?= =?utf-8?B?VHFTUUlUZlhsekNrZHpKRy9LcUhNSDRNbllmR3NmQ0JuWEVJYko5dUtLTXZH?= =?utf-8?B?UW9TWVZZSkJhMFI4b1BDTUpvT2pxdmF1UGtmSUtrclVLTm54YW1VOUV3WXAz?= =?utf-8?B?TDdFN2RtWnlEWGZKWW5qblJnT1BOQUJXN1pseHU0cXhzNGVLNzBWUFdEME5q?= =?utf-8?B?YjBSbGdjY3VpVnpieWJNRDlzdlhIdk9hSGNUbVZpWmNEcThUenRWcE1qNFFx?= =?utf-8?B?MHY0dm1DUDV6eXEvcUpubEcwNDQwdmxpYWw3NnZrS3hDMnM2NlBMajUwSG5p?= =?utf-8?B?dTFWc2IwTUZBUkIwRisrbU43d1NVZHRjMnAxSGdUcTZZOGg0OUxIbWZnZ2FD?= =?utf-8?B?TTRuS3gwdVRwL0RwK3BZMUIzOXBpNzQ1cHRRdjRSUnVZVzdraWlUQWVNWXJz?= =?utf-8?B?OFpBb1p3bnBMQTFpck1wam5ySlJhNjFWOEVwbThqR1hUanBlVFBmekJBL3RX?= =?utf-8?B?OGZFT05sQjlhTDlHSHQ1UG5aMjllNEcrcDIzSzlGWkJhdjlkbEEzdmFxcWJO?= =?utf-8?B?eDAwQzB1a3lxcFFOSFd3RldKVytZWHpnZmtPamdxc0tyL0tuVFhXaExwZG9R?= =?utf-8?B?aXBpR2pCUUwrTmVOOTZxdEN3aDNUZmE1cEJTT29mUVJnVUNNT2tHMW1xNWVO?= =?utf-8?B?NTdMNUpuYkNlL3RPRGx1d2pOMGVLVFFzejFDVHp4VDJLWitYQzBrbUIrNERP?= =?utf-8?B?UnlyejZsTWFvMHNEdzN0NlZIWHlMMC9rUktSeFlYM2dSOU9vcHhzNEMzd1FB?= =?utf-8?B?UTlBM21KYzIrOCtPQzRQYzJsWjRFUG5idll5ZmEySlhXOHZKTStqVWhvYjdu?= =?utf-8?B?UU1XUHFQTGNnTDNnczhiMm5PemQ3SjRQanh6SlpPZnVtUTRtN1RTOXNYN0JT?= =?utf-8?B?Q3M1eFBEOHFWSkNGU3dhTUs1S3hrbVJZQWpvRkRnNWYzRmdWdDhPbUVmTUlF?= =?utf-8?B?dGZMZi82eGRsNUFTTTBYdkZDc280c3YzVFM5Q2dUVTgySElQdkRUOEpyeEZD?= =?utf-8?B?UHB0QlF6T3VKOGY2WVJhaGVxZ3ArNUYreDV1SUxLbnhtalcrbmxZUnhlWGN5?= =?utf-8?B?MitmUkJLU0JYT1FXeUtONC9CckZTODFObEhUeWdjU3B3dzNRZVl3aG5PTlNm?= =?utf-8?B?RGFCZTZCVzNkUWYrWi9aRTdDNGQ1UVJYRzVsaUZ3UXhNRmxEcm45VGk2dzdp?= =?utf-8?B?OHk2dGQ3TWpmbFRqcnlGRkRra09mMFd1NzAySkpKR1dEVHhDR09ZeERKaXZx?= =?utf-8?B?MDhRUXRadlA5ZWZtak9YVDlMU0VvT2R3eW1iT0N0N0NNV2xNSWJJc2R3Q0VZ?= =?utf-8?B?RGwvQklSb3dod3N5Wk1pVEFjTTlPaU5jRGZNTjF1MU9MUnlYbm8zWWN1OWVY?= =?utf-8?B?enVhbTlIbjhCVmF4L1pXb0lWL0dCb01NVlZvTWJjd3JQelpabVk3V3lCSFgr?= =?utf-8?Q?sjeVpQHQ/bQR+u0YpqoTeiBLwg07szWE26PGM=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1608; 6:bgfCKZlD8m1fmTdHbYDO6RlP1e3dFDdvY7NPIqdK4bjPfiVOe31mPB/mYxqSlOJl2R3POa3gvPVyiyPX5Pset9cvU4ZZt5boihKa1NCxcwRksH58wBUVedPVXjVjQcTue0K6Z4a5i68D5MVPACcOzlmQ9cVbEGYDxuovSFAx2qKxavbrq4opICFS/tcrroAt7dVay4t+u+8O5nYRfWcLixJLCqUBN8sDp6PYtQB4GOx+szE9fBfCv6m53mNXE5rNdw+1eF3VJnxVeFRyuTXkmEOHKNit6lHvXcSLrdCd3UeCG0VKvvb2LlBu2POTtCO4lT5zfSroAp8wlqh98u6Mq8b1mcezd/hLxdf2j3A8e2uB05+1yWRkfOpFZJuApfuWDXDndC2gQ+YT8T69Tt1RngbRy4ulvCjgqyCautrW5/s=; 5:JIkjlHVjIa/led8i50K1lXH22hOLBCXhA0cKS2sCXnhZcQuZspczX2nstWX0kxgNLU5aAcVGi77ivYxb2DMTcKi8Wgle/ZIlt9oTCiQ04w5FqVf2qkmriQYNNlCy6BzuqV1vmAS3lDbARRANSYMgEnnQvNhA1lTrzkbO/Z9T4/0=; 24:5oBCayhVAgge84oiG8Umo1d/2yBKXCOIMKeiXMwd9DiJgBVTZmnwz1KbgIvATlIHOzbYe7wTcvKkI5SEAVRqPkb5uJBRbhtg9N1jNI1UlJY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1608; 7:suRRIDTBrIEX7A2BsThsi64JlzO9/XBOVSx3jIv7ddsctBI8fNEzj+wS2ldUimgjWiUJFyPW+H84R83BOk23M0rY5gdAErETGhLDaAhPgdXRqn3Lzhcxgm8FGaxUNnfnhVzaHZ284rvMOUqIIyuIsyvX3wytUsEOAWLUcUcqNvjBE+7SIt+oVcOUzJldJ1uisMVLgjOCvEjjPwzTEvgTZ+/s3B8dXQNacP45NwHzhiD9PkiEGknrYF16Sc+mB2iXyo4H3/B+X6cpIaPELgLSPxpFTvC/bJ9BtOqCFVACc9B9w4gAk/bSTNTnyFdfLpshI4NK8x5x2aLoAy2Ty4Q2rw==; 20:wTicmmkN+0UCSZgMjLxgZqN7InvZOxfxDRycYn9CxTqbAHGC5N216XHI40rVEpT4REiYwoP8o8FK+AyAbDnVD1+nNtSYJsRZxkf+iV4YfXtlSr2twYSUbbjNvxyRbqgZB10JurlalWbq3o+tCccrjAnqBv0LtwT9aE398X2pnSMdITHMkXrHHP+bt13p57qgzPfj+bvRDFjlBySlz77FoHD30slO3O5KD5dZghJkbqnlwipxxBcd29Ebtin6W2wE X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Mar 2017 20:51:21.7845 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1608 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.40.70 Subject: [Qemu-devel] [RFC PATCH v4 01/20] kvm: update kvm.h header file X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas.Lendacky@amd.com, brijesh.singh@amd.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Updates kmv.h to include memory encryption ioctls and SEV command structure introduced in KVM RFC [1] [1] http://marc.info/?l=linux-mm&m=148846752931115&w=2 Signed-off-by: Brijesh Singh --- linux-headers/linux/kvm.h | 100 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/linux-headers/linux/kvm.h b/linux-headers/linux/kvm.h index 4e082a8..1050f53 100644 --- a/linux-headers/linux/kvm.h +++ b/linux-headers/linux/kvm.h @@ -1300,6 +1300,106 @@ struct kvm_s390_ucas_mapping { #define KVM_S390_GET_IRQ_STATE _IOW(KVMIO, 0xb6, struct kvm_s390_irq_state) /* Available with KVM_CAP_X86_SMM */ #define KVM_SMI _IO(KVMIO, 0xb7) +/* Memory Encryption Commands */ +#define KVM_MEMORY_ENCRYPT_OP _IOWR(KVMIO, 0xb8, unsigned long) + +/* Secure Encrypted Virtualization mode */ +enum sev_cmd_id { + /* Guest launch commands */ + KVM_SEV_LAUNCH_START = 0, + KVM_SEV_LAUNCH_UPDATE_DATA, + KVM_SEV_LAUNCH_MEASURE, + KVM_SEV_LAUNCH_FINISH, + /* Guest migration commands (outgoing) */ + KVM_SEV_SEND_START, + KVM_SEV_SEND_UPDATE_DATA, + KVM_SEV_SEND_FINISH, + /* Guest migration commands (incoming) */ + KVM_SEV_RECEIVE_START, + KVM_SEV_RECEIVE_UPDATE_DATA, + KVM_SEV_RECEIVE_FINISH, + /* Guest status and debug commands */ + KVM_SEV_GUEST_STATUS, + KVM_SEV_DBG_DECRYPT, + KVM_SEV_DBG_ENCRYPT, + + KVM_SEV_NR_MAX, +}; + +struct kvm_sev_cmd { + __u32 id; + __u64 data; + __u32 error; + __u32 sev_fd; +}; + +struct kvm_sev_launch_start { + __u32 handle; + __u32 policy; + __u64 dh_cert_data; + __u32 dh_cert_length; + __u64 session_data; + __u32 session_length; +}; + +struct kvm_sev_launch_update_data { + __u64 address; + __u32 length; +}; + +struct kvm_sev_launch_measure { + __u64 address; + __u32 length; +}; + +struct kvm_sev_send_start { + __u64 pdh_cert_data; + __u32 pdh_cert_length; + __u64 plat_cert_data; + __u32 plat_cert_length; + __u64 amd_cert_data; + __u32 amd_cert_length; + __u64 session_data; + __u32 session_length; +}; + +struct kvm_sev_send_update_data { + __u64 hdr_data; + __u32 hdr_length; + __u64 guest_address; + __u32 guest_length; + __u64 host_address; + __u32 host_length; +}; + +struct kvm_sev_receive_start { + __u32 handle; + __u64 pdh_cert_data; + __u32 pdh_cert_length; + __u64 session_data; + __u32 session_length; +}; + +struct kvm_sev_receive_update_data { + __u64 hdr_data; + __u32 hdr_length; + __u64 guest_address; + __u32 guest_length; + __u64 host_address; + __u32 host_length; +}; + +struct kvm_sev_guest_status { + __u32 handle; + __u32 policy; + __u32 state; +}; + +struct kvm_sev_dbg { + __u64 src_addr; + __u64 dst_addr; + __u32 length; +}; #define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0) #define KVM_DEV_ASSIGN_PCI_2_3 (1 << 1)