Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp891996iog; Wed, 29 Jun 2022 12:20:32 -0700 (PDT) X-Google-Smtp-Source: AGRyM1tZSKvRJJhaAQqFpc9gsHPi/qtOHREoW7n70faMmERfh2CFl6XAai6kL4X7wR+gCzXqIn98 X-Received: by 2002:a63:745b:0:b0:40c:cabe:961b with SMTP id e27-20020a63745b000000b0040ccabe961bmr4328865pgn.117.1656530432198; Wed, 29 Jun 2022 12:20:32 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1656530432; cv=pass; d=google.com; s=arc-20160816; b=Vg7Izbr8YOVFQzMjkbSxCTWRh/WLyLNwMukoDPHUjUmvboq7bRNcebJBMMowCPQRlf /vrmcMksCGOLEepE9qemcvxI2LiY0nZFUgWd3dryCBD6WI8tzhLJcMiHQeOS/GQ43QDt 5ZZLfU6hseykXjBWOZC4s5kdErqX3psMFAZOqiR6iLGxbUd/xg0zfUoQafGMuprfxsju KO2yJsiiG6XLy9Ps7MSLc+sZQ9q+2WfRYPMQWFSKnWUVlQT3gMxhaWOkEu0cIR8i6XoI +/5+vWogwWXmjZAknP3iZmzLM6S2PdOh4whqTVjsPbCLpO469P/n5I+FtNdufxGgWz42 h66Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_contentbits :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_actionid :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_siteid :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_name :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_method :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_setdate :msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_enabled:msip_labels :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=NrtHPIiP5K8+8DXjsz0QoXY2xWEAjeNzB4suWpJ2pTA=; b=LCuxKD49wSKyFoygr3YOzacul9UcTm+OGJYxvtu+la9+r4swDE4mJ4T7IazD24qqW2 KoGXlUD2TTBP9ANUcdZ08Q7LNFvMo4f9khRXkDSm8CG9VIzNnk7hHvBQirTrJHEIbLz7 3BHeev9ApCLbNibBfCOivIXjqr0tLHI4Nb2DLJ6fTt91cdQShKhwXHeOSnH/2mSgP7gd BUaslggM5045IfrSRCMpDkYuVWgC86L9tnKCILUt60DV8iRBc2j4lubX8q8uzXd1ztul Ku0lcUY97PzB92/uh2jWkW0nDyH75vpi7DIQXhI736WNJheCLU1VeFUSn3xoMu9T17Xg O4NA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=KxkAztEN; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nv13-20020a17090b1b4d00b001e4dad046dcsi33480pjb.179.2022.06.29.12.20.06; Wed, 29 Jun 2022 12:20:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=KxkAztEN; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231127AbiF2TPU (ORCPT + 99 others); Wed, 29 Jun 2022 15:15:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57930 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229546AbiF2TPT (ORCPT ); Wed, 29 Jun 2022 15:15:19 -0400 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam07on2078.outbound.protection.outlook.com [40.107.212.78]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 211153DA70; Wed, 29 Jun 2022 12:15:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l2P58wfhXpz0gI8Z8rbvsSxVUbAtS4c8tn1mHEWYoWJNdUhdN+ABy/6+MfYPdW2olZ8ytI4JG0o0cfm0VzHao+UuHbptBaLIJFobw65+3dx3sGNbr7uoa7OabTwZ3KIvPErZnqG/ApAZCJH69dX21u2WAF1lk2ajk/WX4qbaqhU0yhu5DHcuZ+rk74y2y+/k5bEEQGF/o/F12pOFGMarmhUuekCR36NUhPYzfmlKGDTFbn91or2+elaQBv8DCy3M0xWKxIhoMg+Zb4gfQaMBo4RgW9dLbhjz4aXprK99jQRyeiNAlxuYVY/LRvIK/WJ7f6IQ+55nBlJtSUPfJuYHFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=NrtHPIiP5K8+8DXjsz0QoXY2xWEAjeNzB4suWpJ2pTA=; b=Y5OHXVDl6Cu8h8yB1szXPILHDg4jzDzc3MDUt6i7wVVeAdExln52nrcIg9IKduvYeIMenRU8qDGPcSEEvWvayvmlc1t2aPbc1C+NPqGGZHNpUKbZChmSa76djxr1c+JGV8X6xFkiNO8ICgnmX6lchnHP7qmNd8U1zvE817oYn7RNha1W8p5jWdaFTkwtVIoLD98VMhpyShF3wfN71R47LrqCSJnwEtL1iGtYHOFyTz4rnR7f/3QVfKsMo/SAJTECn4bVQWoLCexKYKXeEZ3M2LIhngCwODX6Gc2w4Jj+5Y9NxF7SEs21HZYmWYwhJdzLXq1m3ALGlaTrqwA3U2sUyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NrtHPIiP5K8+8DXjsz0QoXY2xWEAjeNzB4suWpJ2pTA=; b=KxkAztENZX9/qYv+gMqMIv2aLf5MoECuROxMCEiPvRNpshNAB+YxT/TmousaS7GDs+vZ7Ez53ZKh8Er+U0BC2ALjwABImzQh4E8b4jo6zdZ1twtW+v/j54mgu0r+gQ9wgHSdv9QOZA8fSMY6bHogGUBMX3S5EMTUVHk66kWImPA= Received: from SN6PR12MB2767.namprd12.prod.outlook.com (2603:10b6:805:75::23) by CH0PR12MB5201.namprd12.prod.outlook.com (2603:10b6:610:b8::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Wed, 29 Jun 2022 19:15:15 +0000 Received: from SN6PR12MB2767.namprd12.prod.outlook.com ([fe80::8953:6baa:97bb:a15d]) by SN6PR12MB2767.namprd12.prod.outlook.com ([fe80::8953:6baa:97bb:a15d%7]) with mapi id 15.20.5395.014; Wed, 29 Jun 2022 19:15:15 +0000 From: "Kalra, Ashish" To: Peter Gonda CC: the arch/x86 maintainers , LKML , kvm list , "linux-coco@lists.linux.dev" , "linux-mm@kvack.org" , Linux Crypto Mailing List , Thomas Gleixner , Ingo Molnar , Joerg Roedel , "Lendacky, Thomas" , "H. Peter Anvin" , Ard Biesheuvel , Paolo Bonzini , Sean Christopherson , Vitaly Kuznetsov , Jim Mattson , Andy Lutomirski , Dave Hansen , Sergio Lopez , Peter Zijlstra , Srinivas Pandruvada , David Rientjes , Dov Murik , Tobin Feldman-Fitzthum , Borislav Petkov , "Roth, Michael" , Vlastimil Babka , "Kirill A . Shutemov" , Andi Kleen , Tony Luck , Marc Orr , Sathyanarayanan Kuppuswamy , Alper Gun , "Dr. David Alan Gilbert" , "jarkko@kernel.org" Subject: RE: [PATCH Part2 v6 42/49] KVM: SVM: Provide support for SNP_GUEST_REQUEST NAE event Thread-Topic: [PATCH Part2 v6 42/49] KVM: SVM: Provide support for SNP_GUEST_REQUEST NAE event Thread-Index: AQHYh+cMNQlV87m4pEipOHARRoA6Ra1jjyQQgAM2zNA= Date: Wed, 29 Jun 2022 19:15:15 +0000 Message-ID: References: <5d05799fc61994684aa2b2ddb8c5b326a3279e25.1655761627.git.ashish.kalra@amd.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_Enabled=true; MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_SetDate=2022-06-27T18:40:10Z; MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_Method=Privileged; MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_Name=Public-AIP 2.0; MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_ActionId=5035ad0e-77e3-489b-959f-0789d7268b6d; MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_ContentBits=1 msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_enabled: true msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_setdate: 2022-06-29T19:15:13Z msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_method: Privileged msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_name: Public-AIP 2.0 msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_siteid: 3dd8961f-e488-4e60-8e11-a82d994e183d msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_actionid: 48557c5b-8945-4454-97cd-5f45a8223356 msip_label_d4243a53-6221-4f75-8154-e4b33a5707a1_contentbits: 0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 31ed9f2d-ba76-471c-2e82-08da5a03b2d5 x-ms-traffictypediagnostic: CH0PR12MB5201:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 54ipy6EeA6FygUj5l4+9g0hI8Uu95lgE1yYqGkp5b/qCACqeSWXLTdfzKX4i3zCshTzsmErxR3ZHy8C+9XpalTEpIqg8uKOu/YIzqI0nQxc3Mp1bjbM1EeXMt6brKZL2g1VaMQS+fNfM02vbp+obd3VNXfCqFgJPBsasAOVm4jf3ILbwJOGaPXwbVzymvOt7AwGgWYcPG+Sj6jFMD3kg9BMTFr1a4XOsRe5f7MdQRxBxCXmXDyLKfRJpxyLql1lKqtKOzzEljNPulaBzt/OwcX/sCcLVmGTWlSpwIifhY+7gSC0ZOn7EI3Sq1g4xNZAX3942FFcS+qwip+UKywg7invn9KYIem5duZKRhobUh29s3KcY8FbZQ2otZe+WU90ChC+MO6d1e/ucKpAGsz4p89pGAgq0XxHeWm4uhEEj3Jy9vTV0lGtJ4sAgxJq3YNM1EvbYRQWCOfYGK3ePJgZJdu2Vq7GKHa5LsgpNsexazwB4yhfRXXZakVfamlznbuHYYSIzf6AwrUjxQFIU43Ir+Ro90oIsWgY3VBX0SWFjHQhmXM0O+/1agQ3HJvTlBu6DO1IPVOlnmMexoVbDlwE6fACti7LcNBi65XumyYvgBFzvkxZAWhjwlZ/Nqw+Lb7+yvUW2ojzshPUYTxmxWgieJM+ietRQrYrzkUGTj+a2Dk0PAMKdQSYl4JFH7aBgOxySvHJfkjlDIZMUyY2iM9KkNdk7g7+d15G1oCHdSvR3Gn3+92fgzvIJQwXtG2XpfoACIHmi5RxInAPbuAfZSKyzWJ9Uc8CtwPmbuycDBNE867o= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2767.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(346002)(376002)(39860400002)(136003)(396003)(366004)(64756008)(38100700002)(52536014)(8676002)(33656002)(2906002)(66476007)(76116006)(54906003)(7416002)(4326008)(5660300002)(8936002)(7406005)(66556008)(7696005)(66946007)(9686003)(26005)(6506007)(83380400001)(38070700005)(316002)(122000001)(478600001)(6916009)(186003)(66446008)(71200400001)(41300700001)(55016003)(86362001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cUxsODBTSWEzYXptKzExNVYvRjlKRmY3clJkVGc0dDg3blpadERFVkZwTy9v?= =?utf-8?B?RWRvbVhHUW5aR1UxZGFkWG90QW1jNk1zcXZRb0ZTUG5XbjlsUStKbTJldHFo?= =?utf-8?B?bW41ZDNacG9JUHRLL1dLdE5ZV2ZScXcya2hqT29zS05GMjd6aktWZ1BFa2pr?= =?utf-8?B?K3VCcUtFZi9yeEhuZXZUTDVHMDRPOWFDdkJnMnVqWkN6UjRMNnVFYk9UKzUy?= =?utf-8?B?UFI0ZU9yOWw5Uk5UUUh2bmEyT2U1YWlxeHZRdzNEZ1JJamNqUHZmeFVtMTlN?= =?utf-8?B?TEV1MWg0Mzh0OTR6TkV2cTZwZ2p6SFhxQnFjQmNHbi9wRFNBQnZOOFJLWitv?= =?utf-8?B?N3pjdUxGRXVYeCtmcnRpdnlMM3JmSDJrUnhXS0R3bVorUFUveUkycldIVlhq?= =?utf-8?B?SzR0NlR2RXB2MUFJeHlJTFFMM3JpUDVpLzZoWnNrUzRpL0wvS01nYStablVK?= =?utf-8?B?T1AxVHJLSGV3UEVIYXVxNkJiQkFFdkRyZHJTWTdLMEZKSFVMQVhXY1N2dG9x?= =?utf-8?B?OUk0c0hPMEN4Nmo0KzRSclhvaGpWd0s5bGRydkVEZEI0SmllMEZPbnRBMHdF?= =?utf-8?B?cm1TRUVUSFcrZzZLYWd2QXdwNXhPQlkxU0p1V2hNMkppVDMyV095K0F3T3k5?= =?utf-8?B?YlVLL3RNUDFXRVBXUndXdm5hcUpsMXVMcDlSbitrbGFnSUNuWEN6Z3JCUFc1?= =?utf-8?B?Z0ZzTUlrZ3NrL2hzWnlrWHY0YnZsUUNjc2JETWg4c3JwaTdSUlFPamZPN29I?= =?utf-8?B?OVUvZGhHc1dJM3A2Y1Bnak9IMHQwV0VRN1VMYjNiWDEyeHpLbnpydS9hVEha?= =?utf-8?B?SnlZaU5nRjBHUE9qSUxlM1RpWTR0em10Y1dxVnI5L3V3aUFheXU5QnRML0t3?= =?utf-8?B?bjZRblVKWGJWSGJPNWgyU3ZVYkpCb1BhaFRRbnFVcDdqNjN1SnBKcXlXRkRa?= =?utf-8?B?c0F4SmlQc01XaCtkak9zYytRT2s0ODN2M05sdnBHYkFEVUF2N1FhN1ZmTm0x?= =?utf-8?B?eGhiVWlmUEJXUyt0NjdGN3J4a3hUZ2c1Y0NkLzFZZWl1UjV1ck44NGZHVFFX?= =?utf-8?B?ZnZYSmRFRSs3Q2pxNFFqYzkrWmthSWpzZUdvZzhTc3J2cCtxcnI2SERFVWJ4?= =?utf-8?B?dnZXL3V0ZzFRaldrWjdkYTI0dHdkMDBRZUxSZjRSRWxYOHdjVEpYZEEwb2k0?= =?utf-8?B?SjNpNkovc2tjTktYaldCS3ZrOHFSMkJRSUhDWGRkdzEvT0libDN2Wjg4M1Bh?= =?utf-8?B?RFpOSTc3UlFaVVduRnRTMExjU2JXNUdlb2FINkZIM0RIbEJ5RlZFcjZOQ0hT?= =?utf-8?B?WnBESlNZWlBteEFObmdBaGpUWURkaTEybkVSWUxEV2lRT3NxTGYwRWU2cHJu?= =?utf-8?B?ejRDNUpqRnFSQ2Y1VVdLK3BBREVUUVhZN3lWMlFDMzhoN3pYRkxjUHZDTURj?= =?utf-8?B?ZDJCcmRHa0Vtak82NnROUmlkWVVpT1JBcEhIYmdkbkU4aXA4dHE5OUNxRlQw?= =?utf-8?B?a3kyWjBTZC9TS2swWG9adnVFZE5kRjZsdTVlbkpjUjBDckpsOHNEcVprWFd0?= =?utf-8?B?dDlPK1dadjFFcDlaSFN0dWVRVDdnTEFqb1NheG1wcHdzaWptS0I1Y3BJUU1s?= =?utf-8?B?ckhlQ21iVVhHSVRRSlhBZENrQXhTZWVnZGZEZGV5TzdMWHNIVC94dmlXRDVJ?= =?utf-8?B?aWk5N1BoT3FnUkF5QzVkQ2ttTnVrUjBWMlRFaTJTOWRJUkpHTG1sUmJpdGNT?= =?utf-8?B?cm16aEZsVmJ3aHZ3WDB1R3VhZFdxUVVZa2R1VVRrd0NlYnVudlBxUmwwTE1T?= =?utf-8?B?ZEVnTi80c1FSYStYbDRrc2FKSUlraDdPUEQ4K20xTHhPWDBBVmFOWWJHWDlU?= =?utf-8?B?Z1BoNmVQYVRJMDFteDFGbHkxZkg3NDBjczc4T0VUUEFoZ2Q3K014NWpPdkRi?= =?utf-8?B?TE9qTXJhUXRQRkNvMmpuREtxRFlXaFFRclp3dWgxbTFWSUdkUENhRldoNkx1?= =?utf-8?B?QWdySW5qelZOTHdlVTZYTnIrRXFOUi9NUFpOMy81bjNnSlVJSnI2aGpjQmR4?= =?utf-8?B?T0tnLzNXek9GOEcvcVVPSms4SFA1MTZKckZGdGVCNHplazUrRDB2MmE0VzVT?= =?utf-8?Q?O49A=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2767.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 31ed9f2d-ba76-471c-2e82-08da5a03b2d5 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jun 2022 19:15:15.7907 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RoJ/Oal2NGkvgWavVxyjk4BNexjo34skjX9/AsckOa0qpdSgI5jNewPN1uKkatxboPwKM9lTFfY4kXpvxIdSoA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5201 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org W1B1YmxpY10NCg0KDQo+PiArc3RhdGljIHZvaWQgc25wX2hhbmRsZV9leHRfZ3Vlc3RfcmVxdWVz dChzdHJ1Y3QgdmNwdV9zdm0gKnN2bSwgZ3BhX3QgDQo+PiArcmVxX2dwYSwgZ3BhX3QgcmVzcF9n cGEpIHsNCj4+ICsgICAgICAgc3RydWN0IHNldl9kYXRhX3NucF9ndWVzdF9yZXF1ZXN0IHJlcSA9 IHswfTsNCj4+ICsgICAgICAgc3RydWN0IGt2bV92Y3B1ICp2Y3B1ID0gJnN2bS0+dmNwdTsNCj4+ ICsgICAgICAgc3RydWN0IGt2bSAqa3ZtID0gdmNwdS0+a3ZtOw0KPj4gKyAgICAgICB1bnNpZ25l ZCBsb25nIGRhdGFfbnBhZ2VzOw0KPj4gKyAgICAgICBzdHJ1Y3Qga3ZtX3Nldl9pbmZvICpzZXY7 DQo+PiArICAgICAgIHVuc2lnbmVkIGxvbmcgcmMsIGVycjsNCj4+ICsgICAgICAgdTY0IGRhdGFf Z3BhOw0KPj4gKw0KPj4gKyAgICAgICBpZiAoIXNldl9zbnBfZ3Vlc3QodmNwdS0+a3ZtKSkgew0K Pj4gKyAgICAgICAgICAgICAgIHJjID0gU0VWX1JFVF9JTlZBTElEX0dVRVNUOw0KPj4gKyAgICAg ICAgICAgICAgIGdvdG8gZV9mYWlsOw0KPj4gKyAgICAgICB9DQo+PiArDQo+PiArICAgICAgIHNl diA9ICZ0b19rdm1fc3ZtKGt2bSktPnNldl9pbmZvOw0KPj4gKw0KPj4gKyAgICAgICBkYXRhX2dw YSA9IHZjcHUtPmFyY2gucmVnc1tWQ1BVX1JFR1NfUkFYXTsNCj4+ICsgICAgICAgZGF0YV9ucGFn ZXMgPSB2Y3B1LT5hcmNoLnJlZ3NbVkNQVV9SRUdTX1JCWF07DQo+PiArDQo+PiArICAgICAgIGlm ICghSVNfQUxJR05FRChkYXRhX2dwYSwgUEFHRV9TSVpFKSkgew0KPj4gKyAgICAgICAgICAgICAg IHJjID0gU0VWX1JFVF9JTlZBTElEX0FERFJFU1M7DQo+PiArICAgICAgICAgICAgICAgZ290byBl X2ZhaWw7DQo+PiArICAgICAgIH0NCj4+ICsNCj4+ICsgICAgICAgLyogVmVyaWZ5IHRoYXQgcmVx dWVzdGVkIGJsb2Igd2lsbCBmaXQgaW4gY2VydGlmaWNhdGUgYnVmZmVyICovDQo+PiArICAgICAg IGlmICgoZGF0YV9ucGFnZXMgPDwgUEFHRV9TSElGVCkgPiBTRVZfRldfQkxPQl9NQVhfU0laRSkg ew0KPj4gKyAgICAgICAgICAgICAgIHJjID0gU0VWX1JFVF9JTlZBTElEX1BBUkFNOw0KPj4gKyAg ICAgICAgICAgICAgIGdvdG8gZV9mYWlsOw0KPj4gKyAgICAgICB9DQo+PiArDQo+PiArICAgICAg IG11dGV4X2xvY2soJnNldi0+Z3Vlc3RfcmVxX2xvY2spOw0KPj4gKw0KPj4gKyAgICAgICByYyA9 IHNucF9zZXR1cF9ndWVzdF9idWYoc3ZtLCAmcmVxLCByZXFfZ3BhLCByZXNwX2dwYSk7DQo+PiAr ICAgICAgIGlmIChyYykNCj4+ICsgICAgICAgICAgICAgICBnb3RvIHVubG9jazsNCj4+ICsNCj4+ ICsgICAgICAgcmMgPSBzbnBfZ3Vlc3RfZXh0X2d1ZXN0X3JlcXVlc3QoJnJlcSwgKHVuc2lnbmVk IGxvbmcpc2V2LT5zbnBfY2VydHNfZGF0YSwNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJmRhdGFfbnBhZ2VzLCAmZXJyKTsNCj4+ICsgICAgICAgaWYgKHJjKSB7 DQo+PiArICAgICAgICAgICAgICAgLyoNCj4+ICsgICAgICAgICAgICAgICAgKiBJZiBidWZmZXIg bGVuZ3RoIGlzIHNtYWxsIHRoZW4gcmV0dXJuIHRoZSBleHBlY3RlZA0KPj4gKyAgICAgICAgICAg ICAgICAqIGxlbmd0aCBpbiByYnguDQo+PiArICAgICAgICAgICAgICAgICovDQo+PiArICAgICAg ICAgICAgICAgaWYgKGVyciA9PSBTTlBfR1VFU1RfUkVRX0lOVkFMSURfTEVOKQ0KPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgdmNwdS0+YXJjaC5yZWdzW1ZDUFVfUkVHU19SQlhdID0gZGF0YV9u cGFnZXM7DQo+PiArDQo+PiArICAgICAgICAgICAgICAgLyogcGFzcyB0aGUgZmlybXdhcmUgZXJy b3IgY29kZSAqLw0KPj4gKyAgICAgICAgICAgICAgIHJjID0gZXJyOw0KPj4gKyAgICAgICAgICAg ICAgIGdvdG8gY2xlYW51cDsNCj4+ICsgICAgICAgfQ0KPj4gKw0KPj4gKyAgICAgICAvKiBDb3B5 IHRoZSBjZXJ0aWZpY2F0ZSBibG9iIGluIHRoZSBndWVzdCBtZW1vcnkgKi8NCj4+ICsgICAgICAg aWYgKGRhdGFfbnBhZ2VzICYmDQo+PiArICAgICAgICAgICBrdm1fd3JpdGVfZ3Vlc3Qoa3ZtLCBk YXRhX2dwYSwgc2V2LT5zbnBfY2VydHNfZGF0YSwgZGF0YV9ucGFnZXMgPDwgUEFHRV9TSElGVCkp DQo+PiArICAgICAgICAgICAgICAgcmMgPSBTRVZfUkVUX0lOVkFMSURfQUREUkVTUzsNCg0KPj5T aW5jZSBhdCB0aGlzIHBvaW50IHRoZSBQU1AgRlcgaGFzIGNvcnJlY3RseSBleGVjdXRlZCB0aGUg Y29tbWFuZCBhbmQgaW5jcmVtZW50ZWQgdGhlIFZNUENLIHNlcXVlbmNlIG51bWJlciBJIHRoaW5r IHdlIG5lZWQgYW5vdGhlciBlcnJvciBzaWduYWwgaGVyZSBzaW5jZSB0aGlzIHdpbGwgdGVsbCB0 aGUgZ3Vlc3QgdGhlIFBTUCBoYWQgYW4gZXJyb3Igc28gaXQgd2lsbCBub3Qga25vdyBpZiB0aGUg Vk1QQ0sgc2VxdWVuY2UgPm51bWJlciBzaG91bGQgYmUgaW5jcmVtZW50ZWQuDQoNCj5TaW1pbGFy bHkgYXMgYWJvdmUsIGFzIHRoaXMgaXMgYW4gZXJyb3IgcGF0aCwgc28gd2hhdCdzIHRoZSBndWFy YW50ZWUgdGhhdCB0aGUgbmV4dCBndWVzdCBtZXNzYWdlIHJlcXVlc3Qgd2lsbCBzdWNjZWVkIGNv bXBsZXRlbHksICBpc27igJl0IGl0IGJldHRlciB0byBsZXQgdGhlIA0KPkZXIHJlamVjdCBhbnkg c3Vic2VxdWVudCBndWVzdCBtZXNzYWdlcyBvbmNlIGl0IGhhcyBkZXRlY3RlZCB0aGF0IHRoZSBz ZXF1ZW5jZSBudW1iZXJzIGFyZSBvdXQgb2Ygc3luYyA/DQoNCkFsdGVybmF0ZWx5LCB3ZSBwcm9i YWJseSBjYW4gcmV0dXJuIFNFVl9SRVRfSU5WQUxJRF9QQUdFX1NUQVRFL1NFVl9SRVRfSU5WQUxJ RF9QQUdFX09XTkVSIGhlcmUsIGJ1dCB0aGF0IHN0aWxsIGRvZXMgbm90IGluZGljYXRlIHRvIHRo ZSBndWVzdA0KdGhhdCB0aGUgRlcgaGFzIHN1Y2Nlc3NmdWxseSBleGVjdXRlZCB0aGUgY29tbWFu ZCBhbmQgdGhlIGVycm9yIG9jY3VycmVkIGR1cmluZyBjbGVhbnVwL3Jlc3VsdCBwaGFzZSBhbmQg aXQgbmVlZHMgdG8gaW5jcmVtZW50IHRoZSBWTVBDSyBzZXF1ZW5jZSBudW1iZXIuIFRoZXJlIGlz IG5vdGhpbmcgYXMgc3VjaCBkZWZpbmVkIGluIFNOUCBGVyBBUEkgc3BlY3MgdG8gaW5kaWNhdGUg c3VjaCBraW5kIG9mIGZhaWx1cmVzIHRvIGd1ZXN0LiBBcyBJIG1lbnRpb25lZCBlYXJsaWVyLCB0 aGlzIGlzIHByb2JhYmx5IGluZGljYXRpdmUgb2YNCmEgYmlnZ2VyIHN5c3RlbSBmYWlsdXJlIGFu ZCBpdCBpcyBiZXR0ZXIgdG8gbGV0IHRoZSBGVyByZWplY3Qgc3Vic2VxdWVudCBndWVzdCBtZXNz YWdlcy9yZXF1ZXN0cyBvbmNlIGl0IGhhcyBkZXRlY3RlZCB0aGF0IHRoZSBzZXF1ZW5jZSBudW1i ZXJzIGFyZSBvdXQgb2Ygc3luYy4NCg0KVGhhbmtzLA0KQXNoaXNoDQo=