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 2133CA0C43; Tue, 16 Nov 2021 09:47:48 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9B62F4068C; Tue, 16 Nov 2021 09:47:47 +0100 (CET) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mails.dpdk.org (Postfix) with ESMTP id 400B440040 for ; Tue, 16 Nov 2021 09:47:44 +0100 (CET) X-IronPort-AV: E=McAfee;i="6200,9189,10169"; a="220858327" X-IronPort-AV: E=Sophos;i="5.87,238,1631602800"; d="scan'208";a="220858327" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Nov 2021 00:47:13 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,238,1631602800"; d="scan'208";a="735123082" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga006.fm.intel.com with ESMTP; 16 Nov 2021 00:47:12 -0800 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) by ORSMSX602.amr.corp.intel.com (10.22.229.15) 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:47:11 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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 via Frontend Transport; Tue, 16 Nov 2021 00:47:11 -0800 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.168) by edgegateway.intel.com (134.134.137.103) 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:47:11 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yg4gGmTITdPoKlJGmgPmaNA8v8nJ59nzbkf4fD0kNeY6EOOomWq0f2njkNRCDOVLuoUmttq0GVxncU4kvb95aiXdMSDoHIhcADwAXY+xJS/juXTosdUvWvlppnVApCtdWn4JPIF0ZiSh9izpxiHQLhQBi+jkTmWmzWGb7S7o+WQCirIBFoAjeUFQnyeD1dsspMVvq/YM4T65//6aKLqTj9SadDXnCpsH+LJI/AQSD5P5BA8/r9Dhfi2Fy50Ulrteiqt47YltIrb57XPw+PDGn6lKL+IDGkRr290QAYSEo+7QMFRIs3zxOmr0LVrmRKGcrlZ0O18ddIZmoYdHyM/iUg== 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=T0MT8IVfYLbBOt8+ylvkTxJTV2YI3/RcUyqa82OkDHw=; b=BWtq4j9HDDxo6F/IgdkqQQjJYDRMlAYFntJGbogpNapwTR8nqX4hLDHgNGkGlwhLfSikFJsA6Lm9Q05vB087FMmeAvrIlHCeeT13gogKtEIWbw+gSC8t57BU3WOq4qcuButzy/SxS401hMI1JC0tSpZ3l1P9pAdWXe3YU3aFSbojkaHZdgSUM5aDbtytAe1KO+E02RnTJ47bjJT+2CY6OzMbNbHcW95+jTd91BjcoHCd2YwBT3fYliZygj0IfZYDTbPhdALhyhns0grtGddo9hiRZpLBUOniHDzY90rbbyHhvl7HuNuHCC8FE874/6UiyRjNtt9g02belM9auRx4CA== 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=T0MT8IVfYLbBOt8+ylvkTxJTV2YI3/RcUyqa82OkDHw=; b=zMhbu51+/tMqZCHrxEIhZk7n9yWYneMn5B0z7PR3+4CQWwXjvi2dMNcNq5xegkkvAKVot2cQShO4SCZnSOsgl52gxk/QE9vjv7XMua6kDwTLstAagMVz/vMsB9YbZ84eJ0fbE8OWGKZwcQzPbPI6ujd3isRGmLQCka4s14rZ7dk= Received: from BN9PR11MB5513.namprd11.prod.outlook.com (2603:10b6:408:102::11) by BN6PR1101MB2258.namprd11.prod.outlook.com (2603:10b6:405:5b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.27; Tue, 16 Nov 2021 08:47:04 +0000 Received: from BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::2d2f:59c2:c16d:fe6b]) by BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::2d2f:59c2:c16d:fe6b%9]) with mapi id 15.20.4690.027; Tue, 16 Nov 2021 08:47:04 +0000 From: "Ding, Xuan" To: "Xia, Chenbo" , "Wang, YuanX" , "maxime.coquelin@redhat.com" CC: "dev@dpdk.org" , "Hu, Jiayu" , "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: AQHX1sbn+X1DBEGYs0OSf+Z0v+DCOqwEQS0AgAGTQwCAAAUlEA== Date: Tue, 16 Nov 2021 08:47:04 +0000 Message-ID: References: <20211111062725.108297-1-yuanx.wang@intel.com> In-Reply-To: Accept-Language: zh-CN, en-US 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: 776db1d2-cba3-469a-e7b7-08d9a8dda9ef x-ms-traffictypediagnostic: BN6PR1101MB2258: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9xdl2hqjtGxivJ0aVmJ+Tayphr4tqPdh7blDZb3Z5avVOm4QT9gjWWauhMpwwhrNjChS8nS7icdHrQXEBz3Sp/7CUfhzJ/3AszAhnQNyo3ggZ/c3yk7T5Xqurl4fwwJeyxhk8Hk4yUVuXorQNNjc/9OlyCWcK1d8tGCvlH+AFsEH/KVmGCFvIEyc2y6s9+ZC3GFGVbevM7pqLxztex9kSZ6TKDkQ5XTPhqW8Q+/w6uiTNmcLGnIKly8ByxsJaHQdy906WS1gh8daxfN7ZMCCC/a0QFceSa9+ABFyT9OYYulLG8EnU+DOaX3N3JuPzf2gY1yZIYtcGaI59dZNOtSWIQQVuY6eOF+eG2BNtTBtBhaAlcM0gosBa2HXbIecTAXtb42zrAbHrgA+tkPt2jQBDBzfMwQVw9Yr1170AonW+unXIq2GpBN6BB2XCDKrtlmFh6M+UdUk/1veFfQX7UCBGcWB5N4qCAqT5P07Vdfzxx3UplSeYlvP593OT9bSb/sQXiF1LMx5iHqapHcTIewvrYkKAPrOvS0pZ6+0KsMThCudpVicvfg/JH/VzUFeSnv4/MV1+JNYVD3ypp/rLJrU3NEUW4/Caa2Ot5OfTWSZz0o8xju9L6T+U0gSsFYjPa4S0TKuwh2qo9YUp2DKskFHCYkE7mIAZLGdHweoyfwhhH3TKzc6IrPwW7qSDPH1BxRnxzIf7cbXXeiq5tNEAmWo9A== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR11MB5513.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(107886003)(82960400001)(54906003)(508600001)(7696005)(53546011)(6506007)(33656002)(316002)(4326008)(8676002)(71200400001)(83380400001)(52536014)(55016002)(66476007)(5660300002)(122000001)(38100700002)(38070700005)(86362001)(26005)(2906002)(8936002)(66556008)(186003)(66446008)(66946007)(110136005)(64756008)(9686003)(76116006); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NnBrMUFKeDFPcEN4VEY2d21JK21wSVhkV2hJZExuUmRRMnMwMmRobWs4Q25M?= =?utf-8?B?YXVxblB5SDJSV0JKa1owNTBQeGFNc1JUWGxqU0tYcUxKYURJS05jU3hHNGl3?= =?utf-8?B?NlM4SEtuZ3liUENsVDFibjBpR1ExZ09kejhuc09mYUVqdWJIclF5KzZHUUNP?= =?utf-8?B?OG1OT2xUbGI3cytObFBBZDV2aW1jbWppcWhsdFpCUWFHNXFFVjl4c05GNGp2?= =?utf-8?B?SmI1NStFN1grMWxTcy9HZnlrNHVJc05TMWF3eFF0YnFwV1FvOUYxOUtUbzZY?= =?utf-8?B?c0hjcjREUVN3SHdzZzRzaFJJTTZvMU9YaWNPY0g2eXhZUVIvWEFFUjVXUHA4?= =?utf-8?B?QjBWZ1NhV1dzWlVnbWx4Yy9BZ0daQ0REVTE4dGljWlpxRGczRFpBSmRXUmJ4?= =?utf-8?B?L2NuclQ1Vm85OHJ0L2NSM0xuS0ZMcHZkbStiUFlxKzNjVmZxcFg1NW11dTJx?= =?utf-8?B?NUJ1TW8vaHFGWkhKd2dTbTNhUWRnNkVVMEUrOHpDSExZLzdSMTBJOUVsSysz?= =?utf-8?B?SGNxaEROcVhnck5Sa3EwMzE3SzBnRE1kUUxaM0pWSC9QR3BORStlcWRJQU1w?= =?utf-8?B?S0pjSGY0bGQ4NVpLMHlvb3RKWXFqaDFTSVVPWXRuTHdhaElnWkh0MjB1cktZ?= =?utf-8?B?eCtPVEprOWhyNTlUalBoZGpWQm83VzVBNE5vYzV5YkVNYm9yRlJ1cTg1Tm9T?= =?utf-8?B?WHBKek9SRTlDMVlzZnBMMXpHVUdZZVE5OU1oNHB4dnJHRWV0NnhPNmIrbXlL?= =?utf-8?B?WTA3Ly82SnUybXBDNmxyQi8rdkg5WTgvOXp3T1FnWTZPSnJsdTJsOFlGTWg3?= =?utf-8?B?bUYwcW9WdW15MUNLeC9vUnNSRWpURmhoRERsYTFxSGtiMXBCUnRlRWtWRWZq?= =?utf-8?B?NHNjemtqenI4d2owNHFLWU90VHNpWWJKa1VleHNvdHpOcXh1Rm04b2R0Y1M3?= =?utf-8?B?cnhUckpyblZzOEYzNnRyY1l3UEx1VUdrdEVPbEhuNTZDa2dnU21tZnk0bXFO?= =?utf-8?B?ZUF1SXhUVy9FVGxGMjVCUWluQlZOclRMdlJUdDZ2L3JmMWZNb29uckllN3gz?= =?utf-8?B?U2xVNkQ0M1I1d1Z2RjVNVDNnSmlMM01lNEpKeUxyR0pBR3ZPOGtsZ2lsbDBP?= =?utf-8?B?TDlqRW1ldkZHVTZudlVhTGliMC9MYkUvaDg5a1lGdEg0R05nSy9iY3o5VmJT?= =?utf-8?B?S1hPZUFwaFVCS2preGNMc2V6OVpwV3pnMHdzbHJqeWpKbXh4Ylo3bExWNlR2?= =?utf-8?B?bnZ1VGRhQmlEc1hCSWdCejE5V3FZRlN0QzFnRS85d1Q5aUEwMkx3cGFaSVZX?= =?utf-8?B?OGlXL0orTzBvM3NyOWdWRVVVOG5waEZOUkRqQkZuZkZwa2UxcUdEaHJ5UXd6?= =?utf-8?B?UlBPbFNidUtNZGhuckJ6NVNqdTlOYUZlaktLK0g0alBobjZFRWJmazdLaGZr?= =?utf-8?B?SStub0JqeHlXdzd2S2dybjAvaEFzWVJDdkZ1NHpza3JOU09UZVNseHp0TVpu?= =?utf-8?B?UHEvNHRaQlY5bFUvQ2tuSkFmYUZkS1ZJcXZhTGRXQ2E5M3Z6eDJienVpenVP?= =?utf-8?B?bGdPSzQwZmFWTjJxTEtEOUNoeUlaQ0VGdVk5alByWlp3K0s5MUdLUUdnOTI2?= =?utf-8?B?eXVqdWJnbVBjQWVaTjMxcGNHUXlSYXA0M1RnRHgwTWw5U1lKVmtyQ2pmcG91?= =?utf-8?B?TG5JNVVDYU5ibWRycnphK21PWFhjZjBYZnFveGZvOVV5S1ZFKzMrbVR4c1h0?= =?utf-8?B?MWN4SU9yZFJvZlRSOEVZRElmMWZ2clpzWmIxanAvUHRxTlU0UThORFhIWFI3?= =?utf-8?B?V3NOTmJQNUV6N29BdTdiRjhxUGtKVzJMd1lSNlpXVHB3SXFlYWFPMmxOS3Nr?= =?utf-8?B?QTUwN1VScEc0M253L090cncvOUVMcHdQRm5wWmF2Mk9Za3JPcUI5aDU2WW9t?= =?utf-8?B?aTAwclYyYXRLTzJsdjQ4NDQvZmNZbFA5SW9JQ2Z5RmI5eUxVZkNrbk1oc25y?= =?utf-8?B?dHhxejRBOWhhdThYZEc5bUZsYUxuUXh0VVhEYk9QU3UyenNHSkZPSGdZelZl?= =?utf-8?B?SThSTXR6Q0ZDeVh4RWoxaEorV1M2ZnIraXRaVm1PZU93TWRhaXIxeVJPc2dR?= =?utf-8?B?TXNTbG1waXFFNnluVzdmNFhNZU1IZ2NCckViKzBESXhNNTVObnVIQjNNdzNR?= =?utf-8?Q?S/POsT4CiySz8+iqyDhKo0U=3D?= 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: BN9PR11MB5513.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 776db1d2-cba3-469a-e7b7-08d9a8dda9ef X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Nov 2021 08:47:04.0254 (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: Z2gWhPgDZEb6KR4Q+OCXPQ8tkxSllUILXmSV8P+Ie4Nwn7LvIkHc2eqh7Dm/LmaNgXvo+8i0SAbJ1LF3UJl54Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1101MB2258 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 SGkgQ2hlbmJvLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFhpYSwg Q2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4NCj4gU2VudDogMjAyMeW5tDEx5pyIMTbml6Ug MTY6MDcNCj4gVG86IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47IFdhbmcsIFl1 YW5YDQo+IDx5dWFueC53YW5nQGludGVsLmNvbT47IG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29t DQo+IENjOiBkZXZAZHBkay5vcmc7IEh1LCBKaWF5dSA8amlheXUuaHVAaW50ZWwuY29tPjsgRGlu ZywgWHVhbg0KPiA8eHVhbi5kaW5nQGludGVsLmNvbT47IE1hLCBXZW53dVggPHdlbnd1eC5tYUBp bnRlbC5jb20+OyBIZSwNCj4gWGluZ2d1YW5nIDx4aW5nZ3VhbmcuaGVAaW50ZWwuY29tPjsgWWFu ZywgWXZvbm5lWA0KPiA8eXZvbm5leC55YW5nQGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtQ QVRDSF0gdmhvc3Q6IGZpeCBnZXQgaHBhIGZhaWwgZnJvbSBndWVzdCBwYWdlcw0KPiANCj4gPiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IFhpYSwgQ2hlbmJvIDxjaGVuYm8u eGlhQGludGVsLmNvbT4NCj4gPiBTZW50OiBNb25kYXksIE5vdmVtYmVyIDE1LCAyMDIxIDQ6MDQg UE0NCj4gPiBUbzogV2FuZywgWXVhblggPHl1YW54LndhbmdAaW50ZWwuY29tPjsgbWF4aW1lLmNv cXVlbGluQHJlZGhhdC5jb20NCj4gPiBDYzogZGV2QGRwZGsub3JnOyBIdSwgSmlheXUgPGppYXl1 Lmh1QGludGVsLmNvbT47IERpbmcsIFh1YW4NCj4gPiA8eHVhbi5kaW5nQGludGVsLmNvbT47IE1h LCBXZW53dVggPHdlbnd1eC5tYUBpbnRlbC5jb20+OyBIZSwNCj4gWGluZ2d1YW5nDQo+ID4gPHhp bmdndWFuZy5oZUBpbnRlbC5jb20+OyBZYW5nLCBZdm9ubmVYIDx5dm9ubmV4LnlhbmdAaW50ZWwu Y29tPg0KPiA+IFN1YmplY3Q6IFJFOiBbUEFUQ0hdIHZob3N0OiBmaXggZ2V0IGhwYSBmYWlsIGZy b20gZ3Vlc3QgcGFnZXMNCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g PiA+IEZyb206IFdhbmcsIFl1YW5YIDx5dWFueC53YW5nQGludGVsLmNvbT4NCj4gPiA+IFNlbnQ6 IFRodXJzZGF5LCBOb3ZlbWJlciAxMSwgMjAyMSAyOjI3IFBNDQo+ID4gPiBUbzogbWF4aW1lLmNv cXVlbGluQHJlZGhhdC5jb207IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4NCj4g PiA+IENjOiBkZXZAZHBkay5vcmc7IEh1LCBKaWF5dSA8amlheXUuaHVAaW50ZWwuY29tPjsgRGlu ZywgWHVhbg0KPiA+ID4gPHh1YW4uZGluZ0BpbnRlbC5jb20+OyBNYSwgV2Vud3VYIDx3ZW53dXgu bWFAaW50ZWwuY29tPjsgSGUsDQo+ID4gPiBYaW5nZ3VhbmcgPHhpbmdndWFuZy5oZUBpbnRlbC5j b20+OyBZYW5nLCBZdm9ubmVYDQo+ID4gPiA8eXZvbm5leC55YW5nQGludGVsLmNvbT47IFdhbmcs DQo+ID4gWXVhblgNCj4gPiA+IDx5dWFueC53YW5nQGludGVsLmNvbT4NCj4gPiA+IFN1YmplY3Q6 IFtQQVRDSF0gdmhvc3Q6IGZpeCBnZXQgaHBhIGZhaWwgZnJvbSBndWVzdCBwYWdlcw0KPiA+ID4N Cj4gPiA+IFdoZW4gcHJvY2Vzc2luZyBmcm9udC1lbmQgbWVtb3J5IHJlZ2lvbnMgbWVzc2FnZXMs IHZob3N0IHNhdmVzIHRoZQ0KPiA+ID4gZ3Vlc3QvaG9zdCBwaHlzaWNhbCBhZGRyZXNzIG1hcHBp bmdzIHRvIGd1ZXN0IHBhZ2VzIGFuZCBtZXJnZXMNCj4gPiA+IGFkamFjZW50IGNvbnRpZ3VvdXMg cGFnZXMgaWYgaHBhIGlzIGNvbnRpZ3VvdXMsIGhvd2V2ZXIgZ3BhIGlzDQo+ID4gPiBsaWtlbHkg bm90IGNvbnRpZ3VvdXMgaW4gUEEgbW9kZSBhbmQgbWVyZ2luZyB3aWxsIGNhdXNlIHRoZSBncGEN Cj4gPiA+IHJhbmdlIHRvIGNoYW5nZS4NCj4gPiA+IFRoaXMgcGF0Y2ggZGlzdGluZ3Vpc2hlcyB0 aGUgY2FzZSBvZiBkaXNjb250aW51b3VzIGdwYSBhbmQgZG9lcyBhDQo+ID4gPiByYW5nZSBsb29r dXAgb24gZ3BhIHdoZW4gZG9pbmcgYSBiaW5hcnkgc2VhcmNoLg0KPiA+ID4NCj4gPiA+IEZpeGVz OiBlMjQ2ODk2MTc4ZSgidmhvc3Q6IGdldCBndWVzdC9ob3N0IHBoeXNpY2FsIGFkZHJlc3MNCj4g PiA+IG1hcHBpbmdzIikNCj4gPiA+IEZpeGVzOiA2NTYzY2Y5MjM4MCAoInZob3N0OiBmaXggYXN5 bmMgY29weSBvbiBtdWx0aS1wYWdlIGJ1ZmZlcnMiKQ0KPiA+ID4NCj4gPiA+IFNpZ25lZC1vZmYt Ynk6IFl1YW4gV2FuZyA8eXVhbngud2FuZ0BpbnRlbC5jb20+DQo+ID4gPiAtLS0NCj4gPiA+ICBs aWIvdmhvc3Qvdmhvc3QuaCAgICAgIHwgMTggKysrKysrKysrKysrKysrKy0tDQo+ID4gPiAgbGli L3Zob3N0L3Zob3N0X3VzZXIuYyB8IDE1ICsrKysrKysrKysrLS0tLQ0KPiA+ID4gIDIgZmlsZXMg Y2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkNCj4gPiA+DQo+ID4gPiBk aWZmIC0tZ2l0IGEvbGliL3Zob3N0L3Zob3N0LmggYi9saWIvdmhvc3Qvdmhvc3QuaCBpbmRleA0K PiA+ID4gNzA4NWUwODg1Yy4uYjNmMGMxZDA3YyAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi92aG9z dC92aG9zdC5oDQo+ID4gPiArKysgYi9saWIvdmhvc3Qvdmhvc3QuaA0KPiA+ID4gQEAgLTU4Nyw2 ICs1ODcsMjAgQEAgc3RhdGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgaW50DQo+ID4gPiBndWVzdF9w YWdlX2FkZHJjbXAoY29uc3Qgdm9pZCAqcDEsDQo+ID4gPiAgCXJldHVybiAwOw0KPiA+ID4gIH0N Cj4gPiA+DQo+ID4gPiArc3RhdGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgaW50IGd1ZXN0X3BhZ2Vf cmFuZ2VjbXAoY29uc3Qgdm9pZCAqcDEsDQo+ID4gPiArY29uc3QNCj4gPiB2b2lkDQo+ID4gPiAq cDIpDQo+ID4gPiArew0KPiA+ID4gKwljb25zdCBzdHJ1Y3QgZ3Vlc3RfcGFnZSAqcGFnZTEgPSAo Y29uc3Qgc3RydWN0IGd1ZXN0X3BhZ2UgKilwMTsNCj4gPiA+ICsJY29uc3Qgc3RydWN0IGd1ZXN0 X3BhZ2UgKnBhZ2UyID0gKGNvbnN0IHN0cnVjdCBndWVzdF9wYWdlICopcDI7DQo+ID4gPiArDQo+ ID4gPiArCWlmIChwYWdlMS0+Z3Vlc3RfcGh5c19hZGRyID49IHBhZ2UyLT5ndWVzdF9waHlzX2Fk ZHIpIHsNCj4gPiA+ICsJCWlmIChwYWdlMS0+Z3Vlc3RfcGh5c19hZGRyIDwgcGFnZTItPmd1ZXN0 X3BoeXNfYWRkciArDQo+IHBhZ2UyLT5zaXplKQ0KPiA+ID4gKwkJCXJldHVybiAwOw0KPiA+ID4g KwkJZWxzZQ0KPiA+ID4gKwkJCXJldHVybiAxOw0KPiA+ID4gKwl9IGVsc2UNCj4gPiA+ICsJCXJl dHVybiAtMTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiAgc3RhdGljIF9fcnRlX2Fsd2F5c19p bmxpbmUgcnRlX2lvdmFfdCAgZ3BhX3RvX2ZpcnN0X2hwYShzdHJ1Y3QNCj4gPiA+IHZpcnRpb19u ZXQgKmRldiwgdWludDY0X3QgZ3BhLA0KPiA+ID4gIAl1aW50NjRfdCBncGFfc2l6ZSwgdWludDY0 X3QgKmhwYV9zaXplKSBAQCAtNTk3LDkgKzYxMSw5IEBADQo+ID4gPiBncGFfdG9fZmlyc3RfaHBh KHN0cnVjdCB2aXJ0aW9fbmV0ICpkZXYsIHVpbnQ2NF90IGdwYSwNCj4gPiA+DQo+ID4gPiAgCSpo cGFfc2l6ZSA9IGdwYV9zaXplOw0KPiA+ID4gIAlpZiAoZGV2LT5ucl9ndWVzdF9wYWdlcyA+PSBW SE9TVF9CSU5BUllfU0VBUkNIX1RIUkVTSCkgew0KPiA+ID4gLQkJa2V5Lmd1ZXN0X3BoeXNfYWRk ciA9IGdwYSAmIH4oZGV2LT5ndWVzdF9wYWdlc1swXS5zaXplIC0gMSk7DQo+ID4gPiArCQlrZXku Z3Vlc3RfcGh5c19hZGRyID0gZ3BhOw0KPiA+ID4gIAkJcGFnZSA9IGJzZWFyY2goJmtleSwgZGV2 LT5ndWVzdF9wYWdlcywgZGV2LT5ucl9ndWVzdF9wYWdlcywNCj4gPiA+IC0JCQkgICAgICAgc2l6 ZW9mKHN0cnVjdCBndWVzdF9wYWdlKSwgZ3Vlc3RfcGFnZV9hZGRyY21wKTsNCj4gPiA+ICsJCQkg ICAgICAgc2l6ZW9mKHN0cnVjdCBndWVzdF9wYWdlKSwgZ3Vlc3RfcGFnZV9yYW5nZWNtcCk7DQo+ ID4gPiAgCQlpZiAocGFnZSkgew0KPiA+ID4gIAkJCWlmIChncGEgKyBncGFfc2l6ZSA8PQ0KPiA+ ID4gIAkJCQkJcGFnZS0+Z3Vlc3RfcGh5c19hZGRyICsgcGFnZS0+c2l6ZSkNCj4geyBkaWZmIC0t Z2l0DQo+ID4gPiBhL2xpYi92aG9zdC92aG9zdF91c2VyLmMgYi9saWIvdmhvc3Qvdmhvc3RfdXNl ci5jIGluZGV4DQo+ID4gPiBhNzgxMzQ2YzRkLi43ZDU4ZmRlNDU4IDEwMDY0NA0KPiA+ID4gLS0t IGEvbGliL3Zob3N0L3Zob3N0X3VzZXIuYw0KPiA+ID4gKysrIGIvbGliL3Zob3N0L3Zob3N0X3Vz ZXIuYw0KPiA+ID4gQEAgLTk5OSwxMCArOTk5LDE3IEBAIGFkZF9vbmVfZ3Vlc3RfcGFnZShzdHJ1 Y3QgdmlydGlvX25ldCAqZGV2LA0KPiA+ID4gdWludDY0X3QgZ3Vlc3RfcGh5c19hZGRyLA0KPiA+ ID4gIAlpZiAoZGV2LT5ucl9ndWVzdF9wYWdlcyA+IDApIHsNCj4gPiA+ICAJCWxhc3RfcGFnZSA9 ICZkZXYtPmd1ZXN0X3BhZ2VzW2Rldi0+bnJfZ3Vlc3RfcGFnZXMgLSAxXTsNCj4gPiA+ICAJCS8q IG1lcmdlIGlmIHRoZSB0d28gcGFnZXMgYXJlIGNvbnRpbnVvdXMgKi8NCj4gPiA+IC0JCWlmICho b3N0X3BoeXNfYWRkciA9PSBsYXN0X3BhZ2UtPmhvc3RfcGh5c19hZGRyICsNCj4gPiA+IC0JCQkJ ICAgICAgbGFzdF9wYWdlLT5zaXplKSB7DQo+ID4gPiAtCQkJbGFzdF9wYWdlLT5zaXplICs9IHNp emU7DQo+ID4gPiAtCQkJcmV0dXJuIDA7DQo+ID4gPiArCQlpZiAoaG9zdF9waHlzX2FkZHIgPT0g bGFzdF9wYWdlLT5ob3N0X3BoeXNfYWRkciArDQo+ID4gPiArbGFzdF9wYWdlLT5zaXplKQ0KPiA+ ID4gew0KPiA+ID4gKwkJCWlmIChydGVfZWFsX2lvdmFfbW9kZSgpID09IFJURV9JT1ZBX1ZBKSB7 DQo+ID4gPiArCQkJCWxhc3RfcGFnZS0+c2l6ZSArPSBzaXplOw0KPiA+ID4gKwkJCQlyZXR1cm4g MDsNCj4gPiA+ICsJCQl9DQo+ID4NCj4gPiBUaGlzIG1ha2VzIG1lIHRoaW5rIGFib3V0IGEgcXVl c3Rpb246IEluIElPVkFfVkEgbW9kZSwgd2hhdCBlbnN1cmVzDQo+ID4gSFBBIGFuZCBHUEEgYXJl IGJvdGggY29udGlndW91cz8NCj4gDQo+IFdoZW4gSSB3cm90ZSB0aGlzIGVtYWlsLCBJIHRob3Vn aHQgaG9zdF9waHlzX2FkZHIgaXMgSFBBIGJ1dCBpbiBWQSBtb2RlLCBpdCdzDQo+IEhvc3QgSU9W QSwgYWthIFZBIGluIERQREsncyBjYXNlLiBTbyBpbiBtb3N0IGNhc2VzIEdQQSBhbmQgVkEgd2ls bCBiZSBib3RoDQo+IGNvbnRpZ3VvdXMgd2hlbiB0aGUgY29udGlndW91cyBwYWdlcyBhcmUgYWxs IGluIG9uZSBtZW1vcnkgcmVnaW9uLiBCdXQgSSB0aGluaw0KPiB3ZSBzaG91bGQgbm90IG1ha2Ug c3VjaCBhc3N1bXB0aW9uIGFzIHNvbWUgdmhvc3QgbWFzdGVyIG1heSBzZW5kIEdQQS0NCj4gY29u dGlndW91cyBwYWdlcyBpbiBkaWZmZXJlbnQgbWVtb3J5IHJlZ2lvbiwgdGhlbiB0aGUgVkEgYWZ0 ZXIgbW1hcCBtYXkgbm90DQo+IGJlIGNvbnRpZ3VvdXMuIA0KDQpOb3cgd2UgZG8gYXN5bmMgdmZp byBtYXBwaW5nIGF0IHBhZ2UgZ3JhbnVsYXJpdHkuDQpGb3IgNEsvMk0gcGFnZXMsIHdpdGhvdXQg dGhpcyBhc3N1bXB0aW9uLCBwYWdlcyBub3QgYmUgbWVyZ2VkIG1heQ0KZXhjZWVkIHRoZSBJT01N VSdzIGNhcGFiaWxpdHkuIFRoaXMgbGltaXRzIG9ubHkgdXNlIDFHIGh1Z2VwYWdlIGZvciBETUEg ZGV2aWNlLg0KDQpUaGFua3MsDQpYdWFuDQoNCj4gDQo+IE1heGltZSwgV2hhdCBkbyB5b3UgdGhp bms/DQo+IA0KPiBUaGFua3MsDQo+IENoZW5ibw0KPiANCj4gPg0KPiA+IE1heGltZSAmIFl1YW4s IGFueSB0aG91Z2h0Pw0KPiA+DQo+ID4gVGhhbmtzLA0KPiA+IENoZW5ibw0KPiA+DQo+ID4gPiAr DQo+ID4gPiArCQkJaWYgKHJ0ZV9lYWxfaW92YV9tb2RlKCkgPT0gUlRFX0lPVkFfUEEgJiYNCj4g PiA+ICsJCQkJZ3Vlc3RfcGh5c19hZGRyID09IGxhc3RfcGFnZS0NCj4gPmd1ZXN0X3BoeXNfYWRk ciArDQo+ID4gPiBsYXN0X3BhZ2UtPnNpemUpIHsNCj4gPiA+ICsJCQkJbGFzdF9wYWdlLT5zaXpl ICs9IHNpemU7DQo+ID4gPiArCQkJCXJldHVybiAwOw0KPiA+ID4gKwkJCX0NCj4gPiA+ICAJCX0N Cj4gPiA+ICAJfQ0KPiA+ID4NCj4gPiA+IC0tDQo+ID4gPiAyLjI1LjENCg0K