From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AAF2AC432C3 for ; Fri, 15 Nov 2019 13:35:51 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 2EEEE2073B for ; Fri, 15 Nov 2019 13:35:51 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=marvell.com header.i=@marvell.com header.b="KmwRP+EA"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.b="hkckk0re" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2EEEE2073B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=marvell.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6E4402C18; Fri, 15 Nov 2019 14:35:50 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 91ECF2C18 for ; Fri, 15 Nov 2019 14:35:48 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id xAFDZE3H006607; Fri, 15 Nov 2019 05:35:47 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=IoajglVcsFA5ZC0dY27lIAjZYl83CLIB2Iye9TclC3E=; b=KmwRP+EA4f3MBbijoocGkdukny9XqNTkpdU35B6GyAXFQDhOt6faXmJnJ9mZ9otQgUeU O0SDNhPvpCN9aBDc2mzxYY0BdZEBZdIsSrRyZmNfa9VTrh89bimiuIzmd3zbyLkkzsfJ 4U+nnKZJXDhKQf8BHZBwhtHH1Xxdmfkr0MKH7Pr1mxXJ3NVmeAuhb4dhxQua7QHGUYLQ uVc9oVi5//XpMbibuaNFzKhhtrHPngO4G8asAaM5/Xg6d/SetN1ZvzgH6tnccvxu5OQn kw6YgNppjmoBI9qqgDAYxSQMHtPqzmAyYAJ2qjj8wlTK/KjnEVGLfAGUT60CCdnE1JCt 7w== Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0a-0016f401.pphosted.com with ESMTP id 2w8wwg7xwe-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 15 Nov 2019 05:35:46 -0800 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Fri, 15 Nov 2019 05:35:45 -0800 Received: from NAM03-DM3-obe.outbound.protection.outlook.com (104.47.41.56) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Fri, 15 Nov 2019 05:35:45 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U8fuLf2wn4i6LwvxFKvolSmiuhRr6Z8YWQxtBuT1nFa03T+8noynhpbldu5xCRLDXZBPXU3LERqP9Ck8OtCz2Dlwyt42I6BgEMEpb9XELvfbwcWpKLqIPqqI69/B+wqZ1z0iQk+ZNLypjo4qd1ok1E/mINjBjfftYawxxW+eIlC0J1wQ48eL/VRPx1wPhB5TIm4GBzD5shMT+8OkFuaFjwke7komRxXbpIQAxEfjCCh8awUSSQxcJ24XVlEE0bw/4LU2w0Z0taHIi4Y9qjYmEfZhlS8arV4CLA99fvCpn4VYxAC3mxoQg5FSa7eMAxcFUwvOonB4UJUFv9/5gqlhrg== 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-SenderADCheck; bh=IoajglVcsFA5ZC0dY27lIAjZYl83CLIB2Iye9TclC3E=; b=WvRr9K0e3EAOeiXrruq1SZ64TB0R8nbQ3DDOM+CnxOh3e2dEUBIIp82+je0pYY0iggePzbQYdhq5TSEfvN0g0GR8BusakYs5nKXSOXpIRmfzYfpn2pz9pPiwGASR+imlCk+ZQMwEK3Px53gd6Eb5s58dH2zET22/ZlMbXUE8mL5nBCKVUcmEpXlw2KpZkRVNrfFN9kcyhh4o69V/fm0IpteAyJBjdXNHUJq+l8kfkevBe3HH4MSu9MBEM2GC9wX4T6n+vNi/aaLgRu3dPRbnflchbay/udfEeXkOANFezs+7qxX3QAlagWU9/LRtW8m7+XfxL8CVBvnFONFi9KPuHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IoajglVcsFA5ZC0dY27lIAjZYl83CLIB2Iye9TclC3E=; b=hkckk0rekpCBeesJ87N4xAQ8fsbDLqIJa3zu162y7vD1unQrpnlAjoajdzSznZh3qX+3eyIXGBObKcCWH7OwPN9STE403KrubedF7gKg4L5LSdY48LvghEaBie97W067uRzcN/Mw6hkaykSowj1lUZck0XvmKRrJUfogdBq7Bog= Received: from MWHPR18MB1645.namprd18.prod.outlook.com (10.173.241.137) by MWHPR18MB1197.namprd18.prod.outlook.com (10.175.6.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2451.28; Fri, 15 Nov 2019 13:35:43 +0000 Received: from MWHPR18MB1645.namprd18.prod.outlook.com ([fe80::7900:4268:802e:6adb]) by MWHPR18MB1645.namprd18.prod.outlook.com ([fe80::7900:4268:802e:6adb%6]) with mapi id 15.20.2451.029; Fri, 15 Nov 2019 13:35:43 +0000 From: Vamsi Krishna Attunuru To: David Marchand , "Yigit, Ferruh" CC: dev , Thomas Monjalon , "Jerin Jacob Kollanukkaran" , Kiran Kumar Kokkilagadda , Olivier Matz , "Burakov, Anatoly" , Andrew Rybchenko , Stephen Hemminger Thread-Topic: [EXT] Re: [dpdk-dev] [PATCH v13 2/2] kni: support IOVA mode Thread-Index: AQHVm7SDHwsnktAh9EmRN31NIQvAWKeMOI6Q Date: Fri, 15 Nov 2019 13:35:43 +0000 Message-ID: References: <20191105110416.8955-1-vattunuru@marvell.com> <20191115111807.20935-1-vattunuru@marvell.com> <20191115111807.20935-3-vattunuru@marvell.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [14.140.231.66] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b7b00cb0-3531-4235-6d44-08d769d0b6bf x-ms-traffictypediagnostic: MWHPR18MB1197: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-forefront-prvs: 02229A4115 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(396003)(376002)(39860400002)(136003)(346002)(366004)(13464003)(189003)(199004)(102836004)(4326008)(11346002)(446003)(186003)(26005)(6116002)(66066001)(6246003)(33656002)(66446008)(99286004)(64756008)(66476007)(54906003)(66556008)(66946007)(476003)(5660300002)(14454004)(81166006)(486006)(52536014)(478600001)(8676002)(81156014)(316002)(110136005)(25786009)(229853002)(55016002)(76176011)(53546011)(6506007)(9686003)(55236004)(86362001)(3846002)(561944003)(7696005)(8936002)(74316002)(71190400001)(76116006)(305945005)(71200400001)(2906002)(14444005)(256004)(6436002)(7736002); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR18MB1197; H:MWHPR18MB1645.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: k0cF5pm6FQ0LW2wdYYZqJ5HJ3QoIUOY83mB1REF6iXztIlpDgXG1y0D+bpPd+Ie3EkyEPz4oCjj6j2Iwrc6x12v737OHPwfGdi6IV2eagxZHxeLDBZVNeFysJYphOodk8Q9UC5lgNQ+JP4t0PeS7zVCG5HGHNHaB9t3splvdmGzse96XH6wM5fyLofKTCsitYdQ2w3JtxnE1Jfg9O00GScTVGZZA8Ghp+BVn2zoe5J+zw77SRH2GMMn+W3Ny+69IQRVVDjLMDuBcJdP1l8AWsuZ874AJ5UKR6dRmdgvooBrlYyW3LZVI77jdTN3DU10NY1ChIvzLanBsgGIjel3sx8LbjyulUDRfRDCwBrJ2njdwHzPVhx44HUEJAGlAEcFYpa3/p/7zS7i9CMn6CYkJnCKeBiItu8wYjuIn3k+KOYkrJWE6RRndrjNON/5SZdH8 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: b7b00cb0-3531-4235-6d44-08d769d0b6bf X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Nov 2019 13:35:43.4767 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: TKEPNSFx9rVauylnoIP9qNuk7wsxmw5vhxQOt7rnjTOmwhXXu7z8NR+O12v4UlyTndLAM2tNEqokmN0bYss57Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR18MB1197 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,18.0.572 definitions=2019-11-15_04:2019-11-15,2019-11-15 signatures=0 Subject: Re: [dpdk-dev] [EXT] Re: [PATCH v13 2/2] kni: support IOVA mode X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IERhdmlkIE1hcmNoYW5kIDxk YXZpZC5tYXJjaGFuZEByZWRoYXQuY29tPg0KPiBTZW50OiBGcmlkYXksIE5vdmVtYmVyIDE1LCAy MDE5IDY6MjkgUE0NCj4gVG86IFZhbXNpIEtyaXNobmEgQXR0dW51cnUgPHZhdHR1bnVydUBtYXJ2 ZWxsLmNvbT47IFlpZ2l0LCBGZXJydWgNCj4gPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQo+IENj OiBkZXYgPGRldkBkcGRrLm9yZz47IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5l dD47IEplcmluDQo+IEphY29iIEtvbGxhbnVra2FyYW4gPGplcmluakBtYXJ2ZWxsLmNvbT47IEtp cmFuIEt1bWFyIEtva2tpbGFnYWRkYQ0KPiA8a2lyYW5rdW1hcmtAbWFydmVsbC5jb20+OyBPbGl2 aWVyIE1hdHogPG9saXZpZXIubWF0ekA2d2luZC5jb20+Ow0KPiBCdXJha292LCBBbmF0b2x5IDxh bmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA8YXJ5YmNoZW5r b0Bzb2xhcmZsYXJlLmNvbT47IFN0ZXBoZW4gSGVtbWluZ2VyDQo+IDxzdGVwaGVuQG5ldHdvcmtw bHVtYmVyLm9yZz4NCj4gU3ViamVjdDogW0VYVF0gUmU6IFtkcGRrLWRldl0gW1BBVENIIHYxMyAy LzJdIGtuaTogc3VwcG9ydCBJT1ZBIG1vZGUNCj4gDQo+IEV4dGVybmFsIEVtYWlsDQo+IA0KPiAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQo+IEkgY2FuJ3Qgc2VlIGFuIGludGVyZXN0IGluIHNwbGl0dGluZyB0aGlz IHBhdGNoIGZyb20gdGhlIGttb2QgdXBkYXRlLg0KPiBGZXJydWgsIHdoYXQgZG8geW91IHRoaW5r Pw0KPiANCj4gDQo+IE9uIEZyaSwgTm92IDE1LCAyMDE5IGF0IDEyOjE5IFBNIDx2YXR0dW51cnVA bWFydmVsbC5jb20+IHdyb3RlOg0KPiA+DQo+ID4gRnJvbTogVmFtc2kgQXR0dW51cnUgPHZhdHR1 bnVydUBtYXJ2ZWxsLmNvbT4NCj4gPg0KPiA+IEN1cnJlbnQgS05JIGltcGxlbWVudGF0aW9uIG9u bHkgb3BlcmF0ZXMgaW4gSU9WQV9QQSBtb2RlIHBhdGNoIGFkZHMNCj4gPiByZXF1aXJlZCBmdW5j dGlvbmFsaXR5IHRvIGVuYWJsZSBLTkkgaW4gSU9WQV9WQSBtb2RlLg0KPiA+DQo+ID4gS05JIGxv b3BiYWNrIG1vZGUgdGVzdHMgd2lsbCBoYXZlIHBlcmZvcm1hbmNlIGltcGFjdCBpbiB0aGlzIG1v ZGUgZHVlDQo+ID4gdG8gSU9WQSB0byBLVkEgYWRkcmVzcyB0cmFuc2xhdGlvbnMuDQo+ID4gSG93 ZXZlciwgSW4gS05JIHJlYWwgd29ybGQgdXNlIGNhc2VzLCB0aGUgcGVyZm9ybWFjZQ0KPiANCj4g cGVyZm9ybWFuY2UNCj4gDQo+ID4gaW1wYWN0IHdpbGwgYmUgYmFzZWQgb24gTGludXgga2VybmVs IHN0YWNrIGFuZCBzY2hlZHVsZXIgbGF0ZW5jaWVzLg0KPiA+IFBlcmZvcm1hbmNlIHZhcmllcyBi YXNlZCBvbiB0aGUgS05JIHVzZSBjYXNlLg0KPiA+IElmIGJ1cyBpb21tdSBzY2hlbWUgaXMgSU9W QV9EQyBhbmQgS05JIG1vZHVsZSBpcyBsb2FkZWQsIERQREsgY2hvb3Nlcw0KPiA+IElPVkEgYXMg UEEgYXMgZXhpc3RpbmcgYmVoYXZpb3VyLg0KPiA+DQo+ID4gRHVyaW5nIEtOSSBjcmVhdGlvbiwg YXBwJ3MgaW92YV9tb2RlIGRldGFpbHMgYXJlIHBhc3NlZCB0byB0aGUgS05JDQo+ID4ga2VybmVs IG1vZHVsZSwgYWNjb3JkaW5nbHkga2VybmVsIG1vZHVsZSB0cmFuc2xhdGVzIFBBL0lPVkEgYWRk cmVzc2VzDQo+ID4gdG8gS1ZBIGFuZCB2aWNlLXZlcnNhLg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1i eTogVmFtc2kgQXR0dW51cnUgPHZhdHR1bnVydUBtYXJ2ZWxsLmNvbT4NCj4gPiBTaWduZWQtb2Zm LWJ5OiBLaXJhbiBLdW1hciBLIDxraXJhbmt1bWFya0BtYXJ2ZWxsLmNvbT4NCj4gPiBTdWdnZXN0 ZWQtYnk6IEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gPiAtLS0NCj4g PiAgZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2tlcm5lbF9uaWNfaW50ZXJmYWNlLnJzdCB8IDE1ICsr KysrKysrKysrKysrKw0KPiA+ICBkb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzE5XzExLnJz dCAgICAgICAgIHwgMTUgKysrKysrKysrKysrKystDQo+ID4gIGxpYi9saWJydGVfZWFsL2xpbnV4 L2VhbC9lYWwuYyAgICAgICAgICAgICAgICAgfCAyMyArKysrKysrKysrKysrKysrLS0tLS0tLQ0K PiA+ICBsaWIvbGlicnRlX2tuaS9ydGVfa25pLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDYg KysrKysrDQo+ID4gIDQgZmlsZXMgY2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlv bnMoLSkNCj4gPg0KPiANCj4gW3NuaXBdDQo+IA0KPiA+IGRpZmYgLS1naXQgYS9saWIvbGlicnRl X2VhbC9saW51eC9lYWwvZWFsLmMNCj4gPiBiL2xpYi9saWJydGVfZWFsL2xpbnV4L2VhbC9lYWwu YyBpbmRleCA5ZTJkNTBjLi41M2NhODRiIDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9saWJydGVfZWFs L2xpbnV4L2VhbC9lYWwuYw0KPiA+ICsrKyBiL2xpYi9saWJydGVfZWFsL2xpbnV4L2VhbC9lYWwu Yw0KPiA+IEBAIC0xMDg2LDE0ICsxMDg2LDIzIEBAIHJ0ZV9lYWxfaW5pdChpbnQgYXJnYywgY2hh ciAqKmFyZ3YpDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ICAgICAgICAgICAg ICAgICB9DQo+ID4gICNpZmRlZiBSVEVfTElCUlRFX0tOSQ0KPiA+IC0gICAgICAgICAgICAgICAv KiBXb3JrYXJvdW5kIGZvciBLTkkgd2hpY2ggcmVxdWlyZXMgcGh5c2ljYWwgYWRkcmVzcyB0byB3 b3JrICovDQo+ID4gLSAgICAgICAgICAgICAgIGlmIChpb3ZhX21vZGUgPT0gUlRFX0lPVkFfVkEg JiYNCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0ZV9lYWxfY2hlY2tfbW9k dWxlKCJydGVfa25pIikgPT0gMSkgew0KPiA+IC0gICAgICAgICAgICAgICAgICAgICAgIGlmIChw aHlzX2FkZHJzKSB7DQo+ID4gKyAgICAgICAgICAgICAgIGlmIChydGVfZWFsX2NoZWNrX21vZHVs ZSgicnRlX2tuaSIpID09IDEpIHsgI2lmDQo+ID4gK0tFUk5FTF9WRVJTSU9OKDQsIDYsIDApID4g TElOVVhfVkVSU0lPTl9DT0RFDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlvdmFf bW9kZSA9PSBSVEVfSU9WQV9WQSkgew0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaW92YV9tb2RlID0gUlRFX0lPVkFfUEE7DQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBSVEVfTE9HKFdBUk5JTkcsIEVBTCwgIkZvcmNpbmcgSU9WQSBhcyAnUEEnIGJlY2F1 c2UgS05JDQo+IG1vZHVsZSBpcyBsb2FkZWRcbiIpOw0KPiA+IC0gICAgICAgICAgICAgICAgICAg ICAgIH0gZWxzZSB7DQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVEVfTE9H KERFQlVHLCBFQUwsICJLTkkgY2FuIG5vdCB3b3JrIHNpbmNlIHBoeXNpY2FsDQo+IGFkZHJlc3Nl cyBhcmUgdW5hdmFpbGFibGVcbiIpOw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUlRFX0xPRyhXQVJOSU5HLCBFQUwsICJGb3JjaW5nIElPVkEgYXMgJ1BBJyBiZWNhdXNlICIN Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiS2Vy bmVsIHZlcnNpb24gc3VwcG9ydHMgb25seSAnUEEnIG1vZGUgZm9yIEtOSQ0KPiBtb2R1bGVcbiIp Ow0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIH0NCj4gPiArI2VuZGlmDQo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgaWYgKHJ0ZV9idXNfZ2V0X2lvbW11X2NsYXNzKCkgPT0gUlRFX0lP VkFfREMpDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpb3ZhX21vZGUgPSBS VEVfSU9WQV9QQTsNCj4gDQo+IElmIHBoeXNpY2FsIGFkZHJlc3NlcyBhcmUgdW5hdmFpbGFibGUs IHRoaXMgY29kZSBmb3JjZXMgUEEgYW55d2F5Lg0KPiANCj4gDQo+ID4gKw0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgIGlmIChpb3ZhX21vZGUgPT0gUlRFX0lPVkFfUEEpIHsNCj4gPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwaHlzX2FkZHJzICYmIGlzX2lvbW11X2Vu YWJsZWQoKSkNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRF X0xPRyhXQVJOSU5HLCBFQUwsICJGb3JjZWQNCj4gPiArIElPVkEgYXMgJ1BBJyBiZWNhdXNlIEtO SSBtb2R1bGUgaXMgbG9hZGVkXG4iKTsNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpZiAoIXBoeXNfYWRkcnMpDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJURV9MT0coREVCVUcsIEVBTCwgIktOSSBjYW4NCj4gPiArIG5vdCB3 b3JrIHNpbmNlIHBoeXNpY2FsIGFkZHJlc3NlcyBhcmUgdW5hdmFpbGFibGVcbiIpOw0KPiA+ICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCj4gDQo+IENoZWNraW5nIHBoeXNpY2FsIGFkZHJlc3Nl cyBhdmFpbGFiaWxpdHkgYWZ0ZXIsIGFuZCBoYXZpbmcgYSBsb2cgaXMgbm90IGVub3VnaC4NCj4g DQo+IA0KPiBTbyBmYXIsIEtOSSBjb3VsZCBub3Qgd29yayB3aXRoIElPVkEgYXMgVkEuDQo+IFlv dXIgcGF0Y2hzZXQgYWRkcyBzdXBwb3J0IGZvciBJT1ZBIGFzIFZBIGlmIGtlcm5lbCBpcyA+PSA0 LjYuDQo+IFJlcGVhdGluZyBteSBwcm9wb3NhbCAoYXMgZmFyIGFzIGVhbC5jIGlzIGNvbmNlcm5l ZCkgb2YganVzdCBjaGFuZ2luZzoNCg0KVG8ga2VlcCB0aGUgZXhpc3RpbmcgYmVoYXZpb3IgaW50 YWN0IHdoZW4gYnVzIGlvbW11IHJldHVybnMgSU9WQV9EQywgaGFkIHRvIGhhbmRsZSB0aG9zZSBj YXNlIGFsc28gaGVyZS4NCg0KSG93IGFib3V0IGJlbG93IHNjaGVtZToNCg0KI2lmZGVmIFJURV9M SUJSVEVfS05JDQotICAgICAgICAgICAgICAgLyogV29ya2Fyb3VuZCBmb3IgS05JIHdoaWNoIHJl cXVpcmVzIHBoeXNpY2FsIGFkZHJlc3MgdG8gd29yayAqLw0KLSAgICAgICAgICAgICAgIGlmIChp b3ZhX21vZGUgPT0gUlRFX0lPVkFfVkEgJiYNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcnRlX2VhbF9jaGVja19tb2R1bGUoInJ0ZV9rbmkiKSA9PSAxKSB7DQotICAgICAgICAgICAg ICAgICAgICAgICBpZiAocGh5c19hZGRycykgew0KLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpb3ZhX21vZGUgPSBSVEVfSU9WQV9QQTsNCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUlRFX0xPRyhXQVJOSU5HLCBFQUwsICJGb3JjaW5nIElPVkEgYXMgJ1BBJyBiZWNhdXNl IEtOSSBtb2R1bGUgaXMgbG9hZGVkXG4iKTsNCi0gICAgICAgICAgICAgICAgICAgICAgIH0gZWxz ZSB7DQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJURV9MT0coREVCVUcsIEVBTCwg IktOSSBjYW4gbm90IHdvcmsgc2luY2UgcGh5c2ljYWwgYWRkcmVzc2VzIGFyZSB1bmF2YWlsYWJs ZVxuIik7DQorICAgICAgICAgICAgICAgaWYgKHJ0ZV9lYWxfY2hlY2tfbW9kdWxlKCJydGVfa25p IikgPT0gMSkgew0KKyAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBmb3JjZV9pb3ZhX2FzX3Bh ID0gZmFsc2U7DQorI2lmIEtFUk5FTF9WRVJTSU9OKDQsIDYsIDApID4gTElOVVhfVkVSU0lPTl9D T0RFDQorICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW92YV9tb2RlID09IFJURV9JT1ZBX1ZB KSB7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlX2lvdmFfYXNfcGEgPSB0 cnVlOw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVEVfTE9HKFdBUk5JTkcsIEVB TCwgIkZvcmNpbmcgSU9WQSBhcyAnUEEnIGJlY2F1c2UgIg0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIktlcm5lbCB2ZXJzaW9uIHN1cHBvcnRzIG9ubHkg J1BBJyBtb2RlIGZvciBLTkkgbW9kdWxlXG4iKTsNCisgICAgICAgICAgICAgICAgICAgICAgIH0N CisjZW5kaWYNCisgICAgICAgICAgICAgICAgICAgICAgIGlmIChydGVfYnVzX2dldF9pb21tdV9j bGFzcygpID09IFJURV9JT1ZBX0RDKQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm b3JjZV9pb3ZhX2FzX3BhID0gdHJ1ZTsNCisNCisgICAgICAgICAgICAgICAgICAgICAgIGlmIChm b3JjZV9pb3ZhX2FzX3BhKSB7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChw aHlzX2FkZHJzKSB7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW92 YV9tb2RlID0gUlRFX0lPVkFfUEE7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUlRFX0xPRyhXQVJOSU5HLCBFQUwsICJGb3JjZWQgSU9WQSBhcyAnUEEnIGJlY2F1c2Ug S05JIG1vZHVsZSBpcyBsb2FkZWRcbiIpOw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB9IGVsc2UNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVEVfTE9H KERFQlVHLCBFQUwsICJLTkkgY2FuIG5vdCB3b3JrIHNpbmNlIHBoeXNpY2FsIGFkZHJlc3NlcyBh cmUgdW5hdmFpbGFibGVcbiIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgIH0NCiAjZW5kaWYNCg0KDQoNCj4gDQo+IEBAIC0xMDg1LDcgKzEwODUsNyBAQCBydGVf ZWFsX2luaXQoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0KPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJURV9MT0coREVCVUcsIEVBTCwgIklPTU1VIGlzIG5vdCBhdmFpbGFibGUsIHNl bGVjdGluZw0KPiBJT1ZBIGFzIFBBIG1vZGUuXG4iKTsNCj4gICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KPiAgICAgICAgICAgICAgICAgfQ0KPiAtI2lmZGVmIFJURV9MSUJSVEVfS05JDQo+ICsj aWYgZGVmaW5lZChSVEVfTElCUlRFX0tOSSkgJiYgS0VSTkVMX1ZFUlNJT04oNCwgNiwgMCkgPg0K PiArTElOVVhfVkVSU0lPTl9DT0RFDQo+ICAgICAgICAgICAgICAgICAvKiBXb3JrYXJvdW5kIGZv ciBLTkkgd2hpY2ggcmVxdWlyZXMgcGh5c2ljYWwgYWRkcmVzcyB0byB3b3JrICovDQo+ICAgICAg ICAgICAgICAgICBpZiAoaW92YV9tb2RlID09IFJURV9JT1ZBX1ZBICYmDQo+IA0KPiANCj4gDQo+ IC0tDQo+IERhdmlkIE1hcmNoYW5kDQoNCg==