From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2AEA8A046B for ; Sat, 27 Jul 2019 15:47:38 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BD6201C1A6; Sat, 27 Jul 2019 15:47:36 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 32E141C121 for ; Sat, 27 Jul 2019 15:47:35 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x6RDhNAd027250 for ; Sat, 27 Jul 2019 06:47:34 -0700 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-id : content-transfer-encoding : mime-version; s=pfpt0818; bh=/ZxTWfHkSzUxQpubpF/tSSMhy6bWk14qECKfljS/BsM=; b=U14MSY4p3o0+r625pLxHUYeKZ/sjVpAhbHqfio/8BODMrAg9PKB+j1T1XsPBG6UsP2Ce 4P8Gulja5EHRTPs/5EjMpv2o6ma0ddE2p33Wn0sng+1mkPkBOltyYZ12wiq2NegK3NEK aGH6wcWe+1SvGCsebV7FEOkty4coHU+p0zmBG76fezvepo5U72+xKIEDnVIoqCvE3lD9 WUiahx11PrJuUSy7pX6r004lv5Py97/GtJEAqWkWji+BchfIKPYChOEAfVI8JVZKG6Wr QtSB4JhN8cAaxsSxAL7NUyaGHYx//Q3ENJQpDMHfWSkL7jnbKr8szHQHrxaduRQP2Xyy OQ== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0b-0016f401.pphosted.com with ESMTP id 2u0p4kr96t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Sat, 27 Jul 2019 06:47:34 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Sat, 27 Jul 2019 06:47:32 -0700 Received: from NAM01-SN1-obe.outbound.protection.outlook.com (104.47.32.53) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Sat, 27 Jul 2019 06:47:32 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ICmYLVo/CLCkzwQ6dfSoRwLIXgyr1hnhWYpK7ScZdtp03+tAPt/pCJHEf7E7qVtL3Mv80tQYe+BH+9QVgcKxJ9slOmgfgm1OWoEd9tCrlhLnr1I3BrXAVj4wumPrJMNdGgdF7Zsi1QqI7mXCB2EsD9VKmkpcTc1EQTQErro9ZgoBkDM6mNK8gW8+Cxs4ZDhHRiRAy9E7vx6w7aKAmoPKEJ3/w+Mb1lTrZZnF60yODEHiNT45iRF4AW3r8oC8pZm/c+jkpIyL4rCvpjijYCJ13MLIoNRUT3yY04rwEFg1ajiJUjanHwQDz3HfaMXtP1leG14x25gxqeX722koDnFJAg== 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=/ZxTWfHkSzUxQpubpF/tSSMhy6bWk14qECKfljS/BsM=; b=WM/9nNruSqCgSbBVSZqFbr0pbwr7i22Ola9O+ieG23nG47yOGCsew89VZPJlXSfDWBJsc6vVXGn+zieSY9W8SmQRgNcsPe7UvG+KDtYM+1nFMDQp6q0T8VD2QLYJI9EKKsjiflA1KweU9wdseUEuwoHNq2bbk8EkU4LPe26SLFF18J/XQG6cAxAg1qsx1Y3/V7QLu4BXHAMFmP9h8GKzJauoepDklfX9Gi4oik+5EpRwT7mQawTk2GMDJ2IdzAtsFV/J9hGpsPwOVn/jaQ5pg8osDia6XylZDC0s9qdkYkaErMj0z/MKIDs+X/0aPIcFU76ZyOl1SEsdplpmMHTmRQ== 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=selector2-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/ZxTWfHkSzUxQpubpF/tSSMhy6bWk14qECKfljS/BsM=; b=KSTxb+vNzdU+l5ByOFcXRF11z3/vKucCZTFHwEcLm/zWwGINLgZas5RqmeiPDwCS7ZgIyWZZ3BpqQLEtbFcR5xp34KWI0szcjMBHXifNpO+4Zf3kOEITTyRej4t0domZFqOY3+lm93WFfcrJbsnmULW2DbcvEs8JPlcWMYmlkFc= Received: from DM6PR18MB2427.namprd18.prod.outlook.com (20.179.104.21) by DM6PR18MB3305.namprd18.prod.outlook.com (10.255.173.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2094.16; Sat, 27 Jul 2019 13:47:30 +0000 Received: from DM6PR18MB2427.namprd18.prod.outlook.com ([fe80::596a:8214:e9d:50c3]) by DM6PR18MB2427.namprd18.prod.outlook.com ([fe80::596a:8214:e9d:50c3%3]) with mapi id 15.20.2115.005; Sat, 27 Jul 2019 13:47:29 +0000 From: Nithin Kumar Dabilpuram To: Sunil Kumar Kori , Jerin Jacob Kollanukkaran , Kiran Kumar Kokkilagadda CC: "dev@dpdk.org" Thread-Topic: [EXT] [dpdk-dev] [PATCH v2 1/1] net/octeontx2: fix handling indirect mbufs during Tx Thread-Index: AQHVRIHVisaswDcHP0GMPFlT9qFyFg== Date: Sat, 27 Jul 2019 13:47:29 +0000 Message-ID: <5b218c62-3f1b-ee58-ecf0-43a0df4319cb@marvell.com> References: <1564033387-14927-1-git-send-email-skori@marvell.com> <1564042860-27927-1-git-send-email-skori@marvell.com> In-Reply-To: <1564042860-27927-1-git-send-email-skori@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: MA1PR01CA0083.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a00::23) To DM6PR18MB2427.namprd18.prod.outlook.com (2603:10b6:5:180::21) x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [183.83.135.63] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4836e25f-6637-494f-8003-08d71298f795 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:DM6PR18MB3305; x-ms-traffictypediagnostic: DM6PR18MB3305: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:765; x-forefront-prvs: 01110342A5 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(136003)(39850400004)(396003)(376002)(366004)(189003)(199004)(22813001)(71200400001)(26005)(186003)(386003)(102836004)(71190400001)(52116002)(6486002)(53936002)(6436002)(6246003)(478600001)(99286004)(68736007)(25786009)(6116002)(6506007)(11346002)(8676002)(110136005)(36756003)(76176011)(3846002)(66066001)(6512007)(2616005)(476003)(53546011)(446003)(7736002)(14454004)(86362001)(4326008)(66946007)(256004)(5660300002)(66446008)(81156014)(66556008)(81166006)(66476007)(14444005)(64756008)(31696002)(8936002)(2906002)(486006)(229853002)(31686004)(305945005)(316002)(6636002); DIR:OUT; SFP:1101; SCL:1; SRVR:DM6PR18MB3305; H:DM6PR18MB2427.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-message-info: /Q1qVVwrlqlAmudoWteyH9GwelSQmEc61K0NEa2iXhMVRINxDxcla/GmWqX0zmycBVx64YmGU2l1FcP6B/5cZtyUPIeLEffseGwWWbsEt6DRU74OtYNy4iC9TKp7Cr+RljR9PL1KsAEnpBcKTxso0/4QikB5n/+yiaHyo0Fifj5DMRHKJEafHWlxymHWduAEOyBIxpH5Bv2UKQgpjK+P+BelsEZB5KNPjBLTQLQ7fVGUNwWbdxfB77qd5JNLD7gQVyPB/UEAJYI33pXHOfVwFOj3cy8Um/DD+OF7nu/ApcWIwvC4rXOcu/ewiBlqraUKD5WpfX0opMQkGvJYmSke31RPCvFnEB1lmXYMM5DORfFwjJ6b/jBYfKMuECajcP0xGIypTwJHdGP/I6xMguDnxoQgQbTXC4nUNcH5C9Simfc= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 4836e25f-6637-494f-8003-08d71298f795 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jul 2019 13:47:29.8281 (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: ndabilpuram@marvell.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR18MB3305 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:5.22.84,1.0.8 definitions=2019-07-27_10:2019-07-26,2019-07-27 signatures=0 Subject: Re: [dpdk-dev] [EXT] [PATCH v2 1/1] net/octeontx2: fix handling indirect mbufs during Tx 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" DQoNCk9uIDcvMjUvMjAxOSAxOjUwIFBNLCBTdW5pbCBLdW1hciBLb3JpIHdyb3RlOg0KPiBFeHRl cm5hbCBFbWFpbA0KPg0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IE11bHRpIHNlZ21lbnRlZCBwYWNrZXQg bWF5IGJlIHNwbGljZWQgd2l0aCBpbmRpcmVjdCBtYnVmcyBhbHNvLg0KPiBDdXJyZW50bHkgZHJp dmVyIGNhdXNlcyBidWZmZXIgbGVhayBmb3IgaW5kaXJlY3QgbWJ1ZnMgYXMgdGhleQ0KPiB3ZXJl IG5vdCBiZWluZyBmcmVlZCB0byBwYWNrZXQgcG9vbC4NCj4NCj4gUGF0Y2ggZml4ZXMgaGFuZGxp bmcgb2YgaW5kaXJlY3QgbWJ1ZnMgZm9yIGZvbGxvd2luZyB1c2UgY2FzZXMNCj4gLSBwYWNrZXQg Y29udGFpbnMgYWxsIGluZGlyZWN0IG1idWZzIG9ubHkuDQo+IC0gcGFja2V0IGNvbnRhaW5zIG1p eGVkIG1idWZzIGkuZS4gZGlyZWN0IGFuZCBpbmRpcmVjdCBib3RoLg0KPg0KPiBGaXhlczogY2Jk NTcxMGRiNDhkICgibmV0L29jdGVvbnR4MjogYWRkIFR4IG11bHRpIHNlZ21lbnQgdmVyc2lvbiIp DQo+DQo+IFNpZ25lZC1vZmYtYnk6IFN1bmlsIEt1bWFyIEtvcmkgPHNrb3JpQG1hcnZlbGwuY29t Pg0KQWNrZWQtYnk6IE5pdGhpbiBEYWJpbHB1cmFtIDxuZGFiaWxwdXJhbUBtYXJ2ZWxsLmNvbT4N Cj4gLS0tDQo+IHYyOg0KPiAgIC0gQWRkIEZpeGVzIHRhZw0KPg0KPiAgIGRyaXZlcnMvbmV0L29j dGVvbnR4Mi9vdHgyX3R4LmMgfCAgOCArKy0tDQo+ICAgZHJpdmVycy9uZXQvb2N0ZW9udHgyL290 eDJfdHguaCB8IDgyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tDQo+ ICAgMiBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkNCj4N Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L29jdGVvbnR4Mi9vdHgyX3R4LmMgYi9kcml2ZXJz L25ldC9vY3Rlb250eDIvb3R4Ml90eC5jDQo+IGluZGV4IDZiY2U1NTEuLjBkY2FkZmYgMTAwNjQ0 DQo+IC0tLSBhL2RyaXZlcnMvbmV0L29jdGVvbnR4Mi9vdHgyX3R4LmMNCj4gKysrIGIvZHJpdmVy cy9uZXQvb2N0ZW9udHgyL290eDJfdHguYw0KPiBAQCAtMTc4LDcgKzE3OCw3IEBADQo+ICAgCQkJ bWJ1ZiA9IChzdHJ1Y3QgcnRlX21idWYgKikoKHVpbnRwdHJfdCltYnVmMCAtDQo+ICAgCQkJCW9m ZnNldG9mKHN0cnVjdCBydGVfbWJ1ZiwgYnVmX2lvdmEpKTsNCj4gICANCj4gLQkJCWlmIChydGVf cGt0bWJ1Zl9wcmVmcmVlX3NlZyhtYnVmKSA9PSBOVUxMKQ0KPiArCQkJaWYgKG90eDJfbml4X3By ZWZyZWVfc2VnKG1idWYpKQ0KPiAgIAkJCQl2c2V0cV9sYW5lX3U2NCgweDgwMDAwLCB4bWFzazAx LCAwKTsNCj4gICAJCQllbHNlDQo+ICAgCQkJCV9fbWVtcG9vbF9jaGVja19jb29raWVzKG1idWYt PnBvb2wsDQo+IEBAIC0xODcsNyArMTg3LDcgQEANCj4gICANCj4gICAJCQltYnVmID0gKHN0cnVj dCBydGVfbWJ1ZiAqKSgodWludHB0cl90KW1idWYxIC0NCj4gICAJCQkJb2Zmc2V0b2Yoc3RydWN0 IHJ0ZV9tYnVmLCBidWZfaW92YSkpOw0KPiAtCQkJaWYgKHJ0ZV9wa3RtYnVmX3ByZWZyZWVfc2Vn KG1idWYpID09IE5VTEwpDQo+ICsJCQlpZiAob3R4Ml9uaXhfcHJlZnJlZV9zZWcobWJ1ZikpDQo+ ICAgCQkJCXZzZXRxX2xhbmVfdTY0KDB4ODAwMDAsIHhtYXNrMDEsIDEpOw0KPiAgIAkJCWVsc2UN Cj4gICAJCQkJX19tZW1wb29sX2NoZWNrX2Nvb2tpZXMobWJ1Zi0+cG9vbCwNCj4gQEAgLTE5Niw3 ICsxOTYsNyBAQA0KPiAgIA0KPiAgIAkJCW1idWYgPSAoc3RydWN0IHJ0ZV9tYnVmICopKCh1aW50 cHRyX3QpbWJ1ZjIgLQ0KPiAgIAkJCQlvZmZzZXRvZihzdHJ1Y3QgcnRlX21idWYsIGJ1Zl9pb3Zh KSk7DQo+IC0JCQlpZiAocnRlX3BrdG1idWZfcHJlZnJlZV9zZWcobWJ1ZikgPT0gTlVMTCkNCj4g KwkJCWlmIChvdHgyX25peF9wcmVmcmVlX3NlZyhtYnVmKSkNCj4gICAJCQkJdnNldHFfbGFuZV91 NjQoMHg4MDAwMCwgeG1hc2syMywgMCk7DQo+ICAgCQkJZWxzZQ0KPiAgIAkJCQlfX21lbXBvb2xf Y2hlY2tfY29va2llcyhtYnVmLT5wb29sLA0KPiBAQCAtMjA1LDcgKzIwNSw3IEBADQo+ICAgDQo+ ICAgCQkJbWJ1ZiA9IChzdHJ1Y3QgcnRlX21idWYgKikoKHVpbnRwdHJfdCltYnVmMyAtDQo+ICAg CQkJCW9mZnNldG9mKHN0cnVjdCBydGVfbWJ1ZiwgYnVmX2lvdmEpKTsNCj4gLQkJCWlmIChydGVf cGt0bWJ1Zl9wcmVmcmVlX3NlZyhtYnVmKSA9PSBOVUxMKQ0KPiArCQkJaWYgKG90eDJfbml4X3By ZWZyZWVfc2VnKG1idWYpKQ0KPiAgIAkJCQl2c2V0cV9sYW5lX3U2NCgweDgwMDAwLCB4bWFzazIz LCAxKTsNCj4gICAJCQllbHNlDQo+ICAgCQkJCV9fbWVtcG9vbF9jaGVja19jb29raWVzKG1idWYt PnBvb2wsDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9vY3Rlb250eDIvb3R4Ml90eC5oIGIv ZHJpdmVycy9uZXQvb2N0ZW9udHgyL290eDJfdHguaA0KPiBpbmRleCBiNzVhMjIwLi44N2U3NDdm IDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9vY3Rlb250eDIvb3R4Ml90eC5oDQo+ICsrKyBi L2RyaXZlcnMvbmV0L29jdGVvbnR4Mi9vdHgyX3R4LmgNCj4gQEAgLTU4LDYgKzU4LDcyIEBADQo+ ICAgCX0NCj4gICB9DQo+ICAgDQo+ICtzdGF0aWMgX19ydGVfYWx3YXlzX2lubGluZSB1aW50NjRf dA0KPiArb3R4Ml9wa3RtYnVmX2RldGFjaChzdHJ1Y3QgcnRlX21idWYgKm0pDQo+ICt7DQo+ICsJ c3RydWN0IHJ0ZV9tZW1wb29sICptcCA9IG0tPnBvb2w7DQo+ICsJdWludDMyX3QgbWJ1Zl9zaXpl LCBidWZfbGVuOw0KPiArCXN0cnVjdCBydGVfbWJ1ZiAqbWQ7DQo+ICsJdWludDE2X3QgcHJpdl9z aXplOw0KPiArCXVpbnQxNl90IHJlZmNvdW50Ow0KPiArDQo+ICsJLyogVXBkYXRlIHJlZmNvdW50 IG9mIGRpcmVjdCBtYnVmICovDQo+ICsJbWQgPSBydGVfbWJ1Zl9mcm9tX2luZGlyZWN0KG0pOw0K PiArCXJlZmNvdW50ID0gcnRlX21idWZfcmVmY250X3VwZGF0ZShtZCwgLTEpOw0KPiArDQo+ICsJ cHJpdl9zaXplID0gcnRlX3BrdG1idWZfcHJpdl9zaXplKG1wKTsNCj4gKwltYnVmX3NpemUgPSAo dWludDMyX3QpKHNpemVvZihzdHJ1Y3QgcnRlX21idWYpICsgcHJpdl9zaXplKTsNCj4gKwlidWZf bGVuID0gcnRlX3BrdG1idWZfZGF0YV9yb29tX3NpemUobXApOw0KPiArDQo+ICsJbS0+cHJpdl9z aXplID0gcHJpdl9zaXplOw0KPiArCW0tPmJ1Zl9hZGRyID0gKGNoYXIgKiltICsgbWJ1Zl9zaXpl Ow0KPiArCW0tPmJ1Zl9pb3ZhID0gcnRlX21lbXBvb2xfdmlydDJpb3ZhKG0pICsgbWJ1Zl9zaXpl Ow0KPiArCW0tPmJ1Zl9sZW4gPSAodWludDE2X3QpYnVmX2xlbjsNCj4gKwlydGVfcGt0bWJ1Zl9y ZXNldF9oZWFkcm9vbShtKTsNCj4gKwltLT5kYXRhX2xlbiA9IDA7DQo+ICsJbS0+b2xfZmxhZ3Mg PSAwOw0KPiArCW0tPm5leHQgPSBOVUxMOw0KPiArCW0tPm5iX3NlZ3MgPSAxOw0KPiArDQo+ICsJ LyogTm93IGluZGlyZWN0IG1idWYgaXMgc2FmZSB0byBmcmVlICovDQo+ICsJcnRlX3BrdG1idWZf ZnJlZShtKTsNCj4gKw0KPiArCWlmIChyZWZjb3VudCA9PSAwKSB7DQo+ICsJCXJ0ZV9tYnVmX3Jl ZmNudF9zZXQobWQsIDEpOw0KPiArCQltZC0+ZGF0YV9sZW4gPSAwOw0KPiArCQltZC0+b2xfZmxh Z3MgPSAwOw0KPiArCQltZC0+bmV4dCA9IE5VTEw7DQo+ICsJCW1kLT5uYl9zZWdzID0gMTsNCj4g KwkJcmV0dXJuIDA7DQo+ICsJfSBlbHNlIHsNCj4gKwkJcmV0dXJuIDE7DQo+ICsJfQ0KPiArfQ0K PiArDQo+ICtzdGF0aWMgX19ydGVfYWx3YXlzX2lubGluZSB1aW50NjRfdA0KPiArb3R4Ml9uaXhf cHJlZnJlZV9zZWcoc3RydWN0IHJ0ZV9tYnVmICptKQ0KPiArew0KPiArCWlmIChsaWtlbHkocnRl X21idWZfcmVmY250X3JlYWQobSkgPT0gMSkpIHsNCj4gKwkJaWYgKCFSVEVfTUJVRl9ESVJFQ1Qo bSkpDQo+ICsJCQlyZXR1cm4gb3R4Ml9wa3RtYnVmX2RldGFjaChtKTsNCj4gKw0KPiArCQltLT5u ZXh0ID0gTlVMTDsNCj4gKwkJbS0+bmJfc2VncyA9IDE7DQo+ICsJCXJldHVybiAwOw0KPiArCX0g ZWxzZSBpZiAocnRlX21idWZfcmVmY250X3VwZGF0ZShtLCAtMSkgPT0gMCkgew0KPiArCQlpZiAo IVJURV9NQlVGX0RJUkVDVChtKSkNCj4gKwkJCXJldHVybiBvdHgyX3BrdG1idWZfZGV0YWNoKG0p Ow0KPiArDQo+ICsJCXJ0ZV9tYnVmX3JlZmNudF9zZXQobSwgMSk7DQo+ICsJCW0tPm5leHQgPSBO VUxMOw0KPiArCQltLT5uYl9zZWdzID0gMTsNCj4gKwkJcmV0dXJuIDA7DQo+ICsJfQ0KPiArDQo+ ICsJLyogTWJ1ZiBpcyBoYXZpbmcgcmVmY291bnQgbW9yZSB0aGFuIDEgc28gbmVlZCBub3QgdG8g YmUgZnJlZWQgKi8NCj4gKwlyZXR1cm4gMTsNCj4gK30NCj4gKw0KPiAgIHN0YXRpYyBpbmxpbmUg dm9pZA0KPiAgIG90eDJfbml4X3htaXRfcHJlcGFyZShzdHJ1Y3QgcnRlX21idWYgKm0sIHVpbnQ2 NF90ICpjbWQsIGNvbnN0IHVpbnQxNl90IGZsYWdzKQ0KPiAgIHsNCj4gQEAgLTE4OSw5ICsyNTUs MTEgQEANCj4gICAJCSoocnRlX2lvdmFfdCAqKSgrK3NnKSA9IHJ0ZV9tYnVmX2RhdGFfaW92YSht KTsNCj4gICANCj4gICAJCWlmIChmbGFncyAmIE5JWF9UWF9PRkZMT0FEX01CVUZfTk9GRl9GKSB7 DQo+IC0JCQkvKiBTZXQgZG9uJ3QgZnJlZSBiaXQgaWYgcmVmZXJlbmNlIGNvdW50ID4gMSAqLw0K PiAtCQkJaWYgKHJ0ZV9wa3RtYnVmX3ByZWZyZWVfc2VnKG0pID09IE5VTEwpDQo+IC0JCQkJc2Vu ZF9oZHItPncwLmRmID0gMTsgLyogU0VUIERGICovDQo+ICsJCQkvKiBERiBiaXQgPSAxIGlmIHJl ZmNvdW50IG9mIGN1cnJlbnQgbWJ1ZiBvciBwYXJlbnQgbWJ1Zg0KPiArCQkJICoJCWlzIGdyZWF0 ZXIgdGhhbiAxDQo+ICsJCQkgKiBERiBiaXQgPSAwIG90aGVyd2lzZQ0KPiArCQkJICovDQo+ICsJ CQlzZW5kX2hkci0+dzAuZGYgPSBvdHgyX25peF9wcmVmcmVlX3NlZyhtKTsNCj4gICAJCX0NCj4g ICAJCS8qIE1hcmsgbWVtcG9vbCBvYmplY3QgYXMgInB1dCIgc2luY2UgaXQgaXMgZnJlZWQgYnkg TklYICovDQo+ICAgCQlpZiAoIXNlbmRfaGRyLT53MC5kZikNCj4gQEAgLTIzMyw2ICszMDEsOCBA QA0KPiAgIAkJb2ZmID0gMDsNCj4gICANCj4gICAJc2cgPSAodW5pb24gbml4X3NlbmRfc2dfcyAq KSZjbWRbMiArIG9mZl07DQo+ICsJLyogQ2xlYXIgc2ctPnUgaGVhZGVyIGJlZm9yZSB1c2UgKi8N Cj4gKwlzZy0+dSAmPSAweEZDMDAwMDAwMDAwMDAwMDA7DQo+ICAgCXNnX3UgPSBzZy0+dTsNCj4g ICAJc2xpc3QgPSAmY21kWzMgKyBvZmZdOw0KPiAgIA0KPiBAQCAtMjQ0LDExICszMTQsOSBAQA0K PiAgIAkJbV9uZXh0ID0gbS0+bmV4dDsNCj4gICAJCXNnX3UgPSBzZ191IHwgKCh1aW50NjRfdClt LT5kYXRhX2xlbiA8PCAoaSA8PCA0KSk7DQo+ICAgCQkqc2xpc3QgPSBydGVfbWJ1Zl9kYXRhX2lv dmEobSk7DQo+IC0JCS8qIFNldCBpbnZlcnQgZGYgaWYgcmVmZXJlbmNlIGNvdW50ID4gMSAqLw0K PiArCQkvKiBTZXQgaW52ZXJ0IGRmIGlmIGJ1ZmZlciBpcyBub3QgdG8gYmUgZnJlZWQgYnkgSC9X ICovDQo+ICAgCQlpZiAoZmxhZ3MgJiBOSVhfVFhfT0ZGTE9BRF9NQlVGX05PRkZfRikNCj4gLQkJ CXNnX3UgfD0NCj4gLQkJCSgodWludDY0X3QpKHJ0ZV9wa3RtYnVmX3ByZWZyZWVfc2VnKG0pID09 IE5VTEwpIDw8DQo+IC0JCQkgKGkgKyA1NSkpOw0KPiArCQkJc2dfdSB8PQkob3R4Ml9uaXhfcHJl ZnJlZV9zZWcobSkgPDwgKGkgKyA1NSkpOw0KPiAgIAkJLyogTWFyayBtZW1wb29sIG9iamVjdCBh cyAicHV0IiBzaW5jZSBpdCBpcyBmcmVlZCBieSBOSVggKi8NCj4gICAJCWlmICghKHNnX3UgJiAo MVVMTCA8PCAoaSArIDU1KSkpKSB7DQo+ICAgCQkJbS0+bmV4dCA9IE5VTEw7DQoNCg==