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 B0149A0032; Tue, 28 Sep 2021 11:42:20 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4DBED410D7; Tue, 28 Sep 2021 11:42:20 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mails.dpdk.org (Postfix) with ESMTP id 6DF0440E3C for ; Tue, 28 Sep 2021 11:42:18 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10120"; a="211745732" X-IronPort-AV: E=Sophos;i="5.85,329,1624345200"; d="scan'208";a="211745732" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2021 02:42:17 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,329,1624345200"; d="scan'208";a="553922899" Received: from fmsmsx604.amr.corp.intel.com ([10.18.126.84]) by FMSMGA003.fm.intel.com with ESMTP; 28 Sep 2021 02:42:16 -0700 Received: from fmsmsx608.amr.corp.intel.com (10.18.126.88) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 28 Sep 2021 02:42:16 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx608.amr.corp.intel.com (10.18.126.88) 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, 28 Sep 2021 02:42:16 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.105) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Tue, 28 Sep 2021 02:42:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EkfSQb/EZBKgN7bYeFPp8/JlBbo5LBsBEVz6hE43qCkoC+NyDaecms6ARJCY4YifIsyWzOM4kaswEYZ86oSG5Z7SrFfgvs1ZaIU94lgc6mjQrT9/qvopgt0CuWb1X1ZDML1I1VSVbToeckTq8XTg7bjzk+T00S63nCoibhyzAi5ncX/O/Rn0WRKbl2sjpAFvuNsc+XGxiQKytlIg6m1cQQTiuU9+2qmZZ8I4H584A16byrCUndktF1mXZt7E/s/8yhGOrpsn/LArnAHj1OnAPj5w5j0LQt7HsYbt5+dzlpHtO0CcMyj+gFS+xWjbKRcdq/wH0gDdpjT1Kc4VDtxfoQ== 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; bh=w4aKXUnFPhKUNZGYkKPzfk/Qiz01Sbd/mivlWDmX6Bw=; b=iDP4m7cvdUkylXknM45UCwK+awqx8WwlDwqBiwaHOvoiskvkFOQJ07qha9v46prN+7Pps9P/TRJ8zjc3Z20vWB1r8rSQ4ZMFOCiDtufG0F826hCIHep3Gk5mIdG717PXde4S6x2vq61JMcp9+JziHrr8AYNG4dX5xuRr7und2qIFL4/KueXqN3QN3J59LaB+ljt3FXlGZm9WB9eGD9Ehf50D+M4QN5/71vNIrX0UghI+1jEfotRqRghUjwaP6gD/dnUpIBP1XSH4I5GulAsmpsU2cPpTCpAq2iTAE2C+4ok94h1oNPCyJarJbkgByMYu0xQjuaRLwF3/NxszYGOUHA== 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=w4aKXUnFPhKUNZGYkKPzfk/Qiz01Sbd/mivlWDmX6Bw=; b=yFrPtyrhuSAhE07yY2mDVqm1TQ/AUr2WZa7CQb/4k/jxxyQOaQbZsaDzemUZz82/H0WRmdqD9GbIhQkEJo2mht8EL40NwsDAs/PBQc2aCACk3zvL7zHSWZPZcEHbMS37oGOiSzR9rBRRbdInOTfNyOnyGdV6hiWDb+bvDq0Ky0I= Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by DM6PR11MB2844.namprd11.prod.outlook.com (2603:10b6:5:c0::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.18; Tue, 28 Sep 2021 09:42:10 +0000 Received: from DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::740e:126e:c785:c8fd]) by DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::740e:126e:c785:c8fd%4]) with mapi id 15.20.4544.022; Tue, 28 Sep 2021 09:42:10 +0000 From: "Ananyev, Konstantin" To: Jerin Jacob , "Wang, Haiyue" CC: "dev@dpdk.org" , "Li, Xiaoyun" , "anoobj@marvell.com" , "jerinj@marvell.com" , "ndabilpuram@marvell.com" , "adwivedi@marvell.com" , "shepard.siegel@atomicrules.com" , "ed.czeck@atomicrules.com" , "john.miller@atomicrules.com" , "irusskikh@marvell.com" , "ajit.khaparde@broadcom.com" , "somnath.kotur@broadcom.com" , "rahul.lakkireddy@chelsio.com" , "hemant.agrawal@nxp.com" , "sachin.saxena@oss.nxp.com" , "Daley, John" , "hyonkim@cisco.com" , "Zhang, Qi Z" , "Wang, Xiao W" , "humin29@huawei.com" , "yisen.zhuang@huawei.com" , "oulijun@huawei.com" , "Xing, Beilei" , "Wu, Jingjing" , "Yang, Qiming" , "matan@nvidia.com" , "viacheslavo@nvidia.com" , "sthemmin@microsoft.com" , "longli@microsoft.com" , "heinrich.kuhn@corigine.com" , "kirankumark@marvell.com" , "andrew.rybchenko@oktetlabs.ru" , "mczekaj@marvell.com" , "jiawenwu@trustnetic.com" , "jianwang@trustnetic.com" , "maxime.coquelin@redhat.com" , "Xia, Chenbo" , "thomas@monjalon.net" , "Yigit, Ferruh" , "mdr@ashroe.eu" , "Jayatheerthan, Jay" Thread-Topic: [dpdk-dev] [RFC v2 3/5] ethdev: copy ethdev 'burst' API into separate structure Thread-Index: AQHXr7vJ2XIBp8Sn/U6jj6GgKJfF5quxIHoAgAcTkYCAAQVooA== Date: Tue, 28 Sep 2021 09:42:10 +0000 Message-ID: References: <20210820162834.12544-1-konstantin.ananyev@intel.com> <20210922140953.19388-1-konstantin.ananyev@intel.com> <20210922140953.19388-4-konstantin.ananyev@intel.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 443e4d08-784f-49f3-bf98-08d982643e4a x-ms-traffictypediagnostic: DM6PR11MB2844: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4714; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: LtHT5CXrQ7kLtIa3eXH5OJnCkKQRKR7TfPjuqRxqyyxiUox5yKr+CzLvUni/bwvGGVWWSVT9E8aeGGpLdyakvXljbnZvCbzNYQXm6XpdMC3Hyu2k7q6JTwBxKfGuhq7QLzzKsXJfrWaRemGNdNzDIHsxqDcs+h0mZjxWErqsAmAxUlCaWUYaHKgVZKKqV/JJrUDydwJJ52ochNrISBPp2xFcoTz9VCjDKs4ldHJ8YqOTQpjTL20ii+wqLGaDYqnFOPA/LiaYoRCiO3WZK0eyF6EQlhRY5k1kkMN0V8Ka9Fnr6QCoXAAMgmrKTjyUBTgzPdsyzX+2a7Eo8xCD0Iu53FSy09+mbIzLDkb0+TrLSrm0Rn4egW1LQirEUbuqv0C1A8BaXincx7Y0NWafM4i5HSsHJrs7YwQJUrWKBowqRain9+BhvwfiSU2ShrH0q7mISTZJZkW27LRRpIzatli7nRDl1M95Py0HMdq5JEyBYwFM6p8RBld94aAPTE2ANiG4MyRYGyqpdOi9v/y/Cq1DXNWL3qaP2sipIxE4FrtpJR/Yp/n8WiVe2Q6R1/7uz0VFbDy6pRaG01xQxTP9qUknwbhF23c8iZAKp1yvP4DHkYOxrsjGw/tFTO40z5kmlocQ9D9148xRWhAb1bqgWD7CuUPjpi1jBuNhXAG+weVh/njsDoDEgz/Rv+nPnR19y4fVhpbHxtHTkw97LkpcX87Grg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB4491.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(110136005)(4326008)(66446008)(64756008)(508600001)(66556008)(66946007)(7696005)(83380400001)(8936002)(5660300002)(66476007)(55016002)(316002)(107886003)(52536014)(54906003)(76116006)(6636002)(2906002)(71200400001)(38070700005)(7406005)(122000001)(7416002)(38100700002)(26005)(9686003)(33656002)(86362001)(6506007)(55236004)(8676002)(186003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YlNHL2ZLRXBmUFpTL2FJWDhLYzhpTDRBeXZBLytiWEcrdzlVMjVIZkVWVStC?= =?utf-8?B?TmNLR3RBUnRJWk9NdFdpSk5BMk81Tmdsb1JxZ1BmbExEQldxeTQrR3JENHhP?= =?utf-8?B?eHRxRksxQU1KdVNVMWlWTlRXRVVHUzN1V2V6c0NVRXFSaFlLT3NEVWtNc3oz?= =?utf-8?B?cXpWbCtDMDhlSWU4OFhrQVV4T3REY3Jac3dTVEJXbGcxVWFHVzZ2V1FaM0N6?= =?utf-8?B?ZENFRzg5S0NaeWlQYzZiV0NtcC9XN2FyT3hRbytDNWliaHk1dk1ZNy9zVzQz?= =?utf-8?B?a0grVGhML1NqZENuai9TZ2diQjVoQzRPaDNOOXVDUmtFVm5OcUhYS2puYStH?= =?utf-8?B?SmRhcWlBcnpGczdpV052UDRzVlR3N3A4TkEzZ1R2Tk0vQ1g0Z1k2cjdGRk1J?= =?utf-8?B?MUNQNlByMVgzYXNBZEI5WkwwaDJwdHFlUmJ1cWZRNU85alJxUkZyODJnVDRr?= =?utf-8?B?aE9UdUViNjdML3dvdmdyTk5MdHJheWlqOGxvb1ZWaDM4Z0o4Z3hhTEF0ZFJL?= =?utf-8?B?SzBDR0ZhZTlQTFpsVDF3b1VnM2NLRE16SHFudzIxYXhKS0N3bDZrYkloMkJp?= =?utf-8?B?QnJsNC9RUC80dkhUN1JsK1FOOVZVZGNpb2NOM2tFM25MSTFBblY0amNoRVhl?= =?utf-8?B?ekp6RGVmblV5TmtBdW1nUitWUndid2hZU0ZEcXZaK1JQdWpsemVRS3UxS0Ir?= =?utf-8?B?YkFjNk1ZZmkxZDhxZ3AvRGlRcEVLT2pVVGVCQnB6OSt4Ym5MdlN3QTdNcDMr?= =?utf-8?B?QlcvOEZiM2t3cTVCUHpwaU0wSWlvSWtEaldYNGI0c2s2TTR4allTaHE0ekV4?= =?utf-8?B?SHFwSmRzcUcyMWc2OUlGd0ZIN2YyaUh5bGRvMzN5c051T2lQRmJrZ1lvbXY0?= =?utf-8?B?Wk1ETyt5Z2h5THhIdWd3bVRsSXhvaGVHTjBnVXhpcDkreko2ZXlwaFZmSXRl?= =?utf-8?B?dUpuR1AzeDRaTWZ6V0c4alNZK2VralN4QStwVmZML0d3ckwrZm44MFVoc3RU?= =?utf-8?B?blN6T2hsNmxGR2pqNVVBNnR2R3FpR3Bid0NMb1hXaTZ0TG1uM2Z6VEVuQmlm?= =?utf-8?B?RS9vaUpLT1Ira0lteXpDYVlSdXR4V2NoVUk5d2xHc2FTMTZtTlQ1c1VMdG5J?= =?utf-8?B?ZWU5enRPYUNtRkE5djBONlFFSmIwN2ZSK1BhWWd2Ylk4aEcwNnJEU3BqUkIw?= =?utf-8?B?ci9pYlZBdFEwMk5jeElIbEEzMnkvT2NReFFTNC9DdE85S2Q1dlRFWityT1Fo?= =?utf-8?B?dVJqcFZuT2U3Vlk2TlFaSEtDeFltSXRtZE5yR1dUYlprQmdEaEpLRjVRTjNI?= =?utf-8?B?cjlhc1oxZmZuQ1BjNzM5ZkFDR2JkSVQxbnJDb2dOSDZFbmN2MnN5ZE14eGtw?= =?utf-8?B?SUpaOUxSQTlJdE5UN09oOEJDY2xyRmpjT1dnNlN3VUxVRTUzVDdhVlRGN0da?= =?utf-8?B?Z3NBMG9GbHJTUUtQNkc1YnZOTzNydG94TUt1Q3RRd1dXSm90UUlJMjlrb3pX?= =?utf-8?B?NUlvRVYrNkR3MWIxN2s4aGpVSzNUOEF3YitveHN6Q3Q1SkNNSkpRRmdNKzgw?= =?utf-8?B?UFJLbVRYUDh6eG12dEt1cHhQZGxkcHBkNW9KV3NuMzVvczlqb2lKQ0IyZ2k0?= =?utf-8?B?cjNlNmpvVll0a1RQN1BmMmF3UUphYkNwMW9vTkwyaWw3Uy9pNjJEM2p4T1ZT?= =?utf-8?B?WkVDSXlNZUdrNnBTWU9aeTUwUzVFRzlPODc0WVRoTEJMWU1najlwZHFGZFcz?= =?utf-8?Q?8J9HPL7Y4xZSt0DEVxWdlB//bkdKwDaopOdYZ0N?= 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: DM6PR11MB4491.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 443e4d08-784f-49f3-bf98-08d982643e4a X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Sep 2021 09:42:10.1143 (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: MQth1g/qFZK28erY1nXb93KxpytAonp1NpjrArqUc33/t9RtdlEoG0H+kQHL3AghycN0YRl0z5TYUnjdXUUbNueTh3vdbsEQiWI5o0A0i54= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB2844 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [RFC v2 3/5] ethdev: copy ethdev 'burst' API into separate structure 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 Sender: "dev" DQo+ID4gPg0KPiA+ID4gQ29weSBwdWJsaWMgZnVuY3Rpb24gcG9pbnRlcnMgKHJ4X3BrdF9idXJz dCgpLCBldGMuKSBhbmQgcmVsYXRlZA0KPiA+ID4gcG9pbnRlcnMgdG8gaW50ZXJuYWwgZGF0YSBm cm9tIHJ0ZV9ldGhfZGV2IHN0cnVjdHVyZSBpbnRvIGEgc2VwYXJhdGUgZmxhdA0KPiA+ID4gYXJy YXkuIFdlIGNhbiBrZWVwIGl0IHB1YmxpYyB0byBzdGlsbCB1c2UgaW5saW5lIGZ1bmN0aW9ucyBm b3IgJ2Zhc3QnIGNhbGxzDQo+ID4gPiAobGlrZSBydGVfZXRoX3J4X2J1cnN0KCksIGV0Yy4pIHRv IGF2b2lkL21pbmltaXplIHNsb3dkb3duLg0KPiA+ID4gVGhlIGludGVudGlvbiBpcyB0byBtYWtl IHJ0ZV9ldGhfZGV2IGFuZCByZWxhdGVkIHN0cnVjdHVyZXMgaW50ZXJuYWwuDQo+ID4gPiBUaGF0 IHNob3VsZCBhbGxvdyBmdXR1cmUgcG9zc2libGUgY2hhbmdlcyB0byBjb3JlIGV0aF9kZXYgc3Ry Y3V0dXJlcw0KPiA+ID4gdG8gYmUgdHJhbnNhcHJlbnQgdG8gdGhlIHVzZXIgYW5kIGhlbHAgdG8g YXZvaWQgQUJJL0FQSSBicmVha2FnZXMuDQo+ID4gPg0KPiA+ID4gU2lnbmVkLW9mZi1ieTogS29u c3RhbnRpbiBBbmFueWV2IDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29tPg0KPiA+ID4gLS0t DQo+ID4gPiAgbGliL2V0aGRldi9ldGhkZXZfcHJpdmF0ZS5jICB8IDUzICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKw0KPiA+ID4gIGxpYi9ldGhkZXYvZXRoZGV2X3ByaXZhdGUu aCAgfCAgNyArKysrKw0KPiA+ID4gIGxpYi9ldGhkZXYvcnRlX2V0aGRldi5jICAgICAgfCAxNyAr KysrKysrKysrKysNCj4gPiA+ICBsaWIvZXRoZGV2L3J0ZV9ldGhkZXZfY29yZS5oIHwgNDUgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gPiAgNCBmaWxlcyBjaGFuZ2VkLCAxMjIg aW5zZXJ0aW9ucygrKQ0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9saWIvZXRoZGV2L2V0aGRl dl9wcml2YXRlLmMgYi9saWIvZXRoZGV2L2V0aGRldl9wcml2YXRlLmMNCj4gPiA+IGluZGV4IDAx MmNmNzNjYTIuLmExNjgzZGE3N2IgMTAwNjQ0DQo+ID4gPiAtLS0gYS9saWIvZXRoZGV2L2V0aGRl dl9wcml2YXRlLmMNCj4gPiA+ICsrKyBiL2xpYi9ldGhkZXYvZXRoZGV2X3ByaXZhdGUuYw0KPiA+ ID4gQEAgLTE3NCwzICsxNzQsNTYgQEAgcnRlX2V0aF9kZXZhcmdzX3BhcnNlX3JlcHJlc2VudG9y X3BvcnRzKGNoYXIgKnN0ciwgdm9pZCAqZGF0YSkNCj4gPiA+ICAgICAgICAgICAgICAgUlRFX0xP RyhFUlIsIEVBTCwgIndyb25nIHJlcHJlc2VudG9yIGZvcm1hdDogJXNcbiIsIHN0cik7DQo+ID4g PiAgICAgICByZXR1cm4gc3RyID09IE5VTEwgPyAtMSA6IDA7DQo+ID4gPiAgfQ0KPiA+ID4gKw0K PiA+ID4gK3N0YXRpYyB1aW50MTZfdA0KPiA+ID4gK2R1bW15X2V0aF9yeF9idXJzdChfX3J0ZV91 bnVzZWQgdm9pZCAqcnhxLA0KPiA+ID4gKyAgICAgICAgICAgICBfX3J0ZV91bnVzZWQgc3RydWN0 IHJ0ZV9tYnVmICoqcnhfcGt0cywNCj4gPiA+ICsgICAgICAgICAgICAgX19ydGVfdW51c2VkIHVp bnQxNl90IG5iX3BrdHMpDQo+ID4gPiArew0KPiA+ID4gKyAgICAgUlRFX0VUSERFVl9MT0coRVJS LCAicnhfcGt0X2J1cnN0IGZvciB1bmNvbmZpZ3VyZWQgcG9ydFxuIik7DQo+ID4gPiArICAgICBy dGVfZXJybm8gPSBFTk9UU1VQOw0KPiA+ID4gKyAgICAgcmV0dXJuIDA7DQo+ID4gPiArfQ0KPiA+ ID4gKw0KPiA+ID4gK3N0YXRpYyB1aW50MTZfdA0KPiA+ID4gK2R1bW15X2V0aF90eF9idXJzdChf X3J0ZV91bnVzZWQgdm9pZCAqdHhxLA0KPiA+ID4gKyAgICAgICAgICAgICBfX3J0ZV91bnVzZWQg c3RydWN0IHJ0ZV9tYnVmICoqdHhfcGt0cywNCj4gPiA+ICsgICAgICAgICAgICAgX19ydGVfdW51 c2VkIHVpbnQxNl90IG5iX3BrdHMpDQo+ID4gPiArew0KPiA+ID4gKyAgICAgUlRFX0VUSERFVl9M T0coRVJSLCAidHhfcGt0X2J1cnN0IGZvciB1bmNvbmZpZ3VyZWQgcG9ydFxuIik7DQo+ID4gPiAr ICAgICBydGVfZXJybm8gPSBFTk9UU1VQOw0KPiA+ID4gKyAgICAgcmV0dXJuIDA7DQo+ID4gPiAr fQ0KPiA+ID4gKw0KPiA+ID4gK3ZvaWQNCj4gPiA+ICtldGhfZGV2X2J1cnN0X2FwaV9yZXNldChz dHJ1Y3QgcnRlX2V0aF9idXJzdF9hcGkgKnJiYSkNCj4gPiA+ICt7DQo+ID4gPiArICAgICBzdGF0 aWMgdm9pZCAqZHVtbXlfZGF0YVtSVEVfTUFYX1FVRVVFU19QRVJfUE9SVF07DQo+ID4gPiArICAg ICBzdGF0aWMgY29uc3Qgc3RydWN0IHJ0ZV9ldGhfYnVyc3RfYXBpIGR1bW15X2FwaSA9IHsNCj4g PiA+ICsgICAgICAgICAgICAgLnJ4X3BrdF9idXJzdCA9IGR1bW15X2V0aF9yeF9idXJzdCwNCj4g PiA+ICsgICAgICAgICAgICAgLnR4X3BrdF9idXJzdCA9IGR1bW15X2V0aF90eF9idXJzdCwNCj4g PiA+ICsgICAgICAgICAgICAgLnJ4cSA9IHsuZGF0YSA9IGR1bW15X2RhdGEsIC5jbGJrID0gZHVt bXlfZGF0YSx9LA0KPiA+ID4gKyAgICAgICAgICAgICAudHhxID0gey5kYXRhID0gZHVtbXlfZGF0 YSwgLmNsYmsgPSBkdW1teV9kYXRhLH0sDQo+ID4gPiArICAgICB9Ow0KPiA+ID4gKw0KPiA+ID4g KyAgICAgKnJiYSA9IGR1bW15X2FwaTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiArdm9pZA0K PiA+ID4gK2V0aF9kZXZfYnVyc3RfYXBpX3NldHVwKHN0cnVjdCBydGVfZXRoX2J1cnN0X2FwaSAq cmJhLA0KPiA+ID4gKyAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikN Cj4gPiA+ICt7DQo+ID4gPiArICAgICByYmEtPnJ4X3BrdF9idXJzdCA9IGRldi0+cnhfcGt0X2J1 cnN0Ow0KPiA+ID4gKyAgICAgcmJhLT50eF9wa3RfYnVyc3QgPSBkZXYtPnR4X3BrdF9idXJzdDsN Cj4gPiA+ICsgICAgIHJiYS0+dHhfcGt0X3ByZXBhcmUgPSBkZXYtPnR4X3BrdF9wcmVwYXJlOw0K PiA+ID4gKyAgICAgcmJhLT5yeF9xdWV1ZV9jb3VudCA9IGRldi0+cnhfcXVldWVfY291bnQ7DQo+ ID4gPiArICAgICByYmEtPnJ4X2Rlc2NyaXB0b3Jfc3RhdHVzID0gZGV2LT5yeF9kZXNjcmlwdG9y X3N0YXR1czsNCj4gPiA+ICsgICAgIHJiYS0+dHhfZGVzY3JpcHRvcl9zdGF0dXMgPSBkZXYtPnR4 X2Rlc2NyaXB0b3Jfc3RhdHVzOw0KPiA+ID4gKw0KPiA+ID4gKyAgICAgcmJhLT5yeHEuZGF0YSA9 IGRldi0+ZGF0YS0+cnhfcXVldWVzOw0KPiA+ID4gKyAgICAgcmJhLT5yeHEuY2xiayA9ICh2b2lk ICoqKSh1aW50cHRyX3QpZGV2LT5wb3N0X3J4X2J1cnN0X2NiczsNCj4gPiA+ICsNCj4gPiA+ICsg ICAgIHJiYS0+dHhxLmRhdGEgPSBkZXYtPmRhdGEtPnR4X3F1ZXVlczsNCj4gPiA+ICsgICAgIHJi YS0+dHhxLmNsYmsgPSAodm9pZCAqKikodWludHB0cl90KWRldi0+cHJlX3R4X2J1cnN0X2NiczsN Cj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ldGhkZXZf cHJpdmF0ZS5oIGIvbGliL2V0aGRldi9ldGhkZXZfcHJpdmF0ZS5oDQo+ID4gPiBpbmRleCA5YmIw ODc5NTM4Li41NDkyMWY0ODYwIDEwMDY0NA0KPiA+ID4gLS0tIGEvbGliL2V0aGRldi9ldGhkZXZf cHJpdmF0ZS5oDQo+ID4gPiArKysgYi9saWIvZXRoZGV2L2V0aGRldl9wcml2YXRlLmgNCj4gPiA+ IEBAIC0zMCw2ICszMCwxMyBAQCBldGhfZmluZF9kZXZpY2UoY29uc3Qgc3RydWN0IHJ0ZV9ldGhf ZGV2ICpfc3RhcnQsIHJ0ZV9ldGhfY21wX3QgY21wLA0KPiA+ID4gIC8qIFBhcnNlIGRldmFyZ3Mg dmFsdWUgZm9yIHJlcHJlc2VudG9yIHBhcmFtZXRlci4gKi8NCj4gPiA+ICBpbnQgcnRlX2V0aF9k ZXZhcmdzX3BhcnNlX3JlcHJlc2VudG9yX3BvcnRzKGNoYXIgKnN0ciwgdm9pZCAqZGF0YSk7DQo+ ID4gPg0KPiA+ID4gKy8qIHJlc2V0IGV0aCAnYnVyc3QnIEFQSSB0byBkdW1teSB2YWx1ZXMgKi8N Cj4gPiA+ICt2b2lkIGV0aF9kZXZfYnVyc3RfYXBpX3Jlc2V0KHN0cnVjdCBydGVfZXRoX2J1cnN0 X2FwaSAqcmJhKTsNCj4gPiA+ICsNCj4gPiA+ICsvKiBzZXR1cCBldGggJ2J1cnN0JyBBUEkgdG8g ZXRoZGV2IHZhbHVlcyAqLw0KPiA+ID4gK3ZvaWQgZXRoX2Rldl9idXJzdF9hcGlfc2V0dXAoc3Ry dWN0IHJ0ZV9ldGhfYnVyc3RfYXBpICpyYmEsDQo+ID4gPiArICAgICAgICAgICAgIGNvbnN0IHN0 cnVjdCBydGVfZXRoX2RldiAqZGV2KTsNCj4gPiA+ICsNCj4gPiA+ICAjaWZkZWYgX19jcGx1c3Bs dXMNCj4gPiA+ICB9DQo+ID4gPiAgI2VuZGlmDQo+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2V0aGRl di9ydGVfZXRoZGV2LmMgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gaW5kZXggNDI0 YmMyNjBmYS4uNTkwNGJiN2JhZSAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2V0 aGRldi5jDQo+ID4gPiArKysgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gQEAgLTQ0 LDYgKzQ0LDkgQEANCj4gPiA+ICBzdGF0aWMgY29uc3QgY2hhciAqTVpfUlRFX0VUSF9ERVZfREFU QSA9ICJydGVfZXRoX2Rldl9kYXRhIjsNCj4gPiA+ICBzdHJ1Y3QgcnRlX2V0aF9kZXYgcnRlX2V0 aF9kZXZpY2VzW1JURV9NQVhfRVRIUE9SVFNdOw0KPiA+ID4NCj4gPiA+ICsvKiBwdWJsaWMgJ2Zh c3QvYnVyc3QnIEFQSSAqLw0KPiA+ID4gK3N0cnVjdCBydGVfZXRoX2J1cnN0X2FwaSBydGVfZXRo X2J1cnN0X2FwaVtSVEVfTUFYX0VUSFBPUlRTXTsNCj4gPiA+ICsNCj4gPiA+ICAvKiBzcGlubG9j ayBmb3IgZXRoIGRldmljZSBjYWxsYmFja3MgKi8NCj4gPiA+ICBzdGF0aWMgcnRlX3NwaW5sb2Nr X3QgZXRoX2Rldl9jYl9sb2NrID0gUlRFX1NQSU5MT0NLX0lOSVRJQUxJWkVSOw0KPiA+ID4NCj4g PiA+IEBAIC0xNzg4LDYgKzE3OTEsOSBAQCBydGVfZXRoX2Rldl9zdGFydCh1aW50MTZfdCBwb3J0 X2lkKQ0KPiA+ID4gICAgICAgICAgICAgICAoKmRldi0+ZGV2X29wcy0+bGlua191cGRhdGUpKGRl diwgMCk7DQo+ID4gPiAgICAgICB9DQo+ID4gPg0KPiA+ID4gKyAgICAgLyogZXhwb3NlIHNlbGVj dGlvbiBvZiBQTUQgcngvdHggZnVuY3Rpb24gKi8NCj4gPiA+ICsgICAgIGV0aF9kZXZfYnVyc3Rf YXBpX3NldHVwKHJ0ZV9ldGhfYnVyc3RfYXBpICsgcG9ydF9pZCwgZGV2KTsNCj4gPiA+ICsNCj4g PiA+ICAgICAgIHJ0ZV9ldGhkZXZfdHJhY2Vfc3RhcnQocG9ydF9pZCk7DQo+ID4gPiAgICAgICBy ZXR1cm4gMDsNCj4gPiA+ICB9DQo+ID4gPiBAQCAtMTgxMCw2ICsxODE2LDkgQEAgcnRlX2V0aF9k ZXZfc3RvcCh1aW50MTZfdCBwb3J0X2lkKQ0KPiA+ID4gICAgICAgICAgICAgICByZXR1cm4gMDsN Cj4gPiA+ICAgICAgIH0NCj4gPiA+DQo+ID4gPiArICAgICAvKiBwb2ludCByeC90eCBmdW5jdGlv bnMgdG8gZHVtbXkgb25lcyAqLw0KPiA+ID4gKyAgICAgZXRoX2Rldl9idXJzdF9hcGlfcmVzZXQo cnRlX2V0aF9idXJzdF9hcGkgKyBwb3J0X2lkKTsNCj4gPiA+ICsNCj4gPiA+ICAgICAgIGRldi0+ ZGF0YS0+ZGV2X3N0YXJ0ZWQgPSAwOw0KPiA+ID4gICAgICAgcmV0ID0gKCpkZXYtPmRldl9vcHMt PmRldl9zdG9wKShkZXYpOw0KPiA+ID4gICAgICAgcnRlX2V0aGRldl90cmFjZV9zdG9wKHBvcnRf aWQsIHJldCk7DQo+ID4gPiBAQCAtNDU2OCw2ICs0NTc3LDE0IEBAIHJ0ZV9ldGhfbWlycm9yX3J1 bGVfcmVzZXQodWludDE2X3QgcG9ydF9pZCwgdWludDhfdCBydWxlX2lkKQ0KPiA+ID4gICAgICAg cmV0dXJuIGV0aF9lcnIocG9ydF9pZCwgKCpkZXYtPmRldl9vcHMtPm1pcnJvcl9ydWxlX3Jlc2V0 KShkZXYsIHJ1bGVfaWQpKTsNCj4gPiA+ICB9DQo+ID4gPg0KPiA+ID4gK1JURV9JTklUKGV0aF9k ZXZfaW5pdF9idXJzdF9hcGkpDQo+ID4gPiArew0KPiA+ID4gKyAgICAgdWludDMyX3QgaTsNCj4g PiA+ICsNCj4gPiA+ICsgICAgIGZvciAoaSA9IDA7IGkgIT0gUlRFX0RJTShydGVfZXRoX2J1cnN0 X2FwaSk7IGkrKykNCj4gPiA+ICsgICAgICAgICAgICAgZXRoX2Rldl9idXJzdF9hcGlfcmVzZXQo cnRlX2V0aF9idXJzdF9hcGkgKyBpKTsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiAgUlRFX0lO SVQoZXRoX2Rldl9pbml0X2NiX2xpc3RzKQ0KPiA+ID4gIHsNCj4gPiA+ICAgICAgIHVpbnQxNl90 IGk7DQo+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ydGVfZXRoZGV2X2NvcmUuaCBiL2xp Yi9ldGhkZXYvcnRlX2V0aGRldl9jb3JlLmgNCj4gPiA+IGluZGV4IDAwZjI3YzY0M2EuLmRhNmRl NWRlNDMgMTAwNjQ0DQo+ID4gPiAtLS0gYS9saWIvZXRoZGV2L3J0ZV9ldGhkZXZfY29yZS5oDQo+ ID4gPiArKysgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXZfY29yZS5oDQo+ID4gPiBAQCAtNTMsNiAr NTMsNTEgQEAgdHlwZWRlZiBpbnQgKCpldGhfcnhfZGVzY3JpcHRvcl9zdGF0dXNfdCkodm9pZCAq cnhxLCB1aW50MTZfdCBvZmZzZXQpOw0KPiA+ID4gIHR5cGVkZWYgaW50ICgqZXRoX3R4X2Rlc2Ny aXB0b3Jfc3RhdHVzX3QpKHZvaWQgKnR4cSwgdWludDE2X3Qgb2Zmc2V0KTsNCj4gPiA+ICAvKio8 IEBpbnRlcm5hbCBDaGVjayB0aGUgc3RhdHVzIG9mIGEgVHggZGVzY3JpcHRvciAqLw0KPiA+ID4N Cj4gPiA+ICsvKioNCj4gPiA+ICsgKiBAaW50ZXJuYWwNCj4gPiA+ICsgKiBTdHJ1Y3R1cmUgdXNl ZCB0byBob2xkIG9wYXF1ZSBwb2ludGVybmFscyB0byBpbnRlcm5hbCBldGhkZXYgUlgvVFhpDQo+ ID4gPiArICogcXVldWVzIGRhdGEuDQo+ID4gPiArICogVGhlIG1haW4gcHVycG9zZSB0byBleHBv c2UgdGhlc2UgcG9pbnRlcnMgYXQgYWxsIC0gYWxsb3cgY29tcGlsZXINCj4gPiA+ICsgKiB0byBm ZXRjaCB0aGlzIGRhdGEgZm9yICdmYXN0JyBldGhkZXYgaW5saW5lIGZ1bmN0aW9ucyBpbiBhZHZh bmNlLg0KPiA+ID4gKyAqLw0KPiA+ID4gK3N0cnVjdCBydGVfZXRoZGV2X3FkYXRhIHsNCj4gPiA+ ICsgICAgIHZvaWQgKipkYXRhOw0KPiA+ID4gKyAgICAgLyoqPCBwb2ludHMgdG8gYXJyYXkgb2Yg aW50ZXJuYWwgcXVldWUgZGF0YSBwb2ludGVycyAqLw0KPiA+ID4gKyAgICAgdm9pZCAqKmNsYms7 DQo+ID4gPiArICAgICAvKio8IHBvaW50cyB0byBhcnJheSBvZiBxdWV1ZSBjYWxsYmFjayBkYXRh IHBvaW50ZXJzICovDQo+ID4gPiArfTsNCj4gPiA+ICsNCj4gPiA+ICsvKioNCj4gPiA+ICsgKiBA aW50ZXJuYWwNCj4gPiA+ICsgKiAnZmFzdCcgZXRoZGV2IGZ1bmNpb25zIGFuZCByZWxhdGVkIGRh dGEgYXJlIGhvbGQgaW4gYSBmbGF0IGFycmF5Lg0KPiA+ID4gKyAqIG9uZSBlbnRyeSBwZXIgZXRo ZGV2Lg0KPiA+ID4gKyAqLw0KPiA+ID4gK3N0cnVjdCBydGVfZXRoX2J1cnN0X2FwaSB7DQo+ID4N Cj4gPiAnb3BzJyBpcyBiZXR0ZXIgPyBMaWtlICJzdHJ1Y3QgcnRlX2V0aF9idXJzdF9vcHMiLiA7 LSkNCj4gDQo+IFNpbmNlIGFsbCBmYXN0cGF0aCBBUElzIGFyZSBub3QgaW4gYnVzdCBpbiBuYXR1 cmUuIElNTywgcnRlX2V0aF9mcF9vcHMNCj4gb3Igc28gbWF5IGJlIGJldHRlci4NCg0KSSBkb24n dCBoYXZlIGFueSBzdHJvbmcgb3BpbmlvbiBhYm91dCB0aGUgbmFtZS4NCldoYXRldmVyIG1ham9y aXR5IHdpbGwgZGVjaWRlIGlzIG9rIGJ5IG1lIGhlcmUuDQoNCj4gDQo+ID4NCj4gPiA+ICsNCj4g PiA+ICsgICAgIC8qKiBmaXJzdCA2NEIgbGluZSAqLw0KPiA+ID4gKyAgICAgZXRoX3J4X2J1cnN0 X3QgcnhfcGt0X2J1cnN0Ow0KPiA+ID4gKyAgICAgLyoqPCBQTUQgcmVjZWl2ZSBmdW5jdGlvbi4g Ki8NCj4gPiA+ICsgICAgIGV0aF90eF9idXJzdF90IHR4X3BrdF9idXJzdDsNCj4gPiA+ICsgICAg IC8qKjwgUE1EIHRyYW5zbWl0IGZ1bmN0aW9uLiAqLw0KPiA+ID4gKyAgICAgZXRoX3R4X3ByZXBf dCB0eF9wa3RfcHJlcGFyZTsNCj4gPiA+ICsgICAgIC8qKjwgUE1EIHRyYW5zbWl0IHByZXBhcmUg ZnVuY3Rpb24uICovDQo+ID4gPiArICAgICBldGhfcnhfcXVldWVfY291bnRfdCByeF9xdWV1ZV9j b3VudDsNCj4gPiA+ICsgICAgIC8qKjwgR2V0IHRoZSBudW1iZXIgb2YgdXNlZCBSWCBkZXNjcmlw dG9ycy4gKi8NCj4gPiA+ICsgICAgIGV0aF9yeF9kZXNjcmlwdG9yX3N0YXR1c190IHJ4X2Rlc2Ny aXB0b3Jfc3RhdHVzOw0KPiA+ID4gKyAgICAgLyoqPCBDaGVjayB0aGUgc3RhdHVzIG9mIGEgUngg ZGVzY3JpcHRvci4gKi8NCj4gPiA+ICsgICAgIGV0aF90eF9kZXNjcmlwdG9yX3N0YXR1c190IHR4 X2Rlc2NyaXB0b3Jfc3RhdHVzOw0KPiA+ID4gKyAgICAgLyoqPCBDaGVjayB0aGUgc3RhdHVzIG9m IGEgVHggZGVzY3JpcHRvci4gKi8NCj4gPiA+ICsgICAgIHVpbnRwdHJfdCByZXNlcnZlZFsyXTsN Cj4gPiA+ICsNCj4gPg0KPiA+IEhvdyBhYm91dCAzMiBiaXQgc3lzdGVtID8gRG9lcyBpdCBuZWVk IHNvbWV0aGluZyBsaWtlIDoNCg0KSSBkb24ndCB0aGluayB3ZSBuZWVkIHRvIGFueXRoaW5nIHNw ZWNpYWwgZm9yIDMyLWJpdCB2ZXJzaW9uIGhlcmUuDQpXZSBoYXZlIDE2IHBvaW50ZXJzIGhlcmUg aW4gdG90YWwgcmlnaHQgbm93LA0Kb24gMzItYml0IHN5c3RlbXMgaXQgd291bGQgZml0IGludG8g NjRCIGFueXdheS4NCg0KPiA+DQo+ID4gX19ydGVfY2FjaGVfYWxpZ25lZCBmb3IgcnhxIHRvIG1h a2Ugc3VyZSA2NEIgbGluZT8NCj4gDQo+IF9fcnRlX2NhY2hlX2FsaWduZWRfbWluIGZvciAxMjhC IENMIHN5c3RlbXMuDQoNCg0KPiANCj4gPg0KPiA+ID4gKyAgICAgLyoqIHNlY29uZCA2NEIgbGlu ZSAqLw0KPiA+ID4gKyAgICAgc3RydWN0IHJ0ZV9ldGhkZXZfcWRhdGEgcnhxOw0KPiA+ID4gKyAg ICAgc3RydWN0IHJ0ZV9ldGhkZXZfcWRhdGEgdHhxOw0KPiA+ID4gKyAgICAgdWludHB0cl90IHJl c2VydmVkMls0XTsNCj4gPiA+ICsNCj4gPiA+ICt9IF9fcnRlX2NhY2hlX2FsaWduZWQ7DQo+ID4g PiArDQo+ID4gPiArZXh0ZXJuIHN0cnVjdCBydGVfZXRoX2J1cnN0X2FwaSBydGVfZXRoX2J1cnN0 X2FwaVtSVEVfTUFYX0VUSFBPUlRTXTsNCj4gPiA+ICsNCj4gPiA+DQo+ID4gPiAgLyoqDQo+ID4g PiAgICogQGludGVybmFsDQo+ID4gPiAtLQ0KPiA+ID4gMi4yNi4zDQo+ID4NCg==