From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1699FA0C43; Tue, 16 Nov 2021 09:07:36 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D17754114E; Tue, 16 Nov 2021 09:07:35 +0100 (CET) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mails.dpdk.org (Postfix) with ESMTP id DAFE44114D for ; Tue, 16 Nov 2021 09:07:33 +0100 (CET) X-IronPort-AV: E=McAfee;i="6200,9189,10169"; a="220853253" X-IronPort-AV: E=Sophos;i="5.87,238,1631602800"; d="scan'208";a="220853253" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Nov 2021 00:07:32 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,238,1631602800"; d="scan'208";a="454166865" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by orsmga003.jf.intel.com with ESMTP; 16 Nov 2021 00:07:32 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 16 Nov 2021 00:07:32 -0800 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 16 Nov 2021 00:07:32 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Tue, 16 Nov 2021 00:07:31 -0800 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.101) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Tue, 16 Nov 2021 00:07:31 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eyjB078EgdU6mmQeQeSbHezoNF7jsP/uedf8Tfnxnqy7DMcyhnyIOpTWswUPYdSdG82H6OlCCHU6zHfwg084ijix8uodo35HjEpcXI3f6OMFdb2/HXtaj9cblWCUgRTcYSTlBTOjndOJ1PtPsP3hHIafLH1h1bl2NopzX62uSUTkoko5/h2kiMoRQTDhKiLJq3drtyRSE05Qd1dRphsWmc74AYFVKZDEQIzgXfkCXvbrDcYPQ1G9GQiiF/nrnnGzo9nFobKREAMN0BHw+y3jDCU/BkQoMEwyZIfr+qs0tzDfG+xGw+/MBCgnWwxY+dzBXf2L4DafWCWDQDwkelFb8w== 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=CCWeS6pmXXXg3lFmsJyyXF/+a37AU4ZCbJaDN02ZOl0=; b=PdRdeCaAPtDBPh7Lz+7obMXFQ3fFPADsSvozdF66dkCfAXDSXDlc4ffUb6ei3t5EczGY3KbAwsSZECKE5Ahyz7MlOQidHh+1r5UNr01SMBo7lJcG8/SR9SKbSkgmOGIroWrcbO0i4KWFn1TplP61abdXbFNEx+kEHrhamAwZHzADDKzjrmYwWjDx1WgyppSWsgJPnsKE6vV/+Gx10uk9iVi/XwgioyeseO7yeN02xxT7UHQrxvc8yfScVgntJDJsib2UOqGFpTFEEDhsrgWFs7Z14aOsb0786N3jsXIWiOKfXY6l67IhpHaJm23XD2Ip3to+tXSQXCB2WdxHa8s+/w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CCWeS6pmXXXg3lFmsJyyXF/+a37AU4ZCbJaDN02ZOl0=; b=LWXnhDf/Zcd1EYjyoxOiC0os/ZsnbpEJ2bfZ6Az5JAvh+t9Vtpkw379pgkeZEtznIpDagBuOnO37hOn5uJDtmdNxfy5E4zxKhWdBul5/XOPRlPwVlENWcGhyFFZenHSksYoM3y1yXdogekEZOLBd6riKKEMBlj2ydZ973FwnCWQ= Received: from SN6PR11MB3504.namprd11.prod.outlook.com (2603:10b6:805:d0::17) by SN6PR11MB2815.namprd11.prod.outlook.com (2603:10b6:805:62::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.25; Tue, 16 Nov 2021 08:07:29 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::94ce:97cd:1b5f:b511]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::94ce:97cd:1b5f:b511%7]) with mapi id 15.20.4690.027; Tue, 16 Nov 2021 08:07:29 +0000 From: "Xia, Chenbo" To: "Xia, Chenbo" , "Wang, YuanX" , "maxime.coquelin@redhat.com" CC: "dev@dpdk.org" , "Hu, Jiayu" , "Ding, Xuan" , "Ma, WenwuX" , "He, Xingguang" , "Yang, YvonneX" Subject: RE: [PATCH] vhost: fix get hpa fail from guest pages Thread-Topic: [PATCH] vhost: fix get hpa fail from guest pages Thread-Index: AQHX1sbneaIDatKKNU+KnXrGpOWL7KwEO/3ggAGWSAA= Date: Tue, 16 Nov 2021 08:07:28 +0000 Message-ID: References: <20211111062725.108297-1-yuanx.wang@intel.com> In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 764ae636-4a0e-4f85-9077-08d9a8d8223c x-ms-traffictypediagnostic: SN6PR11MB2815: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: U0BR2PVLacDyhkNifKyziiqSDczZNX54FFaOD8/suhoyQvAuz1DmEHwvm4UP7HSkvwF4Um/B3qulbbUj7Oy2hHlmOF5VBaAgpDJP3PBJ3cVC3sJ5ZuebrbYGMjr1CgJsI2vf20sELRNVsczg4dznk/zM+VhLayXhL05UMTsF6n/OQCpo4eCKfTdClm9M/uKpoSWu/QA8uD4urWU06Vm5FT9F1XToeg4ehPcDJLSheAeyPsvyeLjeDScX40gocBsvbEfd8zrtn8OSlWiK1eWa2zXKohR1u4ZPSaKBCrjpRY3Q6+R8zA9TrEDTeZKcqZFNswKadMdC0RUPAJ2dZhoGkSoDMCO2YAj/rtJuIxah/j83tYlEGWqmyoAmKai+8ThjLIIOkEgus9e6logHokeDaW4dprJW63rj8piL8skn/+Ww86rOYJly+DMCC2bcYSl5yRjdvEJEGnN/8cl5aNt/GHg2jhM5M3Ocytqw2nF1deVzLZWj84+H471MqWYzPUfz0QNTH2aL1vv79GOpG+TfRlhY0dB/1Fv9DD3+aZ0TlIdhJ1uU9Q5w+AXs4CpZEjJw4H1dxJLLYwBiIhaPWPIzVzq8MxJw0A7nAYUF8g6nldHdz6TUj/lLQyjTjy/SVYwQ9GFtvanRtzuIBTy3YgSzzqLwpG4F/yCjprE0ZW9AH45GxNc2DDgYonRFoh9YFYqLY7CZgkJhX8ZcSuDeh+zhmQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB3504.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(7696005)(5660300002)(110136005)(38070700005)(8676002)(82960400001)(186003)(52536014)(53546011)(6506007)(2906002)(122000001)(86362001)(26005)(83380400001)(508600001)(66446008)(64756008)(66946007)(66476007)(66556008)(9686003)(8936002)(54906003)(4326008)(55016002)(316002)(33656002)(38100700002)(71200400001)(76116006)(107886003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eXJNRzNQQkFoVlVOcTBHeDI2QTFCUmZPbHlKZnV2MHIyWTJoYytxamY2RFIv?= =?utf-8?B?UjFEQnpWN0h0eEk2UWJQQXZpaVNsNUkySlZiNFZvL0pmSkpvcXhubWpkSjVa?= =?utf-8?B?T1RyMkF0VnlHYWpVQ2xvM1hnZnBnSWJNbjBRcXdUcXgrcitOQ3l2cHltaFBG?= =?utf-8?B?WjY5Zm9HbmhkbVJjM2FDTWswd3dQKzNRU1BlTUsrZkZieHBUYldxY0VFRUMw?= =?utf-8?B?MFZsbFVkY1A0NWRyOVhqMGRvOVVNczVWb08rR3A2MzhVKzR3cnBONndWNWJK?= =?utf-8?B?QUNjVGZWN1BQekNKOFBBNjB5SXo3SUttOHZxMXhIa2QxQXZmMm5xYVJ5UzBN?= =?utf-8?B?UGtxUk5ta3BBbHBPTmsyMUhSS0dYcWZKc21QdkxKdXNnV2hESllWNVIzamdE?= =?utf-8?B?T1hWWDQxVjJ6OEJtNEgrZ3VjYXVqSkZEcFlEWGFnTVh1OHh0bVZ0UkcwSmJY?= =?utf-8?B?ckZKb1JFcTlNb2dOa0JUVGxWMG16SHlUaVRtUXlkTVh1QXcrZncvUi91dVhC?= =?utf-8?B?eTZacjlSVTVJZTRvdkllOTczVURDampndDJrTGRnWkVkQjE2cmZPR0wzMkFZ?= =?utf-8?B?ZkdVdlNkMkVpRmVjMnN1SjVtVVIzVWJQOExVblZZR2RYMWJkdW45RG5ETGhm?= =?utf-8?B?Ti9BakFJTkp4UklmQTY3d0FQQVVuWW8rYVFxSDkrRU1leGpUaXFRa052RDUv?= =?utf-8?B?UzM0bjZDcFNVUGdwQ2VEY3Z4bU9LakRsRVN6Z2UvWE5TaEJoYnZ3azVldGFV?= =?utf-8?B?T2Z5VmZ5d1p0cjlTS3owaHlSVVZod0VDRUkrNmNtdWdiU0g2WWVsM1pLYzVF?= =?utf-8?B?SDBPZGZzVnZUY3N0dXZ3c1JXQTdHblRjQ2NaYmxweGM3R3FDMXR2SnFtWGN5?= =?utf-8?B?L1g2TWIxbVdvVFE3ZDI3LzRJYjdqR1duMmRTNzgwLzRONDJlYWFvM0FWZWZW?= =?utf-8?B?b1pDWnlqdC9GQWh2M3NuYlZsTFc2UkpicGZDL1Bud1JEeEdqaWl5S3o2TjE3?= =?utf-8?B?MVZib21PcVJ1QkFmRjdKbmJlcVZJWTJ5bitBSkRseW1DSFQveWYrVHJNS2Fs?= =?utf-8?B?dnlsb29tRWFlVkdLcGxYTVY2VFA4a1dBaHVQdklIQytEdGtWLzJPRWlXZnh2?= =?utf-8?B?YXJaTUJhbmVJTDJkWjdyMGlHQjdjeXAzUk5BS2FFeHVkMnMyak9Jd1VuVXYr?= =?utf-8?B?Ti9nb2FidkM3a0FFY0FGdDN2ZU0zMzlBbGpkZ0dvMThxdU1qbzV1azZ6R05M?= =?utf-8?B?TXpleENLSFkrektYUWpPQlVrcWYvaWdxQUpiTC9ud2c2QzQzNWFUR3dzM3E5?= =?utf-8?B?ZFo1UXk3amxTbG1kNnpwV3BJQTNMVUwzWkQ5MkpEblE5MzBFbGxVbmxsckVh?= =?utf-8?B?dnRpVkF5OWZJZ0VJZmIvR2tUcS9iWGhCc1BGdkJlMVo4ZHJrbUExRlh5NlRo?= =?utf-8?B?dHFXclU3ODE0SGhVOUp1RnBtQnNZZXZkdURNTlN6VDVPN1hxaU1yditvQU5o?= =?utf-8?B?dEdsR09TNnFuaWc2cDEzMERDRGowZ3NCdXhBcGJyY1F3bUh2SG5vNXgwb1NN?= =?utf-8?B?NmhmNmZudFBVQVBmeGM5OENudnNhbEd4NEFSNmdkWlpJYS9xS1Fnc1U3aTlr?= =?utf-8?B?eHFTRlhYc2M3a0pNTlZETnhxS0lKc0o2bm5tZTNHUlJGS1pHeDhxdkRmcnYv?= =?utf-8?B?Q1VTL254UndXMWlUOHJTSW9hbkVaN2MzVnBiVFpiYUt3bGhJU2UwbWJBdnBx?= =?utf-8?B?K1hMY2FoZHJFY2FlN1huVjBYcVR4VHVqQ2ZNSndBKzM5d0lUYUFVQ2RKSEs5?= =?utf-8?B?Ynd3M2NLOGt6aW9vNGdaZUpKVXlKb3ZyMFpBVnJnZ2RkUjREblN5Nm5tY3I1?= =?utf-8?B?cCs4WENFTzlpc1VtaVhBQzJoMmxnSFdDcXZ0azBQL1ZaczdwV3R2eFcyNUJw?= =?utf-8?B?Mmt1QWpld0RUdDhBZWFaK3BvUFg3bHphVUJkZjRQRFYyeTlSRXc0TmpKMGgr?= =?utf-8?B?UWYzTytVVDR2SlM0Mlc5K2x6NWwrSjYzaW1CZXU0K01EZHFHUkMvRXJxcjdZ?= =?utf-8?B?VzMxZGZKL2R5b0xpakRjeFFhWllnaEJjeHI5Q0dzSEtRY1p0K2QvTXZBYjUx?= =?utf-8?B?ck5SRXNXN0ZqQ05Pc0dTQ041YWFUR2Z0RjdDNFVIb3BUY0xLZGZ4K0VTMWd0?= =?utf-8?B?WHc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR11MB3504.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 764ae636-4a0e-4f85-9077-08d9a8d8223c X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Nov 2021 08:07:28.9383 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: TWToxd9oMrR9MLq/X4WzMgW76uFUzIQSKfEs/aU0Zau1OEtf3GvyxBiW9b721ptxCm55gw2qQSGM23KkUX7kog== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2815 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBYaWEsIENoZW5ibyA8Y2hlbmJv LnhpYUBpbnRlbC5jb20+DQo+IFNlbnQ6IE1vbmRheSwgTm92ZW1iZXIgMTUsIDIwMjEgNDowNCBQ TQ0KPiBUbzogV2FuZywgWXVhblggPHl1YW54LndhbmdAaW50ZWwuY29tPjsgbWF4aW1lLmNvcXVl bGluQHJlZGhhdC5jb20NCj4gQ2M6IGRldkBkcGRrLm9yZzsgSHUsIEppYXl1IDxqaWF5dS5odUBp bnRlbC5jb20+OyBEaW5nLCBYdWFuDQo+IDx4dWFuLmRpbmdAaW50ZWwuY29tPjsgTWEsIFdlbnd1 WCA8d2Vud3V4Lm1hQGludGVsLmNvbT47IEhlLCBYaW5nZ3VhbmcNCj4gPHhpbmdndWFuZy5oZUBp bnRlbC5jb20+OyBZYW5nLCBZdm9ubmVYIDx5dm9ubmV4LnlhbmdAaW50ZWwuY29tPg0KPiBTdWJq ZWN0OiBSRTogW1BBVENIXSB2aG9zdDogZml4IGdldCBocGEgZmFpbCBmcm9tIGd1ZXN0IHBhZ2Vz DQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogV2FuZywgWXVh blggPHl1YW54LndhbmdAaW50ZWwuY29tPg0KPiA+IFNlbnQ6IFRodXJzZGF5LCBOb3ZlbWJlciAx MSwgMjAyMSAyOjI3IFBNDQo+ID4gVG86IG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tOyBYaWEs IENoZW5ibyA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+DQo+ID4gQ2M6IGRldkBkcGRrLm9yZzsgSHUs IEppYXl1IDxqaWF5dS5odUBpbnRlbC5jb20+OyBEaW5nLCBYdWFuDQo+ID4gPHh1YW4uZGluZ0Bp bnRlbC5jb20+OyBNYSwgV2Vud3VYIDx3ZW53dXgubWFAaW50ZWwuY29tPjsgSGUsIFhpbmdndWFu Zw0KPiA+IDx4aW5nZ3VhbmcuaGVAaW50ZWwuY29tPjsgWWFuZywgWXZvbm5lWCA8eXZvbm5leC55 YW5nQGludGVsLmNvbT47IFdhbmcsDQo+IFl1YW5YDQo+ID4gPHl1YW54LndhbmdAaW50ZWwuY29t Pg0KPiA+IFN1YmplY3Q6IFtQQVRDSF0gdmhvc3Q6IGZpeCBnZXQgaHBhIGZhaWwgZnJvbSBndWVz dCBwYWdlcw0KPiA+DQo+ID4gV2hlbiBwcm9jZXNzaW5nIGZyb250LWVuZCBtZW1vcnkgcmVnaW9u cyBtZXNzYWdlcywNCj4gPiB2aG9zdCBzYXZlcyB0aGUgZ3Vlc3QvaG9zdCBwaHlzaWNhbCBhZGRy ZXNzIG1hcHBpbmdzIHRvIGd1ZXN0IHBhZ2VzDQo+ID4gYW5kIG1lcmdlcyBhZGphY2VudCBjb250 aWd1b3VzIHBhZ2VzIGlmIGhwYSBpcyBjb250aWd1b3VzLA0KPiA+IGhvd2V2ZXIgZ3BhIGlzIGxp a2VseSBub3QgY29udGlndW91cyBpbiBQQSBtb2RlDQo+ID4gYW5kIG1lcmdpbmcgd2lsbCBjYXVz ZSB0aGUgZ3BhIHJhbmdlIHRvIGNoYW5nZS4NCj4gPiBUaGlzIHBhdGNoIGRpc3Rpbmd1aXNoZXMg dGhlIGNhc2Ugb2YgZGlzY29udGludW91cyBncGENCj4gPiBhbmQgZG9lcyBhIHJhbmdlIGxvb2t1 cCBvbiBncGEgd2hlbiBkb2luZyBhIGJpbmFyeSBzZWFyY2guDQo+ID4NCj4gPiBGaXhlczogZTI0 Njg5NjE3OGUoInZob3N0OiBnZXQgZ3Vlc3QvaG9zdCBwaHlzaWNhbCBhZGRyZXNzIG1hcHBpbmdz IikNCj4gPiBGaXhlczogNjU2M2NmOTIzODAgKCJ2aG9zdDogZml4IGFzeW5jIGNvcHkgb24gbXVs dGktcGFnZSBidWZmZXJzIikNCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFl1YW4gV2FuZyA8eXVh bngud2FuZ0BpbnRlbC5jb20+DQo+ID4gLS0tDQo+ID4gIGxpYi92aG9zdC92aG9zdC5oICAgICAg fCAxOCArKysrKysrKysrKysrKysrLS0NCj4gPiAgbGliL3Zob3N0L3Zob3N0X3VzZXIuYyB8IDE1 ICsrKysrKysrKysrLS0tLQ0KPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyks IDYgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvbGliL3Zob3N0L3Zob3N0Lmgg Yi9saWIvdmhvc3Qvdmhvc3QuaA0KPiA+IGluZGV4IDcwODVlMDg4NWMuLmIzZjBjMWQwN2MgMTAw NjQ0DQo+ID4gLS0tIGEvbGliL3Zob3N0L3Zob3N0LmgNCj4gPiArKysgYi9saWIvdmhvc3Qvdmhv c3QuaA0KPiA+IEBAIC01ODcsNiArNTg3LDIwIEBAIHN0YXRpYyBfX3J0ZV9hbHdheXNfaW5saW5l IGludCBndWVzdF9wYWdlX2FkZHJjbXAoY29uc3QNCj4gPiB2b2lkICpwMSwNCj4gPiAgCXJldHVy biAwOw0KPiA+ICB9DQo+ID4NCj4gPiArc3RhdGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgaW50IGd1 ZXN0X3BhZ2VfcmFuZ2VjbXAoY29uc3Qgdm9pZCAqcDEsIGNvbnN0DQo+IHZvaWQNCj4gPiAqcDIp DQo+ID4gK3sNCj4gPiArCWNvbnN0IHN0cnVjdCBndWVzdF9wYWdlICpwYWdlMSA9IChjb25zdCBz dHJ1Y3QgZ3Vlc3RfcGFnZSAqKXAxOw0KPiA+ICsJY29uc3Qgc3RydWN0IGd1ZXN0X3BhZ2UgKnBh Z2UyID0gKGNvbnN0IHN0cnVjdCBndWVzdF9wYWdlICopcDI7DQo+ID4gKw0KPiA+ICsJaWYgKHBh Z2UxLT5ndWVzdF9waHlzX2FkZHIgPj0gcGFnZTItPmd1ZXN0X3BoeXNfYWRkcikgew0KPiA+ICsJ CWlmIChwYWdlMS0+Z3Vlc3RfcGh5c19hZGRyIDwgcGFnZTItPmd1ZXN0X3BoeXNfYWRkciArIHBh Z2UyLT5zaXplKQ0KPiA+ICsJCQlyZXR1cm4gMDsNCj4gPiArCQllbHNlDQo+ID4gKwkJCXJldHVy biAxOw0KPiA+ICsJfSBlbHNlDQo+ID4gKwkJcmV0dXJuIC0xOw0KPiA+ICt9DQo+ID4gKw0KPiA+ ICBzdGF0aWMgX19ydGVfYWx3YXlzX2lubGluZSBydGVfaW92YV90DQo+ID4gIGdwYV90b19maXJz dF9ocGEoc3RydWN0IHZpcnRpb19uZXQgKmRldiwgdWludDY0X3QgZ3BhLA0KPiA+ICAJdWludDY0 X3QgZ3BhX3NpemUsIHVpbnQ2NF90ICpocGFfc2l6ZSkNCj4gPiBAQCAtNTk3LDkgKzYxMSw5IEBA IGdwYV90b19maXJzdF9ocGEoc3RydWN0IHZpcnRpb19uZXQgKmRldiwgdWludDY0X3QgZ3BhLA0K PiA+DQo+ID4gIAkqaHBhX3NpemUgPSBncGFfc2l6ZTsNCj4gPiAgCWlmIChkZXYtPm5yX2d1ZXN0 X3BhZ2VzID49IFZIT1NUX0JJTkFSWV9TRUFSQ0hfVEhSRVNIKSB7DQo+ID4gLQkJa2V5Lmd1ZXN0 X3BoeXNfYWRkciA9IGdwYSAmIH4oZGV2LT5ndWVzdF9wYWdlc1swXS5zaXplIC0gMSk7DQo+ID4g KwkJa2V5Lmd1ZXN0X3BoeXNfYWRkciA9IGdwYTsNCj4gPiAgCQlwYWdlID0gYnNlYXJjaCgma2V5 LCBkZXYtPmd1ZXN0X3BhZ2VzLCBkZXYtPm5yX2d1ZXN0X3BhZ2VzLA0KPiA+IC0JCQkgICAgICAg c2l6ZW9mKHN0cnVjdCBndWVzdF9wYWdlKSwgZ3Vlc3RfcGFnZV9hZGRyY21wKTsNCj4gPiArCQkJ ICAgICAgIHNpemVvZihzdHJ1Y3QgZ3Vlc3RfcGFnZSksIGd1ZXN0X3BhZ2VfcmFuZ2VjbXApOw0K PiA+ICAJCWlmIChwYWdlKSB7DQo+ID4gIAkJCWlmIChncGEgKyBncGFfc2l6ZSA8PQ0KPiA+ICAJ CQkJCXBhZ2UtPmd1ZXN0X3BoeXNfYWRkciArIHBhZ2UtPnNpemUpIHsNCj4gPiBkaWZmIC0tZ2l0 IGEvbGliL3Zob3N0L3Zob3N0X3VzZXIuYyBiL2xpYi92aG9zdC92aG9zdF91c2VyLmMNCj4gPiBp bmRleCBhNzgxMzQ2YzRkLi43ZDU4ZmRlNDU4IDEwMDY0NA0KPiA+IC0tLSBhL2xpYi92aG9zdC92 aG9zdF91c2VyLmMNCj4gPiArKysgYi9saWIvdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4gQEAgLTk5 OSwxMCArOTk5LDE3IEBAIGFkZF9vbmVfZ3Vlc3RfcGFnZShzdHJ1Y3QgdmlydGlvX25ldCAqZGV2 LCB1aW50NjRfdA0KPiA+IGd1ZXN0X3BoeXNfYWRkciwNCj4gPiAgCWlmIChkZXYtPm5yX2d1ZXN0 X3BhZ2VzID4gMCkgew0KPiA+ICAJCWxhc3RfcGFnZSA9ICZkZXYtPmd1ZXN0X3BhZ2VzW2Rldi0+ bnJfZ3Vlc3RfcGFnZXMgLSAxXTsNCj4gPiAgCQkvKiBtZXJnZSBpZiB0aGUgdHdvIHBhZ2VzIGFy ZSBjb250aW51b3VzICovDQo+ID4gLQkJaWYgKGhvc3RfcGh5c19hZGRyID09IGxhc3RfcGFnZS0+ aG9zdF9waHlzX2FkZHIgKw0KPiA+IC0JCQkJICAgICAgbGFzdF9wYWdlLT5zaXplKSB7DQo+ID4g LQkJCWxhc3RfcGFnZS0+c2l6ZSArPSBzaXplOw0KPiA+IC0JCQlyZXR1cm4gMDsNCj4gPiArCQlp ZiAoaG9zdF9waHlzX2FkZHIgPT0gbGFzdF9wYWdlLT5ob3N0X3BoeXNfYWRkciArIGxhc3RfcGFn ZS0+c2l6ZSkNCj4gPiB7DQo+ID4gKwkJCWlmIChydGVfZWFsX2lvdmFfbW9kZSgpID09IFJURV9J T1ZBX1ZBKSB7DQo+ID4gKwkJCQlsYXN0X3BhZ2UtPnNpemUgKz0gc2l6ZTsNCj4gPiArCQkJCXJl dHVybiAwOw0KPiA+ICsJCQl9DQo+IA0KPiBUaGlzIG1ha2VzIG1lIHRoaW5rIGFib3V0IGEgcXVl c3Rpb246IEluIElPVkFfVkEgbW9kZSwgd2hhdCBlbnN1cmVzIEhQQSBhbmQNCj4gR1BBIGFyZQ0K PiBib3RoIGNvbnRpZ3VvdXM/DQoNCldoZW4gSSB3cm90ZSB0aGlzIGVtYWlsLCBJIHRob3VnaHQg aG9zdF9waHlzX2FkZHIgaXMgSFBBIGJ1dCBpbiBWQSBtb2RlLCBpdCdzDQpIb3N0IElPVkEsIGFr YSBWQSBpbiBEUERLJ3MgY2FzZS4gU28gaW4gbW9zdCBjYXNlcyBHUEEgYW5kIFZBIHdpbGwgYmUg Ym90aA0KY29udGlndW91cyB3aGVuIHRoZSBjb250aWd1b3VzIHBhZ2VzIGFyZSBhbGwgaW4gb25l IG1lbW9yeSByZWdpb24uIEJ1dCBJIHRoaW5rDQp3ZSBzaG91bGQgbm90IG1ha2Ugc3VjaCBhc3N1 bXB0aW9uIGFzIHNvbWUgdmhvc3QgbWFzdGVyIG1heSBzZW5kIEdQQS1jb250aWd1b3VzDQpwYWdl cyBpbiBkaWZmZXJlbnQgbWVtb3J5IHJlZ2lvbiwgdGhlbiB0aGUgVkEgYWZ0ZXIgbW1hcCBtYXkg bm90IGJlIGNvbnRpZ3VvdXMuDQoNCk1heGltZSwgV2hhdCBkbyB5b3UgdGhpbms/DQoNClRoYW5r cywNCkNoZW5ibw0KDQo+IA0KPiBNYXhpbWUgJiBZdWFuLCBhbnkgdGhvdWdodD8NCj4gDQo+IFRo YW5rcywNCj4gQ2hlbmJvDQo+IA0KPiA+ICsNCj4gPiArCQkJaWYgKHJ0ZV9lYWxfaW92YV9tb2Rl KCkgPT0gUlRFX0lPVkFfUEEgJiYNCj4gPiArCQkJCWd1ZXN0X3BoeXNfYWRkciA9PSBsYXN0X3Bh Z2UtPmd1ZXN0X3BoeXNfYWRkciArDQo+ID4gbGFzdF9wYWdlLT5zaXplKSB7DQo+ID4gKwkJCQls YXN0X3BhZ2UtPnNpemUgKz0gc2l6ZTsNCj4gPiArCQkJCXJldHVybiAwOw0KPiA+ICsJCQl9DQo+ ID4gIAkJfQ0KPiA+ICAJfQ0KPiA+DQo+ID4gLS0NCj4gPiAyLjI1LjENCg0K