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 175F1A0C43; Tue, 14 Sep 2021 16:28:58 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A4740406FF; Tue, 14 Sep 2021 16:28:57 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id 928DE4068F; Tue, 14 Sep 2021 16:28:55 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10106"; a="222062221" X-IronPort-AV: E=Sophos;i="5.85,292,1624345200"; d="scan'208";a="222062221" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Sep 2021 07:28:54 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,292,1624345200"; d="scan'208";a="697677665" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga006.fm.intel.com with ESMTP; 14 Sep 2021 07:28:54 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 14 Sep 2021 07:28:54 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 14 Sep 2021 07:28:53 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx603.amr.corp.intel.com (10.18.126.83) 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, 14 Sep 2021 07:28:53 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.102) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Tue, 14 Sep 2021 07:28:53 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QMaj3OOqC7ASNzdTZ/upJKepY/9wEzIjHOQI9MZd/XjUn237/ZXRr8BoVZBk6b88i4fqPoIxu3D5/1yBTeqHufj47LzN7qMzPBGdlh/AavcFd32nCwdzgVcuGysWNZgSa3jppIRvUu7agyqSjuvoGcw4nsitzNRBNXfuYaaHi4n/P5qgQFUpfvmedpoAL/7fywRMzd+CXJHQod1iepNuRJPsA06WcfiR3oe1Q4iptVkR+OF1SqpJXoGN9B1wsdtaziGcerOcZ1sv2SiUM/1UwvpzYOdsVZNSJLclfL/h1NZ4vYfj60b/hxmpZAtARrLmGd/dN4KTFfCJbKSNCYvJ1Q== 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=COkng0/Wk/Zxl0G9rBwIQHHnPgdH+xYXhPiAWtRfOJ0=; b=P+Js/lML01Czy55cXqZS6KMxdnMJOArqDI7fCYs31CjhUlef32OhfvZkAzS6/UWZNnAxA8ujv54Y6ydteUTZqqJ9H/q6D4xPxMS/N3ZcSftvDgpqwnQqHr2yfcimNdy3R6rBhgNiuFVMDPajXMA3w+g8IXn8F3G/JpdAHegp3xGJM3dzBBPD0qoRcoX/a09hJxHBub65gi1aQ/zCgquqJGhnnbfQc8OtJcC3GLWWPNMb42z4gUWxhBzBngm1W7BKNeJNYFd/GwETebALg/VQXJp5rhEK8nJEjfiTLAnSaspcq2xiqbWo88gddvlOhCB56DYUme7rtdflXSAypM41vQ== 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=COkng0/Wk/Zxl0G9rBwIQHHnPgdH+xYXhPiAWtRfOJ0=; b=gaw7pMg8hME5mmD/cj9gxmcPUYH9uqLusPqxmvkxqm1eiats3BlRO4puoR8tEzEhpAa3xwzd2vQ6LvlZcW95v4fAeofMyyZC71EBoi8UuwUlPEX/aKmuMiUuU1S788KD3ga7IXMRLwxQDbHY0Jktq4fmYdz1/3+IM/ikhubweEs= Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by DM4PR11MB5311.namprd11.prod.outlook.com (2603:10b6:5:392::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4523.14; Tue, 14 Sep 2021 14:28:51 +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.4523.014; Tue, 14 Sep 2021 14:28:51 +0000 From: "Ananyev, Konstantin" To: "Yigit, Ferruh" , "dev@dpdk.org" CC: "thomas@monjalon.net" , "andrew.rybchenko@oktetlabs.ru" , "Yang, Qiming" , "Zhang, Qi Z" , "Xing, Beilei" , "techboard@dpdk.org" Thread-Topic: [RFC 2/7] eth: make drivers to use new API for Rx Thread-Index: AQHXleCM5ey97ySfC0qd0FmxBAnUZauXceAAgAw+NAA= Date: Tue, 14 Sep 2021 14:28:51 +0000 Message-ID: References: <20210820162834.12544-1-konstantin.ananyev@intel.com> <20210820162834.12544-3-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: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ed0a0776-3615-43ca-3df8-08d9778bf95e x-ms-traffictypediagnostic: DM4PR11MB5311: 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:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: brN8yCpumBJbRVk62kcQhIbOJfKe3nBriIwFyGCR251PPc4Sst1E/eEbZZ/aiThAoQHpPWLTnpt4YVi4SptUmx/rclr5WAjLE3Go/M1Wrtxeyqpyc+tASR61+Fx4QsYGAvWD96XHU3bIf3+mtT5QHNCwM6GY6bip957jES1DEhUazxpnyKPrgc2QIc8VPm/73h92AImxyMUqAjNRFeO71zn17vte5L+bJk8cV8UUVXq0DVP+xe28epW5bBE2me6K2Ihn3lqNBQvp9Jzb3jUV4wPfRqAt9z6K+oqVtdcYshlywLRKiaM18V1cNl1kWx1eNvu8T02rBzhBx438pn0nt4XXKp0XsQs80w34IFAhBYBsy7qB/L82gU7TD9zdqTnyNiI11A0mWcuvi/nKn8912+tyrHI7CGcltt50izXw4jdqAe0pX9+fiTQV/d3oMTXb4CPkLAahRrCKhxEkieySUhyeAy5DKrwW6/+5d3g6EVQSccxq+UOBaYrZvPExOpHXvn83/nlzAmaTGKWbhpUWAgD3OcQLkb7cuWmtnLBsLu9BaHRE7X98ngngoKzekGoviJqUCZoyc6TXv9MFZlwmEYpoLGPubNMsX8oYGAKJtlRioXJIDKxcGK0/6b6i3Msn/3a7OeBPvngUTorCBeLmSOKGjg0gDV0VVZnEQ+tMGUxuu5mL+mYXkVZ9ajLlhpVgd4ZG8UJH/u73B4YFdH03YnFXMYcwb4dVIwzqCUDy1iI= 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)(396003)(346002)(366004)(39860400002)(376002)(136003)(71200400001)(5660300002)(2906002)(54906003)(66476007)(55016002)(33656002)(55236004)(6506007)(38070700005)(7696005)(9686003)(83380400001)(76116006)(122000001)(110136005)(52536014)(38100700002)(66946007)(186003)(8676002)(64756008)(66446008)(26005)(66556008)(8936002)(316002)(478600001)(4326008)(86362001)(83323001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eVZuM1JCOGVXajhqa3M3WU5tQzdEd3FPSTlGMHVEVXRiVUx1ZzlmbTVrS05N?= =?utf-8?B?TWw3MVlPS1llL0k0dXNtWDRWK3VzVzkwdllkZXdRUWp3U2VYaitWSm0xb0ZH?= =?utf-8?B?aVhBdGFhQm9reWljSFhuMlFPYTVpRWRwNmNYRWJMa2VyMWZaY0pKSG82eUhV?= =?utf-8?B?K1pEYzdWM3BibDdKQWZGd2lnZ292czZ6SDk3VmFGWDRYcE96eHZHU2tZem9i?= =?utf-8?B?MWRJcGEza3FPanRxZnI1UGRlOE4xUFZYSzhkSDdTejF0QzlreWdIWEt2NTJo?= =?utf-8?B?NVNJSlF5bzhnTzNCRjV1K0VyTkpTaWtZYS9BSXRPY24zQlI4YXJxQjBGRWx3?= =?utf-8?B?ZTNiMVMxV2V2eW0rMDZQTmRaakdDTTdmNEpHUUdSaTBGT2pPL1hXS3R5OFBl?= =?utf-8?B?ZXRKeEpadGlmb1hSWjhmOFFJbm1wYm15OC9CVkM5N1BHSzFGN1FFakU3VjNy?= =?utf-8?B?NXEzZmc0MTBPQWswTmhKTDdkQnpzdTJldHpqazNMVkFSNWVVMzMxZXA3M1pU?= =?utf-8?B?NW40SzFBVFJMUVJObTlMRm01bHlwUGdLQmZzWC8vL0VQN3J3azU4a3QvUzl4?= =?utf-8?B?cU9CMWV2b0VHbk9SZHBkVGdRQkxIUFdZWS9RSnZwRVUwTHl0SCtqcEpTdmJq?= =?utf-8?B?b2lTVDVpVXJpeTY4RFpab2NWWGFoQnY4bkw1SkRQbU5XZlBEbk5FRzZwZnhX?= =?utf-8?B?TWg4SFJ1YmVHUGZKeHIwZktLUGFFb1h4VVBDUUR5NXd0SjI5WVlDZlRvVCtF?= =?utf-8?B?aTlZR2VQSnpuVERLRFdSWjU4Q3dPMTVVR2lTRjJBM1BPMk1oUG5STmppdDF4?= =?utf-8?B?bndGY2NMNnh0eitvTlQ1YWNZR1cwVXMzblJDdlBkWWNiS0VIZk9FeWhXZkRC?= =?utf-8?B?ckxLTmt0WWpZckVqZ0VJNStDNG5tdDcxdmdFeVhpNDZIMVBOQVA2MEtDdWM5?= =?utf-8?B?K3dDdzQxTUN3SXhFSU9HVXZkQ2hlTWp4NFVadnJ5b2hvbXo1VGNLU09ZZXQ5?= =?utf-8?B?WDlMMzcyMWNzaHNBSjV0RjIrejlXRFMrUG9tYTdwTnFmUTZNZGVWdFdlMmZT?= =?utf-8?B?czlST1VCanozc2k1YzBTZzBRemE1ME1sVDJRN1NraE1LbG1WWjZLOU9yd3Fi?= =?utf-8?B?L1UvZThFTC9EdCtnckhaTWdZMXNDZk02b0NMUEFhWHg1b0tXWlVmT3pPR3NK?= =?utf-8?B?bC83YWl2bFNGRHQwdVZ5M0tDYWJSNmVSdVVqSml3UFFoNjdnYXkvZDI4Tmg3?= =?utf-8?B?YXV3YWdjSlUvMktHaW0zS2x6Yi95M0hza0NodGwxY3gvS2pqMWE0NS84M29n?= =?utf-8?B?R3Baem15bzhGV0Yxc1BEZmNjc3A4YmxaWmtXVEd0aTkxbldVS3p1SXVWakk0?= =?utf-8?B?dXZBWllwLzBWaDdsbDVvNEFGTzY3ZnEvVklOOUs4bGc3R1dtRmdOcTl1RVNm?= =?utf-8?B?VWpmU0VlcndIWHVoUXdIaGxPNDgwcGNoVHh2WHlGbDlRSjV6N1crVGsxYURM?= =?utf-8?B?ajdEVnRZYXNHWHV2VVJ0Vk82Q0lvbXd1YUlFUFhEakhuV2hVTGZXcFQrelV5?= =?utf-8?B?UUFaZlhuZ3JGbXdQVVYxdUovbjl4RHgyRTY1MmljY1FpeitucFBQQ3A1Nkpq?= =?utf-8?B?UFZTbnhxc3NCTm1GU1IrQmtpNlBuT003UWZCMTFtOGRMQUdFZ1JiMDBHcXVq?= =?utf-8?B?Z2R0aHRIcVFuUDFMSGI3T2pvMkhMbkNUYVQyOUNOZE1ackRUbXhwdTl1cnpr?= =?utf-8?Q?ty2Jlieuki52R9pireogU8/23Wf6o76TQ6OjCqJ?= 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: ed0a0776-3615-43ca-3df8-08d9778bf95e X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Sep 2021 14:28:51.5539 (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: dXAS1jAQPyQYP1YVvhc5P/b+GJDRCwSCOzJdNvW6lr99ATBthfGE/Nd5YeGTNfUd1h/j3EEvxJbxnjpE5kzHfhRUH9LMjuAm+XKeVsNdnGs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB5311 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [RFC 2/7] eth: make drivers to use new API for Rx 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" DQoNCkhpIEZlcnJ1aCwNCg0KPiANCj4gT3ZlcmFsbCB0aGlzIGVuYWJsZXMgdXMgaGlkaW5nIHRo ZSBldGhkZXYgaW50ZXJuYWxzLCB3aGljaCBpcyBnb29kLiBCdXQgaXQNCj4gZHVwbGljYXRlcyBt b3N0IG9mIHRoZSBkYXRhcGF0aCBmdW5jdGlvbiAocnggYnVyc3QgZm9yIHRoaXMgcGF0Y2gpIHBl ciBlYWNoIFBNRCBvcHMuDQoNClllcywgc2FtZSBhcyByaWdodCBub3cgcnRlX2V0aF9yeC90eF9i dXJzdCgpIGNvZGUgY2FuIGJlIGR1cGxpY2F0ZWQgaW4gZG96ZW4gcGxhY2VzIA0KaW5zaWRlIHVz ZXItbGV2ZWwgY29kZS4gQW5kIGFzIGFueSBvdGhlciAnc3RhdGljIGlubGluZScgZnVuY3Rpb24g dGhhdCB3ZSBkZWZpbmUgYW5kIHVzZSBpbnNpZGUgRFBESy4NClBlcnNvbmFsbHkgSSBkb24ndCBz ZWUgd2h5IGl0IGlzIGEgcHJvYmxlbS4NCg0KPiANCj4gSSB3b25kZXIgaWYgd2UgY2FuIGhhdmUg dGhlIGNhbGxiYWNrcyAoJ19ydGVfZXRoX3J4X2VwaWxvZygpJykgYXMgc2VwYXJhdGUNCj4gZnVu Y3Rpb24sIHRoaXMgc3RpbGwgZW5hYmxlcyB1cyB0byBoaWRlIHRoZSBzdHJ1Y3RzLiBPZiBjb3Vy c2UgYWRkaXRpb25hbA0KPiBmdW5jdGlvbiBjYWxsIHdpbGwgYnJpbmcgc29tZSBvdmVyaGVhZCwg YnV0IGlmIHdlIGVuYWJsZWQgY2FsbGJhY2tzIGFuZCBjYWxsaW5nDQo+IHRoZW0gcGVyIHBhY2tl dCwgZG8gd2UgcmVhbGx5IGNhcmUgYWJvdXQgYWRkaXRpb25hbCBmdW5jdGlvbiBjYWxsPw0KDQpD YWxsYmFja3MgYXJlIG5vdCBwZXIgcGFja2V0LCBidXQgcGVyIGJ1cnN0IG9mIHBhY2tldHMgLSBz YW1lIGFzIGFjdHVhbCBSWC9UWC4NCkEgZHJhd2JhY2sgd2l0aCBzdWNoIGFwcHJvYWNoIC0gIHdl IGVpdGhlciBoYXZlIHRvIGtlZXANCnBvc3RfcnhfYnVyc3RfY2JzW1JURV9NQVhfUVVFVUVTX1BF Ul9QT1JUXSB2aXNpYmxlIHRvIHRoZSB1c2VyDQood2hpY2ggSSdkIHByZWZlciBub3QgdG8pLCBv ciBjYWxsIGVwaWxvbGcoKSB1bmNvbmRpdGlvbmFsbHkgLSB3aGljaCBtZWFucw0KcGVyZm9ybWFu Y2UgZHJvcC4gDQogDQo+IA0KPiA+IFNpZ25lZC1vZmYtYnk6IEtvbnN0YW50aW4gQW5hbnlldiA8 a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4NCj4gDQo+IDwuLi4+DQo+IA0KPiA+IEBAIC0z MjI5LDcgKzMyODksNyBAQCBpbnQNCj4gPiAgaWNlX3J4X2J1cnN0X21vZGVfZ2V0KHN0cnVjdCBy dGVfZXRoX2RldiAqZGV2LCBfX3J0ZV91bnVzZWQgdWludDE2X3QgcXVldWVfaWQsDQo+ID4gIAkJ ICAgICAgc3RydWN0IHJ0ZV9ldGhfYnVyc3RfbW9kZSAqbW9kZSkNCj4gPiAgew0KPiA+IC0JZXRo X3J4X2J1cnN0X3QgcGt0X2J1cnN0ID0gZGV2LT5yeF9wa3RfYnVyc3Q7DQo+ID4gKwlydGVfZXRo X3J4X2J1cnN0X3QgcGt0X2J1cnN0ID0gcnRlX2V0aF9nZXRfcnhfYnVyc3QoZGV2LT5kYXRhLT5w b3J0X2lkKTsNCj4gDQo+IERvZXMgaXQgbWFrZXMgZWFzaWVyIHRvIG9yZ2luYW5pc2UgdGhlIHBh dGNoc2V0IHRvIGhhdmUgYSBzZXBhcmF0ZSBwYXRjaCB0bw0KPiBzd2l0Y2ggZmlyc3QgdG8gJ3J0 ZV9ldGhfZ2V0X3J4X2J1cnN0KCknIC8gJ3J0ZV9ldGhfc2V0X3J4X2J1cnN0KCknIHdpdGggb2xk DQo+IGltcGxlbWVudGF0aW9uICgnZGV2LT5yeF9wa3RfYnVyc3QnIGdldC9zZXQpLCBhbmQgbGF0 ZXIganVzdCBjaGFuZ2UgdGhlDQo+ICdydGVfZXRoX2dldF9yeF9idXJzdCgpJyAvICdydGVfZXRo X3NldF9yeF9idXJzdCgpJyBpbXBsZW1lbnRhdGlvbiB3aGVuDQo+IHN0cnVjdHVyZSBpcyB1cGRh dGVkLg0KDQpUaGlzIGlzIGRvYWJsZSwgZG9uJ3Qga25vdyB3b3VsZCBiZSB0aGVyZSBhbnkgYmVu ZWZpdCBmcm9tIHRoYXQgb3Igbm90LiANCg0KPiANCj4gPC4uLj4NCj4gDQo+ID4gLS0tIGEvZHJp dmVycy9uZXQvaWNlL2ljZV9yeHR4X3ZlY19zc2UuYw0KPiA+ICsrKyBiL2RyaXZlcnMvbmV0L2lj ZS9pY2Vfcnh0eF92ZWNfc3NlLmMNCj4gPiBAQCAtNTg3LDEzICs1ODcsMTUgQEAgX2ljZV9yZWN2 X3Jhd19wa3RzX3ZlYyhzdHJ1Y3QgaWNlX3J4X3F1ZXVlICpyeHEsIHN0cnVjdCBydGVfbWJ1ZiAq KnJ4X3BrdHMsDQo+ID4gICAqIC0gbmJfcGt0cyA+IElDRV9WUE1EX1JYX0JVUlNULCBvbmx5IHNj YW4gSUNFX1ZQTURfUlhfQlVSU1QNCj4gPiAgICogICBudW1iZXJzIG9mIEREIGJpdHMNCj4gPiAg ICovDQo+ID4gLXVpbnQxNl90DQo+ID4gK3N0YXRpYyBpbmxpbmUgdWludDE2X3QNCj4gDQo+IFRo ZXNlIGZ1bmN0aW9ucyBldmVudHVhbGx5IHdpbGwgYmUgY2FsbGVkIHZpYSBhIGZ1bmN0aW9uIHBv aW50ZXIsIHNvIGlzIHRoZXJlIGENCj4gYmVuZWZpdCB0byByZXF1ZXN0IHRoZW0gdG8gJ2lubGlu ZScsIHdoeSBub3QganVzdCAnc3RhdGljJyA/DQoNCkFncmVlLg0KIA0KPiA8Li4uPg0KPiANCj4g PiArX1JURV9FVEhfUlhfREVGKGljZV9yZWN2X3NjYXR0ZXJlZF9wa3RzX3ZlYykNCj4gPiArDQo+ IA0KPiBUaGlzIHdpbGwgZHVwbGljYXRlIG1vc3Qgb2YgdGhlIFJ4IGJ1cnN0IGZ1bmN0aW9uIGZv ciBlYWNoIFBNRCBSeCBvcHMuDQo+IA0KPiA8Li4uPg0KPiANCj4gPiArDQo+ID4gKyNkZWZpbmUg X1JURV9FVEhfRlVOQyhmbikJX3J0ZV9ldGhfIyNmbg0KPiA+ICsNCj4gDQo+IERvIHdlIG5lZWQg dGhpcyBtYWNybz8gVGhlIGZ1bmN0aW9ucyBhcmUgc3RpbGwgJ3N0YXRpYycsIHNvIHRoZXkgd29u J3QgYmUNCj4gdmlzaWJsZSB0byBhcHBsaWNhdGlvbiBhbmQgdGhlcmUgd29uJ3QgYmUgYSBuYW1l c3BhY2UgcHJvYmxlbS4NCg0KTm90IGFsbCBSWC9UWCBidXJzdCBmdW5jdGlvbnMgYXJlIGRlZmlu ZWQgYXMgJ3N0YXRpYycuDQogDQo+IERyb3BwaW5nIGFuZCBqdXN0IHVzZSB0aGUgb3JpZ2luYWwg ZnVjbnRpb24gbmFtZSBtYXkgcmVkdWNlIHRoZSBjaGFuZ2VzIGluIHRoZQ0KPiBkcml2ZXJzLg0K DQpJdCBhbGxvd3MgdG8ga2VlcCBleGlzdGluZyBSWC9UWCBmdW5jdGlvbnMgaW50YWN0IC0gbm8g bmVlZCB0byBjaGFuZ2UgcHJvdG90eXBlLCBhZGQgcHJvbG9nL2VwaWxvZywgZXRjLiBtYW51YWxs eS4NCkluc3RlYWQgdGhlc2UgbWFjcm9zIGhlbHAgdG8gY3JlYXRlIGEgd3JhcHBlciBmdW5jdGlv bnMgYXJvdW5kIGV4aXN0aW5nIG9uZXMsIHRoYXQgd2lsbA0KYmVjb21lIG5ldyBwdWJsaWMgZW50 cnkgcG9pbnRzLiANCkFsbCB0aGF0IHNob3VsZCBoZWxwIHRvIG1ha2UgY2hhbmdlcyBmYXN0ZXIg YW5kIGluIGEgc2FmZXIgbWFubmVyLg0KVGhvdWdoIHRoZXNlIG1hY3JvcyBhcmUganVzdCBoZWxw ZXIgb25lcyB0byBzaW1wbGlmeSB0aGUgdHJhbnNpdGlvbi4NCmlmIHNvbWVvbmUgd2lsbCBwcmVm ZXIgdG8gbWFrZSBjaGFuZ2VzIGluIGFsbCB0aGVpciBSWC9UWCBmdW5jdGlvbiBieSBoYW5kIC0g dGhhdCBpcyBzdGlsbCBwb3NzaWJsZS4gDQogDQo+IDwuLi4+DQo+IA0KPiA+ICtfX3J0ZV9leHBl cmltZW50YWwNCj4gPiArcnRlX2V0aF9yeF9idXJzdF90IHJ0ZV9ldGhfZ2V0X3J4X2J1cnN0KHVp bnQxNl90IHBvcnRfaWQpOw0KPiA+ICsNCj4gPiArX19ydGVfZXhwZXJpbWVudGFsDQo+ID4gK2lu dCBydGVfZXRoX3NldF9yeF9idXJzdCh1aW50MTZfdCBwb3J0X2lkLCBydGVfZXRoX3J4X2J1cnN0 X3QgcnhmKTsNCj4gDQo+IGNhbiBzL19fcnRlX2V4cGVyaW1lbnRhbC9fX3J0ZV9pbnRlcm5hbC8N Cg0KT0suDQogDQo+IDwuLi4+DQo+IA0KPiA+ICsNCj4gPiArX19ydGVfZXhwZXJpbWVudGFsDQo+ ID4gK3J0ZV9ldGhfcnhfYnVyc3RfdA0KPiA+ICtydGVfZXRoX2dldF9yeF9idXJzdCh1aW50MTZf dCBwb3J0X2lkKQ0KPiA+ICt7DQo+ID4gKwlpZiAocG9ydF9pZCA+PSBSVEVfRElNKHJ0ZV9ldGhf YnVyc3RfYXBpKSkgew0KPiA+ICsJCXJ0ZV9lcnJubyA9IEVJTlZBTDsNCj4gPiArCQlyZXR1cm4g TlVMTDsNCj4gPiArCX0NCj4gPiArCXJldHVybiBydGVfZXRoX2J1cnN0X2FwaVtwb3J0X2lkXS5y eF9wa3RfYnVyc3Q7DQo+ID4gK30NCj4gPiArDQo+ID4gK19fcnRlX2V4cGVyaW1lbnRhbA0KPiA+ ICtpbnQNCj4gPiArcnRlX2V0aF9zZXRfcnhfYnVyc3QodWludDE2X3QgcG9ydF9pZCwgcnRlX2V0 aF9yeF9idXJzdF90IHJ4ZikNCj4gPiArew0KPiA+ICsJaWYgKHBvcnRfaWQgPj0gUlRFX0RJTShy dGVfZXRoX2J1cnN0X2FwaSkpDQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ID4gKw0KPiA+ICsJ cnRlX2V0aF9idXJzdF9hcGlbcG9ydF9pZF0ucnhfcGt0X2J1cnN0ID0gcnhmOw0KPiA+ICsJcmV0 dXJuIDA7DQo+ID4gK30NCj4gDQo+IFNpbmNlIHRoZXNlIGFyZSBpbnRlcm5hbCBmdW5jdGlvbnMg Zm9yIGRyaXZlcnMsIGl0IGNhbiBiZSBlYXNpZXIgZm9yIGRyaXZlcnMgdG8NCj4gdXNlIGRpcmVj dGx5IHdpdGggJ3N0cnVjdCBydGVfZXRoX2RldiAqZXRoX2RldicsIGluc3RlYWQgb2YgJ3BvcnRf aWQnLg0KPiANCj4gU28gaW5zdGVhZCBvZiBBUElzIGdldHRpbmcgJ3BvcnRfaWQnIGFzIHBhcmFt ZXRlciwgdGhleSBjYW4gZ2V0ICdzdHJ1Y3QNCj4gcnRlX2V0aF9kZXYgKmV0aF9kZXYnPyBEcml2 ZXJzIGZvciBzdXJlIHdpbGwgaGF2ZSAnZXRoX2RldicgcmVmZXJlbmNlcyBmb3IgdGhlaXINCj4g ZGV2aWNlLg0KDQpJIGFtIGZpbmUgZWl0aGVyIHdheSAtIGl0IGlzIGEgY29udHJvbCBwYXRoIGlu dGVybmFsIGZ1bmN0aW9uLg0KIA0KPiBPdmVyYWxsLCBJIHRoaW5rIG1ha2Ugc2Vuc2UgZm9yIGFs bCBwdWJsaWMgQVBJcyB0byBoYXZlIGhhbmRsZXIgKCdwb3J0X2lkJykgYXMNCj4gcGFyYW1ldGVy LCBhbmQgYWxsIGRyaXZlciBBUElzIHRvIGhhdmUgJ2V0aF9kZXZpY2UnIGFzIHBhcmFtdGVyLg0K PiANCj4gPC4uLj4NCj4gDQo+ID4gQEAgLTQ5ODEsNDQgKzQ5ODEsMTEgQEAgc3RhdGljIGlubGlu ZSB1aW50MTZfdA0KPiA+ICBydGVfZXRoX3J4X2J1cnN0KHVpbnQxNl90IHBvcnRfaWQsIHVpbnQx Nl90IHF1ZXVlX2lkLA0KPiA+ICAJCSBzdHJ1Y3QgcnRlX21idWYgKipyeF9wa3RzLCBjb25zdCB1 aW50MTZfdCBuYl9wa3RzKQ0KPiA+ICB7DQo+ID4gLQlzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiA9 ICZydGVfZXRoX2RldmljZXNbcG9ydF9pZF07DQo+ID4gLQl1aW50MTZfdCBuYl9yeDsNCj4gPiAt DQo+ID4gLSNpZmRlZiBSVEVfRVRIREVWX0RFQlVHX1JYDQo+ID4gLQlSVEVfRVRIX1ZBTElEX1BP UlRJRF9PUl9FUlJfUkVUKHBvcnRfaWQsIDApOw0KPiA+IC0JUlRFX0ZVTkNfUFRSX09SX0VSUl9S RVQoKmRldi0+cnhfcGt0X2J1cnN0LCAwKTsNCj4gPiAtDQo+ID4gLQlpZiAocXVldWVfaWQgPj0g ZGV2LT5kYXRhLT5uYl9yeF9xdWV1ZXMpIHsNCj4gPiAtCQlSVEVfRVRIREVWX0xPRyhFUlIsICJJ bnZhbGlkIFJYIHF1ZXVlX2lkPSV1XG4iLCBxdWV1ZV9pZCk7DQo+ID4gKwlpZiAocG9ydF9pZCA+ PSBSVEVfTUFYX0VUSFBPUlRTKQ0KPiANCj4gQXMgYW4gQVBJLCBpdCBtYWtlcyBzZW5zZSB0byB2 YWxpZGF0ZSB0aGUgaW5wdXQuIEJ1dCBub3Qgc3VyZSB0byBhZGQgdGhlc2UNCj4gY2hlY2tzIGFz IHBhcnQgb2YgdGhpcyBzZXQsIGFzIHByZXZpb3VzIHZlcnNpb25zIGRvbid0IGhhdmUgaXQuIFBl cmhhcHMgd2UgY2FuDQo+IGFkZCB0aGVtIHdpdGggc2VwYXJhdGUgcGF0Y2ggYW5kIGRpc2N1c3Np b24uDQoNCllvdSBtZWFuICdpZiAocG9ydF9pZCA+PSBSVEVfTUFYX0VUSFBPUlRTKSc/DQpObywg dGhpcyBjaGVjayBpcyBub3QgcHJlc2VudCBpbiBjdXJyZW50IHZlcnNpb24uDQpPYnZpb3VzbHks IGl0IGNhbiBiZSByZW1vdmVkLCB0aG91Z2ggSSB0aGluayBpdCB3b3VsZCBiZSBnb29kIHRvIGhh dmUgaXQ6DQp3aWxsIGhlbHAgdG8ga2VlcCB0aGlncyBsZXNzIGVycm9yLXByb25lLg0KSSBkb27i gJl0IHRoaW5rIGl0IHdvdWxkIHJlYWxseSBpbXBhY3QgdGhlIHBlcmZvcm1hbmNlLCBpbiBzb21l IGNhc2VzDQpjb21waWxlciB3aWxsIGV2ZW4gYmUgYWJsZSB0byBvcHRpbWlzZSBvdXQgc3VjaCBj aGVjay4gIA0KDQo+IDwuLi4+DQo+IA0KPiA+ICsrKyBiL2xpYi9ldGhkZXYvdmVyc2lvbi5tYXAN Cj4gPiBAQCAtMjQ5LDYgKzI0OSwxMSBAQCBFWFBFUklNRU5UQUwgew0KPiA+ICAJcnRlX210cl9t ZXRlcl9wb2xpY3lfZGVsZXRlOw0KPiA+ICAJcnRlX210cl9tZXRlcl9wb2xpY3lfdXBkYXRlOw0K PiA+ICAJcnRlX210cl9tZXRlcl9wb2xpY3lfdmFsaWRhdGU7DQo+ID4gKw0KPiA+ICsJIyBhZGRl ZCBpbiAyMS4xMQ0KPiA+ICsJcnRlX2V0aF9idXJzdF9hcGk7DQo+ID4gKwlydGVfZXRoX2dldF9y eF9idXJzdDsNCj4gPiArCXJ0ZV9ldGhfc2V0X3J4X2J1cnN0Ow0KPiANCj4gSSB0aGluayB0aGVz ZSBBUElzIGludGVudGVkIHRvIHVzZSBvbmx5IGJ5IGRyaXZlcnMsIHNvIGluc3RlYWQgb2YgZXhw ZXJpbWVudGFsLA0KPiB0aGV5IGNhbiBiZSBhZGRlZCBhcyAnSU5URVJOQUwnLg0KDQpPSy4NCg0K