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 CC746A0526; Thu, 9 Jul 2020 08:08:35 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0C1C21DA58; Thu, 9 Jul 2020 08:08:35 +0200 (CEST) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60062.outbound.protection.outlook.com [40.107.6.62]) by dpdk.org (Postfix) with ESMTP id EF0AF1DA56 for ; Thu, 9 Jul 2020 08:08:32 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i1GRE8C7spD+ZNlE08yGB2wgQyX/gFdZpOshXXB9ESL8Xi9wloiZccf31GpJfDuk09riT2qD1jk1aqX2yN3yWoyQMdQZgOFAecMNRDDYVyI/WCb92bDhZh8LywN9EcVCPs1YW6j+FQY+n80II3j+A1PazeFJ2t8LXhru6apqvEcXhmdVzWlL36ydf1mjsgnlzZIw71nJXYru5l8hcRwbxgimNbtA7R20X8LSkLZPPS8F+xVorcDbdPgelutOKpaBAQSZ/MNasLecpOzbXMq67xgZ2JR4ndX4i9xJtcsC2Vk3VhUMfhoaDat5550rXeb8gClbrkz10gGCnMI7pjEH9g== 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=VKrk6VLaoHMfLVhC19d4CE/QaeSbaCGpIVIlPUAXvvI=; b=RQai265avMjoJ0EWfl2EJVYd+XqVAr4JI9Xc/ckKAStI2SdX5Ke/ImAVHBGKxPG0iyGWS1FeVXeXSpyUrnNWmNdTps+iC9dXMLfgN1iH0jGlqr8N2aYRj34BdSZXkPXyVympBwss45E2GQIoE1z5gG6ntmIsKStpKLDS6BEAmnr5SpUovBT7tZmKcc9e9Ua3+cAw7OiRPDPWl4eVip5P9K2TxWpszsYqNjNrrLG+rpsE1bc3vuSUt4csDKbg1tDCsArwcyz+QEHTpeLVrW+Q1ziKCrgXuUbNL8TV+LxkHhTa+ZkktcWwppE+aW/0YBJziQyOFkmIcuXc58PyIzbEIg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VKrk6VLaoHMfLVhC19d4CE/QaeSbaCGpIVIlPUAXvvI=; b=RwPbrmtQkYWhyEr19/wom44KPriJOZK71GPm5FSZdTyyYuwCqklvxk/g5g8+KGm3w8X97CPpxt3tPGCPkkNOCSTpfJW6Ed9K8pn7JmG2ELw0vho+gdnVQ82u/4i8G/5XCP449wzx50jTDKIiwupot7EdvEKa+mbMMPKAdAp2/h0= Received: from AM6PR05MB5176.eurprd05.prod.outlook.com (2603:10a6:20b:63::30) by AM6PR05MB5349.eurprd05.prod.outlook.com (2603:10a6:20b:69::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.28; Thu, 9 Jul 2020 06:08:31 +0000 Received: from AM6PR05MB5176.eurprd05.prod.outlook.com ([fe80::9024:accb:4d6b:805f]) by AM6PR05MB5176.eurprd05.prod.outlook.com ([fe80::9024:accb:4d6b:805f%3]) with mapi id 15.20.3153.031; Thu, 9 Jul 2020 06:08:31 +0000 From: Ori Kam To: Jerin Jacob , Andrey Vesnovaty CC: dpdk-dev , "jer@marvell.com" , Thomas Monjalon , Ferruh Yigit , Stephen Hemminger , "Richardson, Bruce" , Slava Ovsiienko , Andrey Vesnovaty , Marko Kovacevic , Radu Nicolau , Akhil Goyal , Tomasz Kantecki , Sunil Kumar Kori , Pavan Nikhilesh , John McNamara Thread-Topic: [PATCH v2 6/6] examples/flow_filtering: utilize shared RSS action Thread-Index: AQHWVXBVlkgtWNmf5EO73WmcGbp47Kj+rECAgAAXR0A= Date: Thu, 9 Jul 2020 06:08:31 +0000 Message-ID: References: <20200702120511.16315-1-andreyv@mellanox.com> <20200708213946.30108-1-andreyv@mellanox.com> <20200708213946.30108-7-andreyv@mellanox.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=mellanox.com; x-originating-ip: [147.236.152.129] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 65d68940-f5b9-48c2-dbe0-08d823ce814d x-ms-traffictypediagnostic: AM6PR05MB5349: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:99; x-forefront-prvs: 04599F3534 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QNgNUjS6YHklT09Lt8jHYwwaxaoDLVwHHQzHF3TQBwBMAuHAd6JRYzt77mjkyzcI7bxMmOyMIsIK/l4/G9goOKUgry0eFLduj5lLDICttBwBNDqT3S4dA77D5fO3tQH0iTIHJuLkP1cDpcBh3pjA8HdGq/hWcKWs6ckure6PpsWv626xbeVYdUWzcdQjWC8ro+L7hlEFOZz2NOuqxs7TcUiQ1FXOzYgQEGxDJZO+76OuoDXD/8rrMjumWYD4YZFLk52aVgMVSvRYISqQGk+4DYCG3teDD4ej330amXx1/et90c3UYa23DGp+HtLhfnnH6zJHLBufXx8TzhrBuyNhsg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM6PR05MB5176.eurprd05.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(396003)(346002)(376002)(136003)(39860400002)(366004)(33656002)(5660300002)(6636002)(4326008)(76116006)(30864003)(66946007)(64756008)(66476007)(66556008)(66446008)(2906002)(316002)(83380400001)(54906003)(7696005)(110136005)(186003)(7416002)(53546011)(86362001)(8676002)(52536014)(6506007)(26005)(55016002)(9686003)(478600001)(8936002)(71200400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: WVOsqoGfJL1y84kKMFiWPR4RPP8/8ez+7xA8fhaghF2dgqAG+CPAVaAPPSLMxYuPkBjZ/SpXMkupaewRodqBeP/uplb7jDShR5WQ6fZaKb0JKW9S7O04NaAxPhZxMzY98m+xtiyf8rHmMoGSH8ZxwjXzna2ScX0aio3CWwNMheK0aOG5N74zHsIPe16srQkM0I7F/tcdbh3rrUhgSQjxcZ50ZQ32gUi7Zeq71DjKGw3t2G+Uimul2IQdPZP5ByhMyAqM6Gktwu1u7w/JS0EuZxXo36l7WrJh8ALJhTkKk0YwDItHoIxSt9E6RZLJRfwiZyGpgT2yYJRguDgYnPUr4/LYqMcfV13W+OYb9UeTn+SOid+SqDS7484mLRwYByfjqDejJYv32oYKmggjEwg7QACdi5Hj9c159Pl2DLPCX5X7gAHqHerQHEjlUAQZQ2r7BaKJHnLqeJAlifTwfQqUAGxvChBx8aQeg7/Z40nsaRxbIPGm6HN0eGZEyS4Qna+O Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM6PR05MB5176.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 65d68940-f5b9-48c2-dbe0-08d823ce814d X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Jul 2020 06:08:31.0764 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: YC6R2n7hGHcrtdoVKASM8N+fldc8T0xK3yrWqsSLUglW4p7ykWeBZ9i+j+5N6tLsh/xl0dkQuJER7UEgNzM3jA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR05MB5349 Subject: Re: [dpdk-dev] [PATCH v2 6/6] examples/flow_filtering: utilize shared RSS action 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" SGkgQW5kcmV5LA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEplcmlu IEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBKdWx5IDks IDIwMjAgNzo0NCBBTQ0KPiBUbzogQW5kcmV5IFZlc25vdmF0eSA8YW5kcmV5dkBtZWxsYW5veC5j b20+DQo+IENjOiBkcGRrLWRldiA8ZGV2QGRwZGsub3JnPjsgamVyQG1hcnZlbGwuY29tOyBUaG9t YXMgTW9uamFsb24NCj4gPHRob21hc0Btb25qYWxvbi5uZXQ+OyBGZXJydWggWWlnaXQgPGZlcnJ1 aC55aWdpdEBpbnRlbC5jb20+OyBTdGVwaGVuDQo+IEhlbW1pbmdlciA8c3RlcGhlbkBuZXR3b3Jr cGx1bWJlci5vcmc+OyBSaWNoYXJkc29uLCBCcnVjZQ0KPiA8YnJ1Y2UucmljaGFyZHNvbkBpbnRl bC5jb20+OyBPcmkgS2FtIDxvcmlrYUBtZWxsYW5veC5jb20+OyBTbGF2YQ0KPiBPdnNpaWVua28g PHZpYWNoZXNsYXZvQG1lbGxhbm94LmNvbT47IEFuZHJleSBWZXNub3ZhdHkNCj4gPGFuZHJleS52 ZXNub3ZhdHlAZ21haWwuY29tPjsgTWFya28gS292YWNldmljDQo+IDxtYXJrby5rb3ZhY2V2aWNA aW50ZWwuY29tPjsgUmFkdSBOaWNvbGF1IDxyYWR1Lm5pY29sYXVAaW50ZWwuY29tPjsgQWtoaWwN Cj4gR295YWwgPGFraGlsLmdveWFsQG54cC5jb20+OyBUb21hc3ogS2FudGVja2kgPHRvbWFzei5r YW50ZWNraUBpbnRlbC5jb20+Ow0KPiBTdW5pbCBLdW1hciBLb3JpIDxza29yaUBtYXJ2ZWxsLmNv bT47IFBhdmFuIE5pa2hpbGVzaA0KPiA8cGJoYWdhdmF0dWxhQG1hcnZlbGwuY29tPjsgSm9obiBN Y05hbWFyYSA8am9obi5tY25hbWFyYUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0gg djIgNi82XSBleGFtcGxlcy9mbG93X2ZpbHRlcmluZzogdXRpbGl6ZSBzaGFyZWQgUlNTIGFjdGlv bg0KPiANCj4gT24gVGh1LCBKdWwgOSwgMjAyMCBhdCAzOjA5IEFNIEFuZHJleSBWZXNub3ZhdHkg PGFuZHJleXZAbWVsbGFub3guY29tPg0KPiB3cm90ZToNCj4gPg0KPiA+IFRoaXMgY29tbWl0IGdp dmVzIHZlcnkgZmlyc3Qgc2hhcmVkIFJTUyBhY3Rpb24gdXNhZ2UgZXhhbXBsZSBhbmQNCj4gPiBk ZW1vbnN0cmF0ZXMgc2hhcmVkIGFjdGlvbiBjYXBhYmlsaXR5IGZvciBpbi1wbGFjZSB1cGRhdGUu DQo+ID4NCj4gPiBGaXJzdCBhcHBsaWNhdGlvbiBjcmVhdGVzIHNoYXJlZCBhY3Rpb24gZHVyaW5n IGluaXRpYWxpemF0aW9uIHBoYXNlLg0KPiANCj4gV2hhdCBpZiBQTUQgZG9lcyBub3Qgc3VwcG9y dCBhIHNoYXJlZCBjb250ZXh0LCBUaGVuIHRoaXMgYXBwbGljYXRpb24NCj4gZmFpbHMgdG8gcnVu Pw0KPiBpZiBzbywgaGF2ZSBhIG1vZGUgb3IgcHJvYmUgdGhlIGNhcGFiaWxpdHkoaWYgY2FwYWJp bGl0eSBwcmVzZW50IHRoZW4NCj4gc3dpdGNoZXMgdG8gbmV3IG1vZGUgZWxzZSBmYWxsIGJhY2sg dG8gb2xkIG1vZGUpIGJlZm9yZSBjaGFuZ2luZyB0aGUNCj4gYXBwbGljYXRpb24gYmVoYXZpb3Iu DQo+IA0KKzEgdGhlIG5ldyBhY3Rpb24gc2hvdWxkIGJlIGFkZGVkIGFzIGEgbmV3IGNhc2UgYW5k IHNob3VsZCBydW4gb25seSBpZiBpdCBpcyANCnRoZSBzaGFyZWQgYWN0aW9uIGlzIHN1cHBvcnRl ZC4NCg0KPiANCj4gPiBMYXRlciBvbiB0aGUgZmxvdyBvYmplY3QgY3JlYXRlZCBieSBhcHBsaWNh dGlvbiB1c2VzIHByZXZpb3VzbHkgY3JlYXRlZA0KPiA+IHNoYXJlZCBSU1MgYWN0aW9uIHdpdGgg MSBxdWV1ZSBjb25maWd1cmVkIGluc3RlYWQgb2YgcXVldWUgYWN0aW9uIGluDQo+ID4gb3JpZ2lu YWwgYXBwbGljYXRpb24uDQo+ID4NCj4gPiBPbiBlYWNoIFJYIHF1ZXVlIGJ1cnN0IHNoYXJlZCBS U1MgYWN0aW9uIHJlY29uZmlndXJlZCB2aWENCj4gPiBydGVfZmxvd19zaGFyZWRfYWN0aW9uX3Vw ZGF0ZSgpIEFQSSB0byBzd2l0Y2ggcXVldWUgMCB0byAxICYgMSB0byAwLg0KPiA+IFVzZXIgc3Vw cG9zZWQgdG8gb2JzZXJ2ZSBjb25zaXN0ZW50IHF1ZXVlIHN3aXRjaGVzIG9uIGVhY2ggcGFja2V0 IGJ1cnN0Lg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogQW5kcmV5IFZlc25vdmF0eSA8YW5kcmV5 dkBtZWxsYW5veC5jb20+DQo+ID4gLS0tDQo+ID4gIGRvYy9ndWlkZXMvc2FtcGxlX2FwcF91Zy9m bG93X2ZpbHRlcmluZy5yc3QgfCA2MiArKysrKysrKysrKysrKysrKy0tLS0NCj4gPiAgZXhhbXBs ZXMvZmxvd19maWx0ZXJpbmcvZmxvd19ibG9ja3MuYyAgICAgICB8IDMwICsrKysrLS0tLS0NCj4g PiAgZXhhbXBsZXMvZmxvd19maWx0ZXJpbmcvbWFpbi5jICAgICAgICAgICAgICB8IDQxICsrKysr KysrKysrKystDQo+ID4gIDMgZmlsZXMgY2hhbmdlZCwgMTA1IGluc2VydGlvbnMoKyksIDI4IGRl bGV0aW9ucygtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2RvYy9ndWlkZXMvc2FtcGxlX2FwcF91 Zy9mbG93X2ZpbHRlcmluZy5yc3QNCj4gYi9kb2MvZ3VpZGVzL3NhbXBsZV9hcHBfdWcvZmxvd19m aWx0ZXJpbmcucnN0DQo+ID4gaW5kZXggNWU1YTZjZDhhMC4uY2ZlOTMzNDcxNyAxMDA2NDQNCj4g PiAtLS0gYS9kb2MvZ3VpZGVzL3NhbXBsZV9hcHBfdWcvZmxvd19maWx0ZXJpbmcucnN0DQo+ID4g KysrIGIvZG9jL2d1aWRlcy9zYW1wbGVfYXBwX3VnL2Zsb3dfZmlsdGVyaW5nLnJzdA0KPiA+IEBA IC0xMDYsNyArMTA2LDcgQEAgZm9sbG93aW5nIGNvZGU6DQo+ID4gIC4uIGNvZGUtYmxvY2s6OiBj DQo+ID4NCj4gPiAgICAgLyogY3JlYXRlIGZsb3cgZm9yIHNlbmQgcGFja2V0IHdpdGggKi8NCj4g PiAtICAgZmxvdyA9IGdlbmVyYXRlX2lwdjRfZmxvdyhwb3J0X2lkLCBzZWxlY3RlZF9xdWV1ZSwN Cj4gPiArICAgZmxvdyA9IGdlbmVyYXRlX2lwdjRfZmxvdyhwb3J0X2lkLCBzaGFyZWRfYWN0aW9u LA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSQ19JUCwgRU1QVFlfTUFT SywNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBERVNUX0lQLCBGVUxMX01B U0ssICZlcnJvcik7DQo+ID4gICAgIGlmICghZmxvdykgew0KPiA+IEBAIC0yNDIsNyArMjQyLDcg QEAgVGhlIEV0aGVybmV0IHBvcnQgaXMgY29uZmlndXJlZCB3aXRoIGRlZmF1bHQgc2V0dGluZ3MN Cj4gdXNpbmcgdGhlDQo+ID4gICAgIHJ4cV9jb25mID0gZGV2X2luZm8uZGVmYXVsdF9yeGNvbmY7 DQo+ID4gICAgIHJ4cV9jb25mLm9mZmxvYWRzID0gcG9ydF9jb25mLnJ4bW9kZS5vZmZsb2FkczsN Cj4gPg0KPiA+IC1Gb3IgdGhpcyBleGFtcGxlIHdlIGFyZSBjb25maWd1cmluZyBudW1iZXIgb2Yg cnggYW5kIHR4IHF1ZXVlcyB0aGF0IGFyZQ0KPiBjb25uZWN0ZWQNCj4gPiArRm9yIHRoaXMgZXhh bXBsZSB3ZSBhcmUgY29uZmlndXJpbmcgMiByeCBhbmQgMiB0eCBxdWV1ZXMgdGhhdCBhcmUgY29u bmVjdGVkDQo+ID4gIHRvIGEgc2luZ2xlIHBvcnQuDQo+ID4NCj4gPiAgLi4gY29kZS1ibG9jazo6 IGMNCj4gPiBAQCAtMjcwLDEzICsyNzAsMjIgQEAgdG8gYSBzaW5nbGUgcG9ydC4NCj4gPiAgICAg ICAgICAgIH0NCj4gPiAgICAgfQ0KPiA+DQo+ID4gK0JlZm9yZSB3ZSBjcmVhdGUgdGhlIGZsb3cg d2UgY3JlYXRlIHNoYXJlZCBhY3Rpb24gaW4gb3JkZXIgdG8gc2VuZCBpdCBhcw0KPiA+ICthY3Rp b25zIGFyZ3VtZW50IHdoZW4gY3JlYXRpbmcgYSBmbG93LiBUaGUgYWN0aW9uIGlzIHNpbmdsZSBx dWV1ZSBSU1MNCj4gYWN0aW9uDQo+ID4gK3NpbWlsYXIgdG8gYWN0aW9uIHF1ZXVlIHdpdGggdGhl IG9ubHkgZGlmZmVyZW5jZSB0aGF0IHNoYXJlZCBSU1MgYWN0aW9uDQo+ID4gK3Byb3ZpZGVzIHVw ZGF0ZSBjYXBhYmlsaXR5IGFmdGVyIGFjdGlvbiBjcmVhdGlvbi4NCj4gPiArDQo+ID4gKy4uIGNv ZGUtYmxvY2s6OiBjDQo+ID4gKw0KPiA+ICsgICBzaGFyZWRfYWN0aW9uID0gcnRlX2Zsb3dfc2hh cmVkX2FjdGlvbl9jcmVhdGUocG9ydF9pZCwgJmFjdGlvbiwgJmVycm9yKTsNCj4gPiArDQo+ID4g IEluIHRoZSBuZXh0IHN0ZXAgd2UgY3JlYXRlIGFuZCBhcHBseSB0aGUgZmxvdyBydWxlLiB3aGlj aCBpcyB0byBzZW5kIHBhY2tldHMNCj4gPiAgd2l0aCBkZXN0aW5hdGlvbiBpcCBlcXVhbHMgdG8g MTkyLjE2OC4xLjEgdG8gcXVldWUgbnVtYmVyIDEuIFRoZSBkZXRhaWwNCj4gPiAgZXhwbGFuYXRp b24gb2YgdGhlIGBgZ2VuZXJhdGVfaXB2NF9mbG93KClgYCBhcHBlYXJzIGxhdGVyIGluIHRoaXMg ZG9jdW1lbnQ6DQo+ID4NCj4gPiAgLi4gY29kZS1ibG9jazo6IGMNCj4gPg0KPiA+IC0gICBmbG93 ID0gZ2VuZXJhdGVfaXB2NF9mbG93KHBvcnRfaWQsIHNlbGVjdGVkX3F1ZXVlLA0KPiA+ICsgICBm bG93ID0gZ2VuZXJhdGVfaXB2NF9mbG93KHBvcnRfaWQsIHNoYXJlZF9hY3Rpb24sDQo+ID4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgU1JDX0lQLCBFTVBUWV9NQVNLLA0KPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIERFU1RfSVAsIEZVTExfTUFTSywgJmVycm9yKTsNCj4g Pg0KPiA+IEBAIC0zMzksNiArMzQ4LDIxIEBAIGxvb2tzIGxpa2UgdGhlIGZvbGxvd2luZzoNCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50ZigiXG4i KTsNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0ZV9w a3RtYnVmX2ZyZWUobSk7DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyc3NfcXVldWVb MF0gPT0gMCkgew0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcHJpbnRmKCI+Pj4gc3dpdGNoaW5nIHF1ZXVlIDAgLT4gMVxuIik7DQo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByc3NfcXVldWVbMF0gPSAxOw0KPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludGYoIj4+PiBzd2l0Y2hp bmcgcXVldWUgMSAtPiAwXG4iKTsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJzc19xdWV1ZVswXSA9IDA7DQo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHJldCA9IHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25fdXBkYXRlDQo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9ydF9pZCwgc2hhcmVkX2FjdGlvbiwgJmFj dGlvbiwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm ZXJyb3IpOw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXQp DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydGVfZXhp dChFWElUX0ZBSUxVUkUsDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiOjogZXJyb3I6IFJTUyBhY3Rpb24gdXBkYXRlICINCj4gPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmYWlsZWQ6 ICVzXG4iLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcnRlX3N0cmVycm9yKC1yZXQpKTsNCj4gPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KPiA+ICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ICAgICAgICAgICAgIH0NCj4g PiBAQCAtMzQ4LDYgKzM3Miw4IEBAIGxvb2tzIGxpa2UgdGhlIGZvbGxvd2luZzoNCj4gPiAgICAg ICAgICAgICBydGVfZXRoX2Rldl9jbG9zZShwb3J0X2lkKTsNCj4gPiAgICAgfQ0KPiA+DQo+ID4g K09uIGVhY2ggbG9vcCBldGVyYXRpb24gUnggcXVldWUgc3dpdGNoZWQgdXNpbmcNCj4gPiArYGBy dGVfZmxvd19zaGFyZWRfYWN0aW9uX3VwZGF0ZSgpYGAgQVBJLg0KPiA+ICBUaGUgbWFpbiB3b3Jr IG9mIHRoZSBhcHBsaWNhdGlvbiBpcyByZWFkaW5nIHRoZSBwYWNrZXRzIGZyb20gYWxsDQo+ID4g IHF1ZXVlcyBhbmQgcHJpbnRpbmcgZm9yIGVhY2ggcGFja2V0IHRoZSBkZXN0aW5hdGlvbiBxdWV1 ZToNCj4gPg0KPiA+IEBAIC0zNjUsNiArMzkxLDIxIEBAIHF1ZXVlcyBhbmQgcHJpbnRpbmcgZm9y IGVhY2ggcGFja2V0IHRoZSBkZXN0aW5hdGlvbg0KPiBxdWV1ZToNCj4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwcmludGYoIiAtIHF1ZXVlPTB4JXgiLCAodW5zaWduZWQgaW50KWkp Ow0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50ZigiXG4iKTsNCj4gPiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydGVfcGt0bWJ1Zl9mcmVlKG0pOw0KPiA+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyc3NfcXVldWVbMF0gPT0gMCkgew0KPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnRmKCI+Pj4gc3dpdGNo aW5nIHF1ZXVlIDAgLT4gMVxuIik7DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICByc3NfcXVldWVbMF0gPSAxOw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0gZWxzZSB7DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw cmludGYoIj4+PiBzd2l0Y2hpbmcgcXVldWUgMSAtPiAwXG4iKTsNCj4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJzc19xdWV1ZVswXSA9IDA7DQo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHJldCA9IHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25fdXBkYXRlDQo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAocG9ydF9pZCwgc2hhcmVkX2FjdGlvbiwgJmFjdGlvbiwN Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXJyb3IpOw0KPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXQpDQo+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBydGVfZXhpdChFWElUX0ZBSUxVUkUsDQo+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiOjogZXJyb3I6IFJT UyBhY3Rpb24gdXBkYXRlICINCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJmYWlsZWQ6ICVzXG4iLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcnRlX3N0cmVycm9yKC1yZXQpKTsNCj4gPiAgICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KPiA+ICAgICAgICAgICAgICAgICAgfQ0KPiA+ICAgICAgICAg ICAgIH0NCj4gPiBAQCAtMzc4LDEzICs0MTksMTUgQEAgVGhlIGZvcndhcmRpbmcgbG9vcCBjYW4g YmUgaW50ZXJydXB0ZWQgYW5kIHRoZQ0KPiBhcHBsaWNhdGlvbiBjbG9zZWQgdXNpbmcNCj4gPiAg VGhlIGdlbmVyYXRlX2lwdjRfZmxvdyBmdW5jdGlvbg0KPiA+ICB+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+DQo+ID4NCj4gPiArDQo+ID4gIFRoZSBnZW5lcmF0ZV9pcHY0X2Zsb3cgZnVu Y3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoZSBmbG93IHJ1bGUuDQo+ID4gIFRo aXMgZnVuY3Rpb24gaXMgbG9jYXRlZCBpbiB0aGUgYGBmbG93X2Jsb2Nrcy5jYGAgZmlsZS4NCj4g Pg0KPiA+ICAuLiBjb2RlLWJsb2NrOjogYw0KPiA+DQo+ID4gICAgIHN0YXRpYyBzdHJ1Y3QgcnRl X2Zsb3cgKg0KPiA+IC0gICBnZW5lcmF0ZV9pcHY0X2Zsb3codWludDhfdCBwb3J0X2lkLCB1aW50 MTZfdCByeF9xLA0KPiA+ICsgICBnZW5lcmF0ZV9pcHY0X2Zsb3codWludDhfdCBwb3J0X2lkLA0K PiA+ICsgICAgICAgICAgICAgICAgICAgY3N0cnVjdHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb24gKnNo YXJlZF9hY3Rpb24sDQo+ID4gICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzcmNfaXAsIHVp bnQzMl90IHNyY19tYXNrLA0KPiA+ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgZGVzdF9p cCwgdWludDMyX3QgZGVzdF9tYXNrLA0KPiA+ICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHJ0 ZV9mbG93X2Vycm9yICplcnJvcikNCj4gPiBAQCAtMzkzLDcgKzQzNiw2IEBAIFRoaXMgZnVuY3Rp b24gaXMgbG9jYXRlZCBpbiB0aGUgYGBmbG93X2Jsb2Nrcy5jYGAgZmlsZS4NCj4gPiAgICAgICAg ICAgICBzdHJ1Y3QgcnRlX2Zsb3dfaXRlbSBwYXR0ZXJuW01BWF9QQVRURVJOX05VTV07DQo+ID4g ICAgICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2FjdGlvbiBhY3Rpb25bTUFYX0FDVElPTl9OVU1d Ow0KPiA+ICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvdyAqZmxvdyA9IE5VTEw7DQo+ID4gLSAg ICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2FjdGlvbl9xdWV1ZSBxdWV1ZSA9IHsgLmluZGV4ID0g cnhfcSB9Ow0KPiA+ICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvd19pdGVtX2lwdjQgaXBfc3Bl YzsNCj4gPiAgICAgICAgICAgICBzdHJ1Y3QgcnRlX2Zsb3dfaXRlbV9pcHY0IGlwX21hc2s7DQo+ ID4NCj4gPiBAQCAtNDExLDggKzQ1Myw4IEBAIFRoaXMgZnVuY3Rpb24gaXMgbG9jYXRlZCBpbiB0 aGUgYGBmbG93X2Jsb2Nrcy5jYGAgZmlsZS4NCj4gPiAgICAgICAgICAgICAgKiBjcmVhdGUgdGhl IGFjdGlvbiBzZXF1ZW5jZS4NCj4gPiAgICAgICAgICAgICAgKiBvbmUgYWN0aW9uIG9ubHksICBt b3ZlIHBhY2tldCB0byBxdWV1ZQ0KPiA+ICAgICAgICAgICAgICAqLw0KPiA+IC0gICAgICAgICAg IGFjdGlvblswXS50eXBlID0gUlRFX0ZMT1dfQUNUSU9OX1RZUEVfUVVFVUU7DQo+ID4gLSAgICAg ICAgICAgYWN0aW9uWzBdLmNvbmYgPSAmcXVldWU7DQo+ID4gKyAgICAgICAgICAgYWN0aW9uWzBd LnR5cGUgPSBSVEVfRkxPV19BQ1RJT05fVFlQRV9TSEFSRUQ7DQo+ID4gKyAgICAgICAgICAgYWN0 aW9uWzBdLmNvbmYgPSBzaGFyZWRfYWN0aW9uOw0KPiA+ICAgICAgICAgICAgIGFjdGlvblsxXS50 eXBlID0gUlRFX0ZMT1dfQUNUSU9OX1RZUEVfRU5EOw0KPiA+DQo+ID4gICAgICAgICAgICAgLyoN Cj4gPiBAQCAtNDY4LDEyICs1MTAsMTIgQEAgVGhlIGZvbGxvd2luZyBwYXJ0IGNyZWF0ZSB0aGUg ZmxvdyBhdHRyaWJ1dGVzLCBpbg0KPiBvdXIgY2FzZSBpbmdyZXNzLg0KPiA+ICAgICBhdHRyLmlu Z3Jlc3MgPSAxOw0KPiA+DQo+ID4gIFRoZSB0aGlyZCBwYXJ0IGRlZmluZXMgdGhlIGFjdGlvbiB0 byBiZSB0YWtlbiB3aGVuIGEgcGFja2V0IG1hdGNoZXMNCj4gPiAtdGhlIHJ1bGUuIEluIHRoaXMg Y2FzZSBzZW5kIHRoZSBwYWNrZXQgdG8gcXVldWUuDQo+ID4gK3RoZSBydWxlLiBJbiB0aGlzIGNh c2Ugc2VuZCB0aGUgcGFja2V0IHRvIHNpbmdsZSBSU1MgcXVldWUuDQo+ID4NCj4gPiAgLi4gY29k ZS1ibG9jazo6IGMNCj4gPg0KPiA+IC0gICBhY3Rpb25bMF0udHlwZSA9IFJURV9GTE9XX0FDVElP Tl9UWVBFX1FVRVVFOw0KPiA+IC0gICBhY3Rpb25bMF0uY29uZiA9ICZxdWV1ZTsNCj4gPiArICAg YWN0aW9uWzBdLnR5cGUgPSBSVEVfRkxPV19BQ1RJT05fVFlQRV9TSEFSRUQ7DQo+ID4gKyAgIGFj dGlvblswXS5jb25mID0gc2hhcmVkX2FjdGlvbjsNCj4gPiAgICAgYWN0aW9uWzFdLnR5cGUgPSBS VEVfRkxPV19BQ1RJT05fVFlQRV9FTkQ7DQo+ID4NCj4gPiAgVGhlIGZvdXJ0aCBwYXJ0IGlzIHJl c3BvbnNpYmxlIGZvciBjcmVhdGluZyB0aGUgcGF0dGVybiBhbmQgaXMgYnVpbHQgZnJvbQ0KPiA+ IGRpZmYgLS1naXQgYS9leGFtcGxlcy9mbG93X2ZpbHRlcmluZy9mbG93X2Jsb2Nrcy5jDQo+IGIv ZXhhbXBsZXMvZmxvd19maWx0ZXJpbmcvZmxvd19ibG9ja3MuYw0KPiA+IGluZGV4IDU3NWQ3OTI4 MTAuLjk5YmZlZDMxNzIgMTAwNjQ0DQo+ID4gLS0tIGEvZXhhbXBsZXMvZmxvd19maWx0ZXJpbmcv Zmxvd19ibG9ja3MuYw0KPiA+ICsrKyBiL2V4YW1wbGVzL2Zsb3dfZmlsdGVyaW5nL2Zsb3dfYmxv Y2tzLmMNCj4gPiBAQCAtNiwxMSArNiwxMSBAQA0KPiA+ICAjZGVmaW5lIE1BWF9BQ1RJT05fTlVN ICAgICAgICAgMg0KPiA+DQo+ID4gIHN0cnVjdCBydGVfZmxvdyAqDQo+ID4gLWdlbmVyYXRlX2lw djRfZmxvdyh1aW50MTZfdCBwb3J0X2lkLCB1aW50MTZfdCByeF9xLA0KPiA+IC0gICAgICAgICAg ICAgICB1aW50MzJfdCBzcmNfaXAsIHVpbnQzMl90IHNyY19tYXNrLA0KPiA+IC0gICAgICAgICAg ICAgICB1aW50MzJfdCBkZXN0X2lwLCB1aW50MzJfdCBkZXN0X21hc2ssDQo+ID4gLSAgICAgICAg ICAgICAgIHN0cnVjdCBydGVfZmxvd19lcnJvciAqZXJyb3IpOw0KPiA+IC0NCj4gPiArZ2VuZXJh dGVfaXB2NF9mbG93KHVpbnQxNl90IHBvcnRfaWQsDQo+ID4gKyAgICAgICAgICAgICAgICAgIHN0 cnVjdCBydGVfZmxvd19zaGFyZWRfYWN0aW9uICpzaGFyZWRfYWN0aW9uLA0KPiA+ICsgICAgICAg ICAgICAgICAgICB1aW50MzJfdCBzcmNfaXAsIHVpbnQzMl90IHNyY19tYXNrLA0KPiA+ICsgICAg ICAgICAgICAgICAgICB1aW50MzJfdCBkZXN0X2lwLCB1aW50MzJfdCBkZXN0X21hc2ssDQo+ID4g KyAgICAgICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvd19lcnJvciAqZXJyb3IpOw0KPiA+DQo+ ID4gIC8qKg0KPiA+ICAgKiBjcmVhdGUgYSBmbG93IHJ1bGUgdGhhdCBzZW5kcyBwYWNrZXRzIHdp dGggbWF0Y2hpbmcgc3JjIGFuZCBkZXN0IGlwDQo+ID4gQEAgLTE4LDggKzE4LDggQEAgZ2VuZXJh dGVfaXB2NF9mbG93KHVpbnQxNl90IHBvcnRfaWQsIHVpbnQxNl90IHJ4X3EsDQo+ID4gICAqDQo+ ID4gICAqIEBwYXJhbSBwb3J0X2lkDQo+ID4gICAqICAgVGhlIHNlbGVjdGVkIHBvcnQuDQo+ID4g LSAqIEBwYXJhbSByeF9xDQo+ID4gLSAqICAgVGhlIHNlbGVjdGVkIHRhcmdldCBxdWV1ZS4NCj4g PiArICogQHBhcmFtIHNoYXJlZF9hY3Rpb24NCj4gPiArICogICBUaGUgc2hhcmVkIFJTUyBhY3Rp b24gd2l0aCBzaW5nbGUgcXVldWUNCj4gPiAgICogQHBhcmFtIHNyY19pcA0KPiA+ICAgKiAgIFRo ZSBzcmMgaXAgdmFsdWUgdG8gbWF0Y2ggdGhlIGlucHV0IHBhY2tldC4NCj4gPiAgICogQHBhcmFt IHNyY19tYXNrDQo+ID4gQEAgLTM1LDE2ICszNSwxNiBAQCBnZW5lcmF0ZV9pcHY0X2Zsb3codWlu dDE2X3QgcG9ydF9pZCwgdWludDE2X3QgcnhfcSwNCj4gPiAgICogICBBIGZsb3cgaWYgdGhlIHJ1 bGUgY291bGQgYmUgY3JlYXRlZCBlbHNlIHJldHVybiBOVUxMLg0KPiA+ICAgKi8NCj4gPiAgc3Ry dWN0IHJ0ZV9mbG93ICoNCj4gPiAtZ2VuZXJhdGVfaXB2NF9mbG93KHVpbnQxNl90IHBvcnRfaWQs IHVpbnQxNl90IHJ4X3EsDQo+ID4gLSAgICAgICAgICAgICAgIHVpbnQzMl90IHNyY19pcCwgdWlu dDMyX3Qgc3JjX21hc2ssDQo+ID4gLSAgICAgICAgICAgICAgIHVpbnQzMl90IGRlc3RfaXAsIHVp bnQzMl90IGRlc3RfbWFzaywNCj4gPiAtICAgICAgICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2Vy cm9yICplcnJvcikNCj4gPiArZ2VuZXJhdGVfaXB2NF9mbG93KHVpbnQxNl90IHBvcnRfaWQsDQo+ ID4gKyAgICAgICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvd19zaGFyZWRfYWN0aW9uICpzaGFy ZWRfYWN0aW9uLA0KPiA+ICsgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzcmNfaXAsIHVpbnQz Ml90IHNyY19tYXNrLA0KPiA+ICsgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkZXN0X2lwLCB1 aW50MzJfdCBkZXN0X21hc2ssDQo+ID4gKyAgICAgICAgICAgICAgICAgIHN0cnVjdCBydGVfZmxv d19lcnJvciAqZXJyb3IpDQo+ID4gIHsNCj4gPiAgICAgICAgIHN0cnVjdCBydGVfZmxvd19hdHRy IGF0dHI7DQo+ID4gICAgICAgICBzdHJ1Y3QgcnRlX2Zsb3dfaXRlbSBwYXR0ZXJuW01BWF9QQVRU RVJOX05VTV07DQo+ID4gICAgICAgICBzdHJ1Y3QgcnRlX2Zsb3dfYWN0aW9uIGFjdGlvbltNQVhf QUNUSU9OX05VTV07DQo+ID4gICAgICAgICBzdHJ1Y3QgcnRlX2Zsb3cgKmZsb3cgPSBOVUxMOw0K PiA+IC0gICAgICAgc3RydWN0IHJ0ZV9mbG93X2FjdGlvbl9xdWV1ZSBxdWV1ZSA9IHsgLmluZGV4 ID0gcnhfcSB9Ow0KPiA+ICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2l0ZW1faXB2NCBpcF9zcGVj Ow0KPiA+ICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2l0ZW1faXB2NCBpcF9tYXNrOw0KPiA+ICAg ICAgICAgaW50IHJlczsNCj4gPiBAQCAtNjEsMTAgKzYxLDEwIEBAIGdlbmVyYXRlX2lwdjRfZmxv dyh1aW50MTZfdCBwb3J0X2lkLCB1aW50MTZfdCByeF9xLA0KPiA+DQo+ID4gICAgICAgICAvKg0K PiA+ICAgICAgICAgICogY3JlYXRlIHRoZSBhY3Rpb24gc2VxdWVuY2UuDQo+ID4gLSAgICAgICAg KiBvbmUgYWN0aW9uIG9ubHksICBtb3ZlIHBhY2tldCB0byBxdWV1ZQ0KPiA+ICsgICAgICAgICog b25lIGFjdGlvbiBvbmx5LCAgbW92ZSBwYWNrZXQgdG8gc2hhcmVkIFJTUyBxdWV1ZQ0KPiA+ICAg ICAgICAgICovDQo+ID4gLSAgICAgICBhY3Rpb25bMF0udHlwZSA9IFJURV9GTE9XX0FDVElPTl9U WVBFX1FVRVVFOw0KPiA+IC0gICAgICAgYWN0aW9uWzBdLmNvbmYgPSAmcXVldWU7DQo+ID4gKyAg ICAgICBhY3Rpb25bMF0udHlwZSA9IFJURV9GTE9XX0FDVElPTl9UWVBFX1NIQVJFRDsNCj4gPiAr ICAgICAgIGFjdGlvblswXS5jb25mID0gc2hhcmVkX2FjdGlvbjsNCj4gPiAgICAgICAgIGFjdGlv blsxXS50eXBlID0gUlRFX0ZMT1dfQUNUSU9OX1RZUEVfRU5EOw0KPiA+DQo+ID4gICAgICAgICAv Kg0KPiA+IGRpZmYgLS1naXQgYS9leGFtcGxlcy9mbG93X2ZpbHRlcmluZy9tYWluLmMgYi9leGFt cGxlcy9mbG93X2ZpbHRlcmluZy9tYWluLmMNCj4gPiBpbmRleCBjYzllN2U3ODA4Li5kNmIxOGQ5 NWZjIDEwMDY0NA0KPiA+IC0tLSBhL2V4YW1wbGVzL2Zsb3dfZmlsdGVyaW5nL21haW4uYw0KPiA+ ICsrKyBiL2V4YW1wbGVzL2Zsb3dfZmlsdGVyaW5nL21haW4uYw0KPiA+IEBAIC0zMiw4ICszMiw3 IEBADQo+ID4gIHN0YXRpYyB2b2xhdGlsZSBib29sIGZvcmNlX3F1aXQ7DQo+ID4NCj4gPiAgc3Rh dGljIHVpbnQxNl90IHBvcnRfaWQ7DQo+ID4gLXN0YXRpYyB1aW50MTZfdCBucl9xdWV1ZXMgPSA1 Ow0KPiA+IC1zdGF0aWMgdWludDhfdCBzZWxlY3RlZF9xdWV1ZSA9IDE7DQo+ID4gK3N0YXRpYyB1 aW50MTZfdCBucl9xdWV1ZXMgPSAyOw0KPiA+ICBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1idWZfcG9v bDsNCj4gPiAgc3RydWN0IHJ0ZV9mbG93ICpmbG93Ow0KPiA+DQo+ID4gQEAgLTQyLDYgKzQxLDI0 IEBAIHN0cnVjdCBydGVfZmxvdyAqZmxvdzsNCj4gPiAgI2RlZmluZSBGVUxMX01BU0sgMHhmZmZm ZmZmZiAvKiBmdWxsIG1hc2sgKi8NCj4gPiAgI2RlZmluZSBFTVBUWV9NQVNLIDB4MCAvKiBlbXB0 eSBtYXNrICovDQo+ID4NCj4gPiArc3RydWN0IHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb24gKnNoYXJl ZF9hY3Rpb247DQo+ID4gK3VpbnQxNl90IHJzc19xdWV1ZVsxXSA9IHswfTsNCj4gPiArDQo+ID4g K3N0cnVjdCBydGVfZmxvd19hY3Rpb25fcnNzIGFjdGlvbl9yc3MgPSB7DQo+ID4gKyAgICAgICAg ICAgICAgIC5mdW5jID0gUlRFX0VUSF9IQVNIX0ZVTkNUSU9OX0RFRkFVTFQsDQo+ID4gKyAgICAg ICAgICAgICAgIC5sZXZlbCA9IDAsDQo+ID4gKyAgICAgICAgICAgICAgIC50eXBlcyA9IDAsDQo+ ID4gKyAgICAgICAgICAgICAgIC5rZXlfbGVuID0gMCwNCj4gPiArICAgICAgICAgICAgICAgLmtl eSA9IE5VTEwsDQo+ID4gKyAgICAgICAgICAgICAgIC5xdWV1ZSA9IHJzc19xdWV1ZSwNCj4gPiAr ICAgICAgICAgICAgICAgLnF1ZXVlX251bSA9IDEsDQo+ID4gK307DQo+ID4gKw0KPiA+ICtzdHJ1 Y3QgcnRlX2Zsb3dfYWN0aW9uIGFjdGlvbiA9IHsNCj4gPiArICAgICAgIC50eXBlID0gUlRFX0ZM T1dfQUNUSU9OX1RZUEVfUlNTLA0KPiA+ICsgICAgICAgLmNvbmYgPSAmYWN0aW9uX3JzcywNCj4g PiArfTsNCj4gPiArDQo+ID4gICNpbmNsdWRlICJmbG93X2Jsb2Nrcy5jIg0KPiA+DQo+ID4gIHN0 YXRpYyBpbmxpbmUgdm9pZA0KPiA+IEBAIC02MSw2ICs3OCw3IEBAIG1haW5fbG9vcCh2b2lkKQ0K PiA+ICAgICAgICAgdWludDE2X3QgbmJfcng7DQo+ID4gICAgICAgICB1aW50MTZfdCBpOw0KPiA+ ICAgICAgICAgdWludDE2X3QgajsNCj4gPiArICAgICAgIGludCByZXQ7DQo+ID4NCj4gPiAgICAg ICAgIHdoaWxlICghZm9yY2VfcXVpdCkgew0KPiA+ICAgICAgICAgICAgICAgICBmb3IgKGkgPSAw OyBpIDwgbnJfcXVldWVzOyBpKyspIHsNCj4gPiBAQCAtODIsNiArMTAwLDIxIEBAIG1haW5fbG9v cCh2b2lkKQ0KPiA+DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHJ0ZV9wa3RtYnVmX2ZyZWUobSk7DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB9DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocnNzX3F1ZXVlWzBd ID09IDApIHsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJp bnRmKCI+Pj4gc3dpdGNoaW5nIHF1ZXVlIDAgLT4gMVxuIik7DQo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJzc19xdWV1ZVswXSA9IDE7DQo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Ugew0KPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBwcmludGYoIj4+PiBzd2l0Y2hpbmcgcXVldWUgMSAtPiAwXG4i KTsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnNzX3F1ZXVl WzBdID0gMDsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCj4gPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldCA9IHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25f dXBkYXRlDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwb3J0 X2lkLCBzaGFyZWRfYWN0aW9uLCAmYWN0aW9uLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJmVycm9yKTsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGlmIChyZXQpDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHJ0ZV9leGl0KEVYSVRfRkFJTFVSRSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIjo6IGVycm9yOiBSU1MgYWN0aW9uIHVwZGF0ZSAiDQo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmYWls ZWQ6ICVzXG4iLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBydGVfc3RyZXJyb3IoLXJldCkpOw0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAg IH0NCj4gPiAgICAgICAgICAgICAgICAgfQ0KPiA+ICAgICAgICAgfQ0KPiA+IEBAIC0yNDMsOCAr Mjc2LDEwIEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0KPiA+DQo+ID4gICAgICAgICBp bml0X3BvcnQoKTsNCj4gPg0KPiA+ICsgICAgICAgc2hhcmVkX2FjdGlvbiA9IHJ0ZV9mbG93X3No YXJlZF9hY3Rpb25fY3JlYXRlKHBvcnRfaWQsICZhY3Rpb24sDQo+ICZlcnJvcik7DQo+ID4gKw0K PiA+ICAgICAgICAgLyogY3JlYXRlIGZsb3cgZm9yIHNlbmQgcGFja2V0IHdpdGggKi8NCj4gPiAt ICAgICAgIGZsb3cgPSBnZW5lcmF0ZV9pcHY0X2Zsb3cocG9ydF9pZCwgc2VsZWN0ZWRfcXVldWUs DQo+ID4gKyAgICAgICBmbG93ID0gZ2VuZXJhdGVfaXB2NF9mbG93KHBvcnRfaWQsIHNoYXJlZF9h Y3Rpb24sDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTUkNfSVAsIEVNUFRZ X01BU0ssDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBERVNUX0lQLCBGVUxM X01BU0ssICZlcnJvcik7DQo+ID4gICAgICAgICBpZiAoIWZsb3cpIHsNCj4gPiAtLQ0KPiA+IDIu MjYuMg0KPiA+DQo=