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 84EAAA0547; Thu, 21 Oct 2021 09:59:01 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 12BB3410E2; Thu, 21 Oct 2021 09:59:01 +0200 (CEST) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2072.outbound.protection.outlook.com [40.107.93.72]) by mails.dpdk.org (Postfix) with ESMTP id 93EF340142 for ; Thu, 21 Oct 2021 09:58:59 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RFB7S5CdKdO+jCuuudD7bYsSrKGT2By++4xT7h6TzFEGQ3OVUhT8NKI6+gmV3NHUjNTji2uPrBr9Hatft0yXrHNuvxkdb7G05TlT2iB2IJIZBumS0lA9+lBin/4JMiFQv54wpQ4OwWsO7X2OPJ5TGUPYbcAby4QcKBVgv0V3HXIYiIKz0dRgLtKjxlWRaczK6yowyEitVmUolXr2Ah7AKwECZreTdluD3jnngdamM2PLtXDFJRFdupFX01d4nXnxk0ovkK/F7BwFaXnRSwPdBGBKNdpTIT5w1mFY8dx2N7ZqeYeC7rEpJWA9P6Jtvu7zTfFpBigixh1PLEfJfITVqA== 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=p72G8+v6Z1S0lA3Fu8hIgBlI0dtb/INK91HPXVVsXwg=; b=ALW8V/J0eR3GKNfmFATEXbhivvjkxU/lTBgN9Fv0U3TzjlnMmkQX7hcOa+6WuF/T/Z4c+/O+HSMVNt5azSGS58VaQ+PLjwAYtGfnWTOOugpE/M+2oywo2/MDa+gye6wVLRm6GS7/UipbnUVf/yPJopbggGpRSBK4hAlZQCZwUF6M94OXvv+ikJsAAELoQO9aiBhjiZAdhH2CRCYMRd/J3iZxjoP7IXSCXna+vttG3WO7DmLB5ldmy0N4SteraN7WHWxsjejYS7PFhMbq6plJZ26L8JsOMWAaYFonBdnQFauPhkTuhu1ZqNi38kqJQGh+Y2ydP8NoB+Gk3rEVeodVyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p72G8+v6Z1S0lA3Fu8hIgBlI0dtb/INK91HPXVVsXwg=; b=Pt1C1V0aL033wW4KijnHDG3HyHjpQ5T1H84iYvoGqynyHRuf5UX+YAHtvxJ4vbU0IK8GewtAidHlaZiVEeBg8Oc0pvtSkv9l1ta9/SJB0UW7HQtrCAap1ZsHMqc8iZv9cdiPCwVl315WM9IKWDyz8obxG4NGwEXdX7FFZuoyjDAGMQIw2OTl+1ohhPpr1D6pNM7YwbSAhV6PzZkXLHGwiV3wuGn63+bb9adu0Q7uR+qrFnoy38b0cpqb57rEViwVev7R91NnjLTdYrG/VzN6tSwTbEKkx9dRkItxGt1LStFkQNit2JQDIkrCq5PxvFeQCu1EbzHtMEvdqSa1ybjgbA== Received: from DM4PR12MB5373.namprd12.prod.outlook.com (2603:10b6:5:39a::17) by DM6PR12MB5567.namprd12.prod.outlook.com (2603:10b6:5:1ba::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4608.18; Thu, 21 Oct 2021 07:58:54 +0000 Received: from DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::584f:672a:653f:fe25]) by DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::584f:672a:653f:fe25%5]) with mapi id 15.20.4628.016; Thu, 21 Oct 2021 07:58:54 +0000 From: "Xueming(Steven) Li" To: "xiaoyun.li@intel.com" , "yuying.zhang@intel.com" , "dev@dpdk.org" CC: "konstantin.ananyev@intel.com" , "jerinjacobk@gmail.com" , NBU-Contact-Thomas Monjalon , Slava Ovsiienko , "ajit.khaparde@broadcom.com" , "ferruh.yigit@intel.com" , "andrew.rybchenko@oktetlabs.ru" , Lior Margalit Thread-Topic: [PATCH v12 7/7] app/testpmd: add forwarding engine for shared Rx queue Thread-Index: AQHXxjnonnk5lSxJk0ao1A7Sdsm/n6vc/sEAgAAXzgA= Date: Thu, 21 Oct 2021 07:58:53 +0000 Message-ID: <9afd995ac27e0f8d4225414a578fa038f0a2d92d.camel@nvidia.com> References: <20210727034204.20649-1-xuemingl@nvidia.com> <20211021050832.2599691-1-xuemingl@nvidia.com> <20211021050832.2599691-8-xuemingl@nvidia.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.40.4 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f626ed8d-2d3b-48be-0370-08d99468a082 x-ms-traffictypediagnostic: DM6PR12MB5567: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: M7/EbKuAtNxLJ2meRiTeRf/KrzXjKaszQ226SDiPIWnhf/IsxHFg/2QEe4MuPZPc4o5+UCVZY5+kSOXl4Ro9FJxHdqJLKEuPrOv8PG2i3kOY6SnKNNLTSOFynW/CTIEhyBrapV9tAmn2/Y/70i6t8DApcFQGb2TGfqREJlORVbTSZliM1UygHrQ1YrHjsB2cE/BQeDnaTXp2hNkyoOWfOsLd6Y8ev9IJfuQHLtDsTjw/JbcSgsLoEhioNuD0H6AApdi/Ps3Y293fti/8+TdvTrg23TW1JqIvNpVokfOKrkeXbUEHC6PoFRMpTpXsD2XW01GUFIVF19YE/vz920vQH5FPN46B76MWXciIOL5zTbECOuA5zIOpQYTvfwKa/ZeEMczJOihf9Gd47P0zSvXsNBLHi89fqosKfcSJoD6hadUTZ59LKAULvQW158S72TsqX+6yyiou6DLU0UnH6l+GFifmPm6TEprDOa2v3j3tW11aHLtfxlg9Zh6I1HN7MxC1LgbVo/hKO2hGqbeMAeuPavz1/dtFJ1rmcmzEB+VSClW/Hbd+L2/YnYPa+VVfqD867qSZyM/1WfL+/fIQQq65MTlXZauaS/yyDlXMD5KSWNROg+HP3H7X9oDUd/P8CjMT8QnjeM2L8TMwyj37OcdLW6jLRVBi7Q9QHWZJg8cV9/M6ftL/a3H3jaqWR/m+htPJst186m/e7Fg2uX1ahiA7ug== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5373.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(508600001)(26005)(107886003)(186003)(6512007)(316002)(8936002)(110136005)(54906003)(8676002)(122000001)(5660300002)(53546011)(6506007)(38100700002)(86362001)(71200400001)(38070700005)(83380400001)(76116006)(66946007)(66476007)(2906002)(91956017)(66556008)(4001150100001)(64756008)(6486002)(66446008)(36756003)(4326008)(2616005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?R0xzcG5ZRXoxNUtBaXNnMUtpZDhHUUYxcTJPUmFYSzZwdU5XTndEdVNSYWh3?= =?utf-8?B?NGxIcXU5cFlnZm0xWVBwc08wZzdhaXR2cXhKUFltV2d3bmoySFVCRWs1Yjdm?= =?utf-8?B?c1hhN1dlR1ptNVlObnpldDhxdHY3WmdmRk1WaGNHelBoYlZ3T1FIZWQ3UTV3?= =?utf-8?B?ZllNUWJBbXNKYjNIRVZHa0hOZjArWk5URjA1d1ozOHRWblNQN25JOXZ6QkFN?= =?utf-8?B?c2p0elJkYzM5NjlTZmxteXZOQldGME5SdjlQSzNlTGtubEZXUDhJeFhPZ0k3?= =?utf-8?B?bVk4M25iRVo1SFhQM0hSbFRIZ1NqUWdkR1I5UDk2NHhraDJXZTNjV0hVZmlM?= =?utf-8?B?My81NGNVaHlvcUpLdkVwQ2xZVStvMEhNcWFBUVYrclJHMUhXM0hMbmJHYUtv?= =?utf-8?B?Z3hLSVNETDNCaDlhazhad1hibGI4NC9HdGkrbzd1c1VIaGh3WEpvMFlwWjM5?= =?utf-8?B?ejRmQ1BXWU5iTEdabk90SmFFZWZVNTNmUy9DRFJOdUhlVE9KTTA2eks2aTNW?= =?utf-8?B?Vmg2M1hMeEpYcStIekczRHhTWHg4cGVwWE1aMDNDejhIbTlSMzlEd0FWZ3E0?= =?utf-8?B?UE8rK21tNW9NKzFsejVNVVdmRTBQa0RERDY1a3lXdHVmMFFEdStORkRRa3VM?= =?utf-8?B?OHNIOWV0ZWI4YnpQVGpja1IrNTQveG1KcVNGd3JqYUJuN1ZER1R3cDVuNEYy?= =?utf-8?B?OVVlT2dtUUFrcDRONjdJakxETmdjNWNwekQrQ3NJejZzQ1pGMmlBcUFpekhv?= =?utf-8?B?azZWVDhyMyt1Zi9uMlNkVGVSVDdmcVYyRllmamltemtFVSsxVFFZSjkzQ1ZS?= =?utf-8?B?b1NmMzhEb2x1UmFkZE43RmRQU3RTRnBDSUh3TmRVenpEUDdONXYvODVLaDRU?= =?utf-8?B?cHlKaXRGcjAzUXZZWlpFQ2R0R01YTlNZdy8rOHlFQUp0OHAxUDFMWEdmbElO?= =?utf-8?B?bytVc0FybGQ4N2xaVDZWcXcwRGN3Ry8vMkpmVFNGUTQ2NUllWlUzcGMwSUxj?= =?utf-8?B?bGVuaWh4cjFWSkZweVRQaTR5ekYrS1IwNTNYRnFMVGhDWVJ2bnYxSUlYalBa?= =?utf-8?B?cWlORzJIdHpFNlljd1NKai9Pa2Vlbi9yekVuK1JIZkRCdUlLeG1qTTY2U01w?= =?utf-8?B?US8wbFEzYUdYbHVQdjd2WlNrWlMyM0UzN1EvNms5WWJyczQ5QWV1WmlYSUNC?= =?utf-8?B?bDVzTERSSzJWQmdVRWVmbUlJczRXczkrT3FTelZ5VXNpTUNhaXRNRmdQQWdV?= =?utf-8?B?andjQVJPRW5rZ0g5L2g3YitXdVZpVy9qK2Q1Mys0aDFBcFdtY1RnS3pMZ0xW?= =?utf-8?B?MGtjZnRJV2RUWENKaXZVNWhDKysxOGlUTFRwK1JrNFBsdGRrSmdMYWRDS3Vk?= =?utf-8?B?cEptejEzbVNuMWVjNlkyODlIRnliMlBKb1ZSS245ZHRNTFZKTHp1Zm9SY1Jh?= =?utf-8?B?RkI1SlRSZDRXM3FSR3UvY2VZRkplNG5RODM4MkhtS2p6RDRYVnVscVgySHIv?= =?utf-8?B?VVZTK1F1cFcwOXJRVlBmMzVNbkFNT2FaaWVpOUhNK3BROWZpWThBVmV6UmpZ?= =?utf-8?B?RUMrWktHbGV2ZklKRGthRUY0ZWxzbDFRYmxkSThFc3BDcHlycFdrdlg1d0VC?= =?utf-8?B?Q0s1bFZVSmFaNWozdEFKRG5vaVZHenFCaWszL1d3dWxnV29laHRvRS9CK2RR?= =?utf-8?B?ZEdpZ05Jc0g1TExXUXFjSHEyekpqb3BYUm8vcUhlbUp1M1hiaFhpSC94a1NE?= =?utf-8?B?MzljTHFCSXNCS3BIcFZaZE54L2JOamRKOGZvTXVSQldDWmdMeTlJUEpQYzFp?= =?utf-8?B?QWRzdlRscHhuMmtTaUg1QT09?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5373.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f626ed8d-2d3b-48be-0370-08d99468a082 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Oct 2021 07:58:53.8696 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: xuemingl@nvidia.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB5567 Subject: Re: [dpdk-dev] [PATCH v12 7/7] app/testpmd: add forwarding engine for shared Rx queue 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" T24gVGh1LCAyMDIxLTEwLTIxIGF0IDA2OjMzICswMDAwLCBMaSwgWGlhb3l1biB3cm90ZToNCj4g PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IFh1ZW1pbmcgTGkgPHh1ZW1p bmdsQG52aWRpYS5jb20+DQo+ID4gU2VudDogVGh1cnNkYXksIE9jdG9iZXIgMjEsIDIwMjEgMTM6 MDkNCj4gPiBUbzogZGV2QGRwZGsub3JnOyBaaGFuZywgWXV5aW5nIDx5dXlpbmcuemhhbmdAaW50 ZWwuY29tPjsgTGksDQo+ID4gWGlhb3l1bg0KPiA+IDx4aWFveXVuLmxpQGludGVsLmNvbT4NCj4g PiBDYzogeHVlbWluZ2xAbnZpZGlhLmNvbTsgSmVyaW4gSmFjb2IgPGplcmluamFjb2JrQGdtYWls LmNvbT47DQo+ID4gWWlnaXQsIEZlcnJ1aA0KPiA+IDxmZXJydWgueWlnaXRAaW50ZWwuY29tPjsg QW5kcmV3IFJ5YmNoZW5rbw0KPiA+IDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IFZp YWNoZXNsYXYgT3ZzaWllbmtvDQo+ID4gPHZpYWNoZXNsYXZvQG52aWRpYS5jb20+OyBUaG9tYXMg TW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+Ow0KPiA+IExpb3INCj4gPiBNYXJnYWxpdCA8 bG1hcmdhbGl0QG52aWRpYS5jb20+OyBBbmFueWV2LCBLb25zdGFudGluDQo+ID4gPGtvbnN0YW50 aW4uYW5hbnlldkBpbnRlbC5jb20+OyBBaml0IEtoYXBhcmRlDQo+ID4gPGFqaXQua2hhcGFyZGVA YnJvYWRjb20uY29tPg0KPiA+IFN1YmplY3Q6IFtQQVRDSCB2MTIgNy83XSBhcHAvdGVzdHBtZDog YWRkIGZvcndhcmRpbmcgZW5naW5lIGZvcg0KPiA+IHNoYXJlZCBSeA0KPiA+IHF1ZXVlDQo+ID4g DQo+ID4gVG8gc3VwcG9ydCBzaGFyZWQgUnggcXVldWUsIHRoaXMgcGF0Y2ggaW50cm9kdWNlcyBk ZWRpY2F0ZQ0KPiA+IGZvcndhcmRpbmcgZW5naW5lLg0KPiA+IFRoZSBlbmdpbmUgZ3JvdXBzIHJl Y2VpdmVkIHBhY2tldHMgYnkgbWJ1Zi0+cG9ydCBpbnRvIHN1Yi1ncm91cCwNCj4gPiB1cGRhdGVz DQo+ID4gc3RyZWFtIHN0YXRpc3RpY3MgYW5kIHNpbXBseSBmcmVlcyBwYWNrZXRzLg0KPiA+IA0K PiA+IFNpZ25lZC1vZmYtYnk6IFh1ZW1pbmcgTGkgPHh1ZW1pbmdsQG52aWRpYS5jb20+DQo+ID4g QWNrZWQtYnk6IFhpYW95dW4gTGkgPHhpYW95dW4ubGlAaW50ZWwuY29tPg0KPiANCj4gSSBkaWRu J3QgYWNrIHlvdSBvbiB0aGlzIHBhdGNoLiBJIHJlbWVtYmVyIEkgYWRkZWQgIisxIiB0byB0aGUN Cj4gY29tbWVudCBhYm91dCB5b3VyIGluY2x1ZGVzIGlzc3VlLg0KPiBJdCB3aWxsIGNvbmZ1c2Ug cmV2aWV3ZXJzIG5vdCB0byByZXZpZXcgbmV3IHZlcnNpb25zLg0KDQpZZXMsIHRoZXkgdGhlcmUg YnkgbWlzdGFrZS4NCg0KPiANCj4gPiBBY2tlZC1ieTogQWppdCBLaGFwYXJkZSA8YWppdC5raGFw YXJkZUBicm9hZGNvbS5jb20+DQo+IA0KPiBJIGRpZG4ndCBzZWUgaGUgYWNrIHRoaXMgcGF0Y2gg YXMgd2VsbC4NCj4gUGxlYXNlIHJlbW92ZSB0aGVzZSBhY2tzLg0KPiANCj4gPiAtLS0NCj4gPiDC oGFwcC90ZXN0LXBtZC9tZXNvbi5idWlsZCAgICAgICAgICAgICAgICAgICAgfCAgIDEgKw0KPiA+ IMKgYXBwL3Rlc3QtcG1kL3NoYXJlZF9yeHFfZndkLmMgICAgICAgICAgICAgICB8IDExMw0KPiA+ ICsrKysrKysrKysrKysrKysrKysrDQo+ID4gwqBhcHAvdGVzdC1wbWQvdGVzdHBtZC5jICAgICAg ICAgICAgICAgICAgICAgIHwgICAxICsNCj4gPiDCoGFwcC90ZXN0LXBtZC90ZXN0cG1kLmggICAg ICAgICAgICAgICAgICAgICAgfCAgIDUgKw0KPiA+IMKgZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91 Zy9ydW5fYXBwLnJzdCAgICAgICB8ICAgNSArLQ0KPiA+IMKgZG9jL2d1aWRlcy90ZXN0cG1kX2Fw cF91Zy90ZXN0cG1kX2Z1bmNzLnJzdCB8ICAgNSArLQ0KPiA+IMKgNiBmaWxlcyBjaGFuZ2VkLCAx MjggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkgIGNyZWF0ZSBtb2RlDQo+ID4gMTAwNjQ0 IGFwcC90ZXN0LQ0KPiA+IHBtZC9zaGFyZWRfcnhxX2Z3ZC5jDQo+ID4gDQo+ID4gZGlmZiAtLWdp dCBhL2FwcC90ZXN0LXBtZC9tZXNvbi5idWlsZCBiL2FwcC90ZXN0LXBtZC9tZXNvbi5idWlsZA0K PiA+IGluZGV4DQo+ID4gMWFkNTRjYWVmMmMuLmI1YTBmN2I2MjA5IDEwMDY0NA0KPiA+IC0tLSBh L2FwcC90ZXN0LXBtZC9tZXNvbi5idWlsZA0KPiA+ICsrKyBiL2FwcC90ZXN0LXBtZC9tZXNvbi5i dWlsZA0KPiA+IEBAIC0yMiw2ICsyMiw3IEBAIHNvdXJjZXMgPSBmaWxlcygNCj4gPiDCoMKgwqDC oMKgwqDCoMKgwqAnbm9pc3lfdm5mLmMnLA0KPiA+IMKgwqDCoMKgwqDCoMKgwqDCoCdwYXJhbWV0 ZXJzLmMnLA0KPiA+IMKgwqDCoMKgwqDCoMKgwqDCoCdyeG9ubHkuYycsDQo+ID4gKyAgICAgICAg J3NoYXJlZF9yeHFfZndkLmMnLA0KPiA+IMKgwqDCoMKgwqDCoMKgwqDCoCd0ZXN0cG1kLmMnLA0K PiA+IMKgwqDCoMKgwqDCoMKgwqDCoCd0eG9ubHkuYycsDQo+ID4gwqDCoMKgwqDCoMKgwqDCoMKg J3V0aWwuYycsDQo+ID4gZGlmZiAtLWdpdCBhL2FwcC90ZXN0LXBtZC9zaGFyZWRfcnhxX2Z3ZC5j IGIvYXBwL3Rlc3QtDQo+ID4gcG1kL3NoYXJlZF9yeHFfZndkLmMNCj4gPiBuZXcgZmlsZSBtb2Rl IDEwMDY0NCBpbmRleCAwMDAwMDAwMDAwMC4uYzQ2ODQ4OTM2NzQNCj4gPiAtLS0gL2Rldi9udWxs DQo+ID4gKysrIGIvYXBwL3Rlc3QtcG1kL3NoYXJlZF9yeHFfZndkLmMNCj4gPiBAQCAtMCwwICsx LDExMyBAQA0KPiA+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlDQo+ ID4gKyAqIENvcHlyaWdodCAoYykgMjAyMSBOVklESUEgQ29ycG9yYXRpb24gJiBBZmZpbGlhdGVz ICAqLw0KPiA+ICsNCj4gDQo+IFBsZWFzZSBhZGQgIiNpbmNsdWRlIDxydGVfZXRoZGV2Lmg+IiBo ZXJlLg0KPiBZb3VyIHNoYXJlZF9yeHFfZndkLmMgb25seSBuZWVkcyB0aGlzIGluY2x1ZGUuDQoN CkFzIGV4cGxhaW5lZCBiZWxvdywgdGVzdHBtZCByZWxpZXMgb24gcnRlX2V0aGRldi5oLg0KDQo+ IA0KPiA+ICsjaW5jbHVkZSAidGVzdHBtZC5oIg0KPiA+ICsNCj4gPiArLyoNCj4gPiArICogUngg b25seSBzdWItYnVyc3QgZm9yd2FyZGluZy4NCj4gPiArICovDQo+ID4gK3N0YXRpYyB2b2lkDQo+ ID4gK2ZvcndhcmRfcnhfb25seSh1aW50MTZfdCBuYl9yeCwgc3RydWN0IHJ0ZV9tYnVmICoqcGt0 c19idXJzdCkgew0KPiA+ICsJcnRlX3BrdG1idWZfZnJlZV9idWxrKHBrdHNfYnVyc3QsIG5iX3J4 KTsgfQ0KPiA+ICsNCj4gPiArLyoqDQo+ID4gKyAqIEdldCBwYWNrZXQgc291cmNlIHN0cmVhbSBi eSBzb3VyY2UgcG9ydCBhbmQgcXVldWUuDQo+ID4gKyAqIEFsbCBzdHJlYW1zIG9mIHNhbWUgc2hh cmVkIFJ4IHF1ZXVlIGxvY2F0ZXMgb24gc2FtZSBjb3JlLg0KPiA+ICsgKi8NCj4gPiArc3RhdGlj IHN0cnVjdCBmd2Rfc3RyZWFtICoNCj4gPiArZm9yd2FyZF9zdHJlYW1fZ2V0KHN0cnVjdCBmd2Rf c3RyZWFtICpmcywgdWludDE2X3QgcG9ydCkgew0KPiA8c25pcD4NCj4gPiBkaWZmIC0tZ2l0IGEv YXBwL3Rlc3QtcG1kL3Rlc3RwbWQuaCBiL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmggaW5kZXgNCj4g PiA5NDgyZGFiMzA3MS4uZWY3YTYxOTkzMTMgMTAwNjQ0DQo+ID4gLS0tIGEvYXBwL3Rlc3QtcG1k L3Rlc3RwbWQuaA0KPiA+ICsrKyBiL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmgNCj4gPiBAQCAtMTIs NiArMTIsMTAgQEANCj4gPiDCoCNpbmNsdWRlIDxydGVfZ3JvLmg+DQo+ID4gwqAjaW5jbHVkZSA8 cnRlX2dzby5oPg0KPiA+IMKgI2luY2x1ZGUgPHJ0ZV9vc19zaGltLmg+DQo+ID4gKyNpbmNsdWRl IDxydGVfbWJ1Zl9keW4uaD4NCj4gPiArI2luY2x1ZGUgPHJ0ZV9mbG93Lmg+DQo+ID4gKyNpbmNs dWRlIDxydGVfZXRoZGV2Lmg+DQo+ID4gKw0KPiANCj4gUGxlYXNlIHJlbW92ZSB0aGVzZSBpbmNs dWRlcyBhbmQgdGhpcyBibGFuayBsaW5lLg0KPiBZb3Ugb25seSBuZWVkIHRvIGFkZCB0aGUgbGli IHlvdSBuZWVkIGluIHlvdXIgZmlsZSBsaWtlIEkgc2FpZCBhYm92ZS4NCg0KRnJvbSB0ZXN0LCB0 ZXN0cG1kLmggdXNlZCB0aGVzZSBoZWFkZXJzLCBvdGhlcndpc2UgY29tcGlsZSBlcnJvciBpZiBu b3QNCmluY2x1ZGVkIGJ5IGZ3ZCBlbmdpbmUuDQoNCj4gDQo+ID4gwqAjaW5jbHVkZSA8Y21kbGlu ZS5oPg0KPiA+IMKgI2luY2x1ZGUgPHN5cy9xdWV1ZS5oPg0KPiA+IMKgI2lmZGVmIFJURV9IQVNf SkFOU1NPTg0KPiA+IEBAIC0zMzksNiArMzQzLDcgQEAgZXh0ZXJuIHN0cnVjdCBmd2RfZW5naW5l DQo+ID4gZml2ZV90dXBsZV9zd2FwX2Z3ZF9lbmdpbmU7DQo+ID4gI2lmZGVmIFJURV9MSUJSVEVf SUVFRTE1ODggIGV4dGVybiBzdHJ1Y3QgZndkX2VuZ2luZQ0KPiA+IGllZWUxNTg4X2Z3ZF9lbmdp bmU7DQo+ID4gI2VuZGlmDQo+ID4gK2V4dGVybiBzdHJ1Y3QgZndkX2VuZ2luZSBzaGFyZWRfcnhx X2VuZ2luZTsNCj4gPiANCj4gPiDCoGV4dGVybiBzdHJ1Y3QgZndkX2VuZ2luZSAqIGZ3ZF9lbmdp bmVzW107IC8qKjwgTlVMTCB0ZXJtaW5hdGVkDQo+ID4gYXJyYXkuICovDQo+ID4gZXh0ZXJuIGNt ZGxpbmVfcGFyc2VfaW5zdF90IGNtZF9zZXRfcmF3OyBkaWZmIC0tZ2l0DQo+ID4gYS9kb2MvZ3Vp ZGVzL3Rlc3RwbWRfYXBwX3VnL3J1bl9hcHAucnN0DQo+ID4gYi9kb2MvZ3VpZGVzL3Rlc3RwbWRf YXBwX3VnL3J1bl9hcHAucnN0DQo+ID4gaW5kZXggZmFhM2VmYjkwMmMuLjc0NDEyYmI4MmNhIDEw MDY0NA0KPiA+IC0tLSBhL2RvYy9ndWlkZXMvdGVzdHBtZF9hcHBfdWcvcnVuX2FwcC5yc3QNCj4g PiArKysgYi9kb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3J1bl9hcHAucnN0DQo+ID4gQEAgLTI1 OCw2ICsyNTgsNyBAQCBUaGUgY29tbWFuZCBsaW5lIG9wdGlvbnMgYXJlOg0KPiA+IMKgwqDCoMKg wqDCoMKgwqB0bQ0KPiA+IMKgwqDCoMKgwqDCoMKgwqBub2lzeQ0KPiA+IMKgwqDCoMKgwqDCoMKg wqA1dHN3YXANCj4gPiArICAgICAgIHNoYXJlZC1yeHENCj4gPiANCj4gPiDCoCogICBgYC0tcnNz LWlwYGANCj4gPiANCj4gPiBAQCAtMzk5LDcgKzQwMCw5IEBAIFRoZSBjb21tYW5kIGxpbmUgb3B0 aW9ucyBhcmU6DQo+ID4gDQo+ID4gwqDCoMKgwqDCoENyZWF0ZSBxdWV1ZXMgaW4gc2hhcmVkIFJ4 IHF1ZXVlIG1vZGUgaWYgZGV2aWNlIHN1cHBvcnRzLg0KPiA+IMKgwqDCoMKgwqBTaGFyZWQgUngg cXVldWVzIGFyZSBncm91cGVkIHBlciBYIHBvcnRzLiBYIGRlZmF1bHRzIHRvDQo+ID4gVUlOVDMy X01BWCwNCj4gPiAtICAgIGltcGxpZXMgYWxsIHBvcnRzIGpvaW4gc2hhcmUgZ3JvdXAgMS4NCj4g PiArICAgIGltcGxpZXMgYWxsIHBvcnRzIGpvaW4gc2hhcmUgZ3JvdXAgMS4gQSBuZXcgZm9yd2Fy ZGluZyBlbmdpbmUNCj4gPiArICAgICJzaGFyZWQtcnhxIiBzaG91bGQgYmUgdXNlZCBmb3Igc2hh cmVkIFJ4IHF1ZXVlcy4gVGhpcyBlbmdpbmUNCj4gPiBkb2VzDQo+ID4gKyAgICBSeCBvbmx5IGFu ZCB1cGRhdGUgc3RyZWFtIHN0YXRpc3RpY3MgYWNjb3JkaW5nbHkuDQo+ID4gDQo+ID4gwqAqICAg YGAtLWV0aC1saW5rLXNwZWVkYGANCj4gPiANCj4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy90 ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdA0KPiA+IGIvZG9jL2d1aWRlcy90ZXN0cG1k X2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdA0KPiA+IGluZGV4IDZkMTI3ZDlhN2JjLi43OGQyMzQy OWM0MiAxMDA2NDQNCj4gPiAtLS0gYS9kb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRf ZnVuY3MucnN0DQo+ID4gKysrIGIvZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1 bmNzLnJzdA0KPiA+IEBAIC0zMTQsNyArMzE0LDcgQEAgc2V0IGZ3ZA0KPiA+IMKgU2V0IHRoZSBw YWNrZXQgZm9yd2FyZGluZyBtb2RlOjoNCj4gPiANCj4gPiDCoMKgwqDCoHRlc3RwbWQ+IHNldCBm d2QgKGlvfG1hY3xtYWNzd2FwfGZsb3dnZW58IFwNCj4gPiAtICAgICAgICAgICAgICAgICAgICAg cnhvbmx5fHR4b25seXxjc3VtfGljbXBlY2hvfG5vaXN5fDV0c3dhcCkNCj4gPiAoIiJ8cmV0cnkp DQo+ID4gKw0KPiA+ICsgcnhvbmx5fHR4b25seXxjc3VtfGljbXBlY2hvfG5vaXN5fDV0c3dhcHxz aGFyZWQtcnhxKSAoIiJ8cmV0cnkpDQo+ID4gDQo+ID4gwqBgYHJldHJ5YGAgY2FuIGJlIHNwZWNp ZmllZCBmb3IgZm9yd2FyZGluZyBlbmdpbmVzIGV4Y2VwdA0KPiA+IGBgcnhfb25seWBgLg0KPiA+ IA0KPiA+IEBAIC0zNTcsNiArMzU3LDkgQEAgVGhlIGF2YWlsYWJsZSBpbmZvcm1hdGlvbiBjYXRl Z29yaWVzIGFyZToNCj4gPiANCj4gPiDCoMKgwqBMNCBzd2FwcyB0aGUgc291cmNlIHBvcnQgYW5k IGRlc3RpbmF0aW9uIHBvcnQgb2YgdHJhbnNwb3J0IGxheWVyDQo+ID4gKFRDUCBhbmQgVURQKS4N Cj4gPiANCj4gPiArKiBgYHNoYXJlZC1yeHFgYDogUmVjZWl2ZSBvbmx5IGZvciBzaGFyZWQgUngg cXVldWUuDQo+ID4gKyAgUmVzb2x2ZSBwYWNrZXQgc291cmNlIHBvcnQgZnJvbSBtYnVmIGFuZCB1 cGRhdGUgc3RyZWFtDQo+ID4gc3RhdGlzdGljcw0KPiA+IGFjY29yZGluZ2x5Lg0KPiA+ICsNCj4g PiDCoEV4YW1wbGU6Og0KPiA+IA0KPiA+IMKgwqDCoMKgdGVzdHBtZD4gc2V0IGZ3ZCByeG9ubHkN Cj4gPiAtLQ0KPiA+IDIuMzMuMA0KPiANCg0K