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 AC2D9A04F9; Fri, 10 Jan 2020 14:42:35 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 500A21EA6D; Fri, 10 Jan 2020 14:42:35 +0100 (CET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150078.outbound.protection.outlook.com [40.107.15.78]) by dpdk.org (Postfix) with ESMTP id 378FF1EA39 for ; Fri, 10 Jan 2020 14:42:33 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GzhnCaMMScGHSk2WImUzwEYMEwiaQw0FLQSADNcjKZv4JvbVogCDcWyDb08t8lgIc7s6azdb/9lAjBBIPQoZq/Xk9xnmyNq9QkviAuuXdHK0Bnz28g+gK7Nnr0+yOzPOHuerg2QPwNwcAMIPRzvvC7LUJWJl/mFNf7sC8AZq58YM77BC+Esn4X2ujZadw2ClyUxDSQfuYoskXc90flsTRdVcu+KuVuVHtVK5kSITGpGSQVSsIH3On2CTFfx6ZOlmd6qaK9fKp+6Sg7EEVCkeSX9dXafhwck8Dx/kTkX93ofLrCfPfR/P6yHT7U5NF0bT0GXHivVLDkZolm8fR0S0LQ== 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=hFDTg4+cN6QDsPtYdcAkbigStIZ08G2yuG+A5rwo2JE=; b=KTzBaO3ZM/GmqWOz8cqRahL1JJGEiM3fj9aFSHyXkXgtbNwmToFWFnJBwYYf+lR4mTarOTvf2dmjAI6p/V9NPI288MF++VNlnB3nOgjfWTL7nZOCKeWAy012iXa9BbQxg+JUX3MIA7VVr3Wla/rgAc8SAA2iuXJGkveGKezejyOb0o8xVPA4xd0yH3gRkJP5FJOEl+IqVBp29cj9SZGDCt75NmG6oivcIlTXOz8S/51rijnF8pUxj3Utgnm7mC2HKQWul5wh4VZRakujvMp9y09qD/QiN79d51V+N84gGcADT4dSfHCiM4LCzNPYm6p68SBERHpDvgU38ce5FB+nZw== 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=hFDTg4+cN6QDsPtYdcAkbigStIZ08G2yuG+A5rwo2JE=; b=ZsyLhjWBWm4FOM6lTA2eqY/VXbnXnoZBU5EK9enkc8VgqO06Rck5HHkWtCduX/GZ4J+/62Fv9r+rWzM67q8LzYmNyeRoBsVDOfvdbrVrVlaOLFAHcQkk4lczEkCjEgGGAlWh/QiQElCVHIe7jTXFmwImeJvAE3KMO965DVfV/k8= Received: from AM4PR05MB3265.eurprd05.prod.outlook.com (10.171.188.154) by AM4PR05MB3425.eurprd05.prod.outlook.com (10.171.190.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2602.10; Fri, 10 Jan 2020 13:42:29 +0000 Received: from AM4PR05MB3265.eurprd05.prod.outlook.com ([fe80::68eb:ad79:71f4:110f]) by AM4PR05MB3265.eurprd05.prod.outlook.com ([fe80::68eb:ad79:71f4:110f%3]) with mapi id 15.20.2623.013; Fri, 10 Jan 2020 13:42:29 +0000 From: Slava Ovsiienko To: Thomas Monjalon CC: Ferruh Yigit , "dev@dpdk.org" , Matan Azrad , Raslan Darawsheh , Ori Kam Thread-Topic: [dpdk-dev] [PATCH v2 4/4] net/mlx5: engage free on completion queue Thread-Index: AQHVxtuEBKQevEEzgk6qMuFtgoO8n6ficmyAgAABqCCAAAVjgIAAAF4AgAEjC4CAAADJIIAABtCAgAAEVxCAADhpgIAAAESA Date: Fri, 10 Jan 2020 13:42:29 +0000 Message-ID: References: <1578500161-20156-1-git-send-email-viacheslavo@mellanox.com> <3418044.RUnXabflUD@xps> <13971515.JCcGWNJJiE@xps> In-Reply-To: <13971515.JCcGWNJJiE@xps> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=viacheslavo@mellanox.com; x-originating-ip: [77.75.144.194] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: d22beec8-3b72-4774-667a-08d795d2efc4 x-ms-traffictypediagnostic: AM4PR05MB3425:|AM4PR05MB3425: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtFwd,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 02788FF38E x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(366004)(136003)(396003)(376002)(39850400004)(199004)(189003)(13464003)(52024003)(33656002)(8676002)(26005)(9686003)(4326008)(7696005)(8936002)(2906002)(81166006)(186003)(71200400001)(66446008)(66476007)(66556008)(64756008)(66946007)(81156014)(76116006)(6916009)(52536014)(6506007)(55016002)(53546011)(5660300002)(478600001)(86362001)(316002)(54906003)(107886003)(21314003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR05MB3425; H:AM4PR05MB3265.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TybccbAo0s9fkWLDQZk8U46vSqflLWpPdA8dl4rY4FWJgU8Y3Pyx9dfOiIue7FVFmXsrz1Z8QlcJRSAZn2hofI50mDk1dZB5OQTdDeV27BWTNFrWCyIapnqlSxLCctLGg3kl3hlt39ArBSQnqYQ59zHDI4+l2BTz/bpiGIwfls9v+9KSXmhkbVJzhMw7y61KvrxkHL5zWEjjgMOwuhAe8xLHWxx3Z77sDItVJG7Fz5++/4OY/nqTPR02e1PxK4zcAZWIMnpNWXF7S8ePVf2fCy67e5z2EdLdwyDd1XnZNq6wKP6fzxGvXxuZl29QX8viMedyiFS0yHZLvJkmJKLELoR0JBh1D1ZlvukMoJz1n3SBUvBhVyfvJX6I6G8qZ+RPfJb836pM696rEcVGJZ70yQvWUmKU83mFQFtz5VIoo0P+xY+ZgbHp1sGBaXdcFCNmhrf1OUgJh6JtaxV/dk3HqK3Wv7X2trnjfwr2eUbCtQNgRxBJnh8cyufPFfpCngdChrGTbNPT+bF2JQUYvk9/v5pMMqdqhlu/mOwCsmdhsO4= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: d22beec8-3b72-4774-667a-08d795d2efc4 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jan 2020 13:42:29.3301 (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: gBikaDFve7HCrG49OnGm6O80EeVR2MP5tD0cOASJBXdrz/4KBOLxxd0nxKjqJ18mmuffgF0RCSQAu1DhTRZfVaysVEg5ekSPcCYLhZ0q1Q8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR05MB3425 Subject: Re: [dpdk-dev] [PATCH v2 4/4] net/mlx5: engage free on completion queue 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBUaG9tYXMgTW9uamFsb24gPHRo b21hc0Btb25qYWxvbi5uZXQ+DQo+IFNlbnQ6IEZyaWRheSwgSmFudWFyeSAxMCwgMjAyMCAxNTox MQ0KPiBUbzogU2xhdmEgT3ZzaWllbmtvIDx2aWFjaGVzbGF2b0BtZWxsYW5veC5jb20+DQo+IENj OiBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+OyBkZXZAZHBkay5vcmc7IE1h dGFuIEF6cmFkDQo+IDxtYXRhbkBtZWxsYW5veC5jb20+OyBSYXNsYW4gRGFyYXdzaGVoIDxyYXNs YW5kQG1lbGxhbm94LmNvbT47IE9yaQ0KPiBLYW0gPG9yaWthQG1lbGxhbm94LmNvbT4NCj4gU3Vi amVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIHYyIDQvNF0gbmV0L21seDU6IGVuZ2FnZSBmcmVl IG9uIGNvbXBsZXRpb24NCj4gcXVldWUNCj4gDQo+IDEwLzAxLzIwMjAgMTA6NTUsIFNsYXZhIE92 c2lpZW5rbzoNCj4gPiBGcm9tOiBUaG9tYXMgTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+ DQo+ID4gPiAxMC8wMS8yMDIwIDEwOjI4LCBTbGF2YSBPdnNpaWVua286DQo+ID4gPiA+IEZyb206 IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5ldD4NCj4gPiA+ID4gPiAwOS8wMS8y MDIwIDE3OjIyLCBTbGF2YSBPdnNpaWVua286DQo+ID4gPiA+ID4gPiBGcm9tOiBGZXJydWggWWln aXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQo+ID4gPiA+ID4gPiA+IE9uIDEvOS8yMDIwIDM6 MjcgUE0sIFNsYXZhIE92c2lpZW5rbyB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiBGcm9tOiBGZXJy dWggWWlnaXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQo+ID4gPiA+ID4gPiA+ID4+IE9uIDEv OS8yMDIwIDEwOjU2IEFNLCBWaWFjaGVzbGF2IE92c2lpZW5rbyB3cm90ZToNCj4gPiA+ID4gPiA+ ID4gPj4+ICsJCWFzc2VydChjaSAhPSB0eHEtPmNxX3BpKTsNCj4gPiA+ID4gPiA+ID4gPj4+ICsJ CWFzc2VydCgodHhxLT5mY3FzW2NpICYgdHhxLT5jcWVfbV0gPj4gMTYpID09DQo+IGNxZS0NCj4g PiA+ID4gPiA+ID4gPj4+IHdxZV9jb3VudGVyKTsNCj4gPiA+ID4gPiA+ID4gPj4NCj4gPiA+ID4g PiA+ID4gPj4gQW5kIHNhbWUgY29tbWVudHMgb24gdGhlc2UgYXMgcHJldmlvdXMgcGF0Y2hlcywg d2Ugc3BlbmQNCj4gPiA+ID4gPiA+ID4gPj4gc29tZSBlZmZvcnQgdG8gcmVtb3ZlIHRoZSAncnRl X3BhbmljJyBmcm9tIGRyaXZlcnMsIHRoaXMNCj4gPiA+ID4gPiA+ID4gPj4gaXMgYWxtb3N0IHNh bWUNCj4gPiA+IHRoaW5nLg0KPiA+ID4gPiA+ID4gPiA+Pg0KPiA+ID4gPiA+ID4gPiA+PiBJIHRo aW5rIGEgZHJpdmVyIHNob3VsZG4ndCBkZWNpZGUgdG8gZXhpdCB3aG9sZQ0KPiA+ID4gPiA+ID4g PiA+PiBhcHBsaWNhdGlvbiwgaXQncyBlZmZlY3Qgc2hvdWxkIGJlIGxpbWl0ZWQgdG8gdGhlIGRy aXZlci4NCj4gPiA+ID4gPiA+ID4gPj4NCj4gPiA+ID4gPiA+ID4gPj4gQXNzZXJ0IGlzIHVzZWZ1 bCBmb3IgZGVidWcgYW5kIGR1cmluZyBkZXZlbG9wbWVudCwgYnV0DQo+ID4gPiA+ID4gPiA+ID4+ IG5vdCBzdXJlIGhhdmluZyB0aGVtIGluIHRoZSBwcm9kdWN0aW9uIGNvZGUuDQo+ID4gPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gPiBJSVJDLCAiYXNzZXJ0IiBpcyBzdGFuZGFyZCBDIGZ1bmN0 aW9uLiBDb21waWxlZCBvbmx5IGlmDQo+ID4gPiA+ID4gPiA+ID4gdGhlcmUgaXMgbm8gTkRFQlVH DQo+ID4gPiA+ID4gPiA+IGRlZmluZWQuDQo+ID4gPiA+ID4gPiA+ID4gU28sIGFzc2VydCBkb2Vz IGV4YWN0bHkgd2hhdCB5b3UgYXJlIHNheWluZyAtIHByb3ZpZGUgdGhlDQo+ID4gPiA+ID4gPiA+ ID4gZGVidWcgYnJlYWsgbm90IGFsbG93aW5nIHRoZSBidWcgdG8gZXZvbHZlLiBBbmQgbm8gdGhp cw0KPiA+ID4gPiA+ID4gPiA+IGJyZWFrIGluIHByb2R1Y3Rpb24NCj4gPiA+ID4gPiBjb2RlLg0K PiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IFNpbmNlIG1seCBk cml2ZXIgaXMgdXNpbmcgTkRFQlVHIGRlZmluZWQsIHdoYXQgeW91IHNhaWQgaXMNCj4gPiA+ID4g PiA+ID4gcmlnaHQgaW5kZWVkLiBCdXQgd2h5IG5vdCB1c2luZyBSVEVfQVNTRVJUIHRvIGJlIGNv bnNpc3RlbnQgd2l0aA0KPiByZXN0Lg0KPiA+ID4gPiA+ID4gPiBUaGVyZSBpcyBhIHNwZWNpZmlj IGNvbmZpZyBvcHRpb24gdG8gY29udHJvbCBhc3NlcnQNCj4gPiA+ID4gPiA+ID4gKFJURV9FTkFC TEVfQVNTRVJUKSBhbmQgYW55b25lIHVzaW5nIGl0IHdpbGwgZ2V0IGRpZmZlcmVudA0KPiA+ID4g PiA+ID4gPiBiZWhhdmlvciB3aXRoDQo+ID4gPiA+ID4gbWx4NS4NCj4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiBXZSBoYXZlIHRoZSBkZWRpY2F0ZWQgb3B0aW9uIHRvIGNvbnRyb2wgbWx4NSBkZWJ1 ZzoNCj4gPiA+ID4gPiA+IENPTkZJR19SVEVfRU5BQkxFX0FTU0VSVCBjb250cm9scyB0aGUgd2hv bGUgRFBESy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IE5vLCBpdCBjb250cm9scyB0aGUgd2hvbGUg RFBESyBleGNlcHQgbWx4IFBNRHMuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IENPTkZJR19SVEVf TElCUlRFX01MWDVfREVCVUcgY29udHJvbHMgTkRFQlVHIGZvciBtbHg1DQo+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gRnJvbSBteSBwcmFjdGljZSAtIEkgc3dpdGNoIHRoZSBtbHg1IGRlYnVnIG9w dGlvbiAoaW4gdGhlDQo+ID4gPiA+ID4gPiBwcm9jZXNzIG9mIHRoZSBkZWJ1Z2dpbmcvdGVzdGlu ZyBkYXRhcGF0aCBhbmQgY2hlY2tpbmcgdGhlDQo+ID4gPiA+ID4gPiByZXN1bHRpbmcgcGVyZm9y bWFuY2UsIGJ5IGRpcmVjdGx5IGRlZmluaW5nIE5ERUJVRyBpbiBtbHg1LmgNCj4gPiA+ID4gPiA+ IGFuZCBub3QgcmVjb25maWd1cmluZy9yZWJ1aWxkaW5nIHRoZQ0KPiA+ID4gPiA+IGVudGlyZSBE UERLKSwgdGhpcyBmaW5lIGdyYWluZWQgb3B0aW9uIHNlZW1zIHRvIGJlIHVzZWZ1bC4NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IEkgZG9uJ3QgbGlrZSBoYXZpbmcgbWx4IFBNRHMgYmVoYXZlIGRpZmZl cmVudGx5Lg0KPiA+ID4gPiA+IEl0IG1ha2UgdGhpbmdzIGRpZmZpY3VsdCBmb3IgbmV3Y29tZXJz Lg0KPiA+ID4gPiA+IEFuZCB3aXRoIG1lc29uLCBzdWNoIG9wdGlvbnMgYXJlIGNsZWFuZWQgdXAu DQo+ID4gPiA+DQo+ID4gPiA+IERvIHlvdSBtZWFuIHdlIHNob3VsZCBlbGltaW5hdGUgTkRFQlVH IHVzYWdlIGFuZCBjb252ZXJ0IGl0IHRvDQo+ID4gPiA+IHNvbWUNCj4gPiA+IGV4cGxpY2l0ICJN TFg1X05ERUJVRyINCj4gPiA+ID4gKGFuZCBjb252ZXJ0ICJhc3NlcnQiIHRvICJNTFg1X0FTU0VS VCIpID8NCj4gPiA+DQo+ID4gPiBJIG1lYW4gd2Ugc2hvdWxkIHVzZSBSVEVfQVNTRVJUIGluIG1s eDUsIGFzIGl0IGlzIGFscmVhZHkgZG9uZSBpbiBzb21lDQo+IGZpbGVzLg0KPiA+ID4NCj4gPiBU aGlzIHdvdWxkIG1ha2Ugbm90IHBvc3NpYmxlIHRvIGVuZ2FnZSBhc3NlcnRzICBpbiBtbHg1IG1v ZHVsZSBvbmx5Lg0KPiA+IEl0IGlzIGEgcXVlc3Rpb24gb2Ygc3RydWN0dXJpbmcvbGF5ZXJpbmcs IG5vdCAiZGlmZmVyZW50IGJlaGF2aW9yIi4NCj4gPiBBcyBmb3IgbWUgLSBpdCBpcyB2ZXJ5IG5p Y2UgdG8gaGF2ZSBmaW5lIGdyYWluZWQgZGVidWcgY29udHJvbCBvcHRpb24sDQo+ID4gYW5kIEkg dXNlIHRoaXMgZmVhdHVyZSBhY3RpdmVseSwgaXQganVzdCBzYXZlcyBteSB0aW1lLiBBbHNvLCBp dCBzZWVtcw0KPiA+IHRoZXNlIG9wdGlvbnMgYXJlIGltcGxlbWVudGVkIGluIG1hbnkgb3RoZXIg UE1EcyAod2l0aCBpdHMgb3duDQo+ID4geHh4X0FTU0VSVHMpLg0KPiANCj4gSSBkaXNhZ3JlZSwg aXQgaXMgbm90IG5pY2UuIEl0IG1ha2VzIGl0IG1vcmUgY29tcGxpY2F0ZSB0byB1c2UuDQo+IENh biB5b3UgaW1hZ2luZSBldmVyeSBmaWxlIGhhdmluZyBpdHMgb3duIHRvb2xzIGFuZCBjb25maWdz IGluIGEgcHJvamVjdD8gQXMgYQ0KPiBtYWludGFpbmVyLCBteSByb2xlIGlzIHRvIG1ha2UgdGhp bmdzIHNpbXBsZXIgZm9yIGV2ZXJ5b25lIGluIGdlbmVyYWwgc28gd2UNCj4gY2FuIGtub3cgZWFz aWx5IGhvdyB0aGluZ3Mgd29yay4NCg0KTm90IGV2ZXJ5IGZpbGUsIGJ1dCBldmVyeSBtb2R1bGUu IEl0IGlzIHF1aXRlIGNvbW1vbiBwcmFjdGljZSB0byBoYXZlIGxvY2FsDQpjb25maWd1cmF0aW9u IG9wdGlvbnMgZm9yIG1vZHVsZSBpbiB0aGUgbGFyZ2UgcHJvamVjdHMuIFNvLCBpdCBpcyBuYXRp dmUgZm9yDQpQTURzIHRvIGhhdmUgaXRzIGRlZGljYXRlZCBjb25maWd1cmF0aW9uIG9wdGlvbnMu IEFuZCB3aGF0IHdlIGhhdmUgDQpjdXJyZW50bHkgZm9sbG93cyB0aGlzIGFwcHJvYWNoLiANCg0K PiANCj4gQWJvdXQgdGltZSBzYXZpbmcsIEkgYWxzbyBkaXNhZ3JlZS4gSWYgeW91IGVuYWJsZSBh c3NlcnQgZm9yIHRoZSB3aG9sZSBwcm9qZWN0DQo+IGR1cmluZyBhbGwgeW91ciBkZXZlbG9wbWVu dCwgaXQgaXMgYSBnb29kIHByYWN0aWNlIHdoaWNoIGRvZXMgbm90IGNvc3QgYW55DQo+IHRpbWUu DQpEdXJpbmcgdGhlIGRheSBJIG1pZ2h0IHN3aXRjaCBtdWx0aXBsZSB0aW1lcyBiZXR3ZWVuIGRl YnVnICh3aXRoIGFzc2VydCBlbmFibGVkKQ0KYW5kIHBlcmZvcm1hbmNlIGNoZWNrIChkZWJ1Zy9h c3NlcnQgZGlzYWJsZWQpIG1vZGVzLiBOb3cgSSBjYW4gc3dpdGNoIGl0IGVhc2lseSBhbmQgcXVp Y2tseSwNCmp1c3QgY29tbWVudGluZyBbb3V0XSBOREVCVUcgaW4gbWx4NS5oLiBJbiB0aGUgbGFy Z2UgcHJvamVjdHMgdGhlIGdsb2JhbCBjb25maWd1cmF0aW9uIGNoYW5naW5nIHByaWNlDQppcyBn ZXR0aW5nIGhpZ2hlci4gWW91IGp1c3QgcHJvcG9zZSB0byBwYXkgdGhpcyBwcmljZSDimLkgLSBJ IHdvdWxkIGhhdmUgdG8gcmVjb25maWcvcmVjb21waWxlDQp0aGUgZW50aXJlIERQREsuIFRoZSBz YW1lIG1pZ2h0IGNvbmNlcm4gdGhlIG90aGVyIFBNRHMgLSBtYW55IG9mIHRoZW0gaGF2ZSB0aGUg cHJpdmF0ZQ0KZGVidWcgb3B0aW9uKHMpLg0KDQo+IA0KPiBBYm91dCBvdGhlciBQTURzLCB0aGV5 IG11c3QgYmUgZml4ZWQuDQpJIHN1cHBvc2UgdGhlIGRldmVsb3BlcnMgb2Ygb3RoZXIgUE1EcyB1 c2UgdGhlIG1vZHVsZSBkZWJ1ZyBvcHRpb25zIGVpdGhlciA6KQ0KIA0KPiANCkkgYWdyZWUgdGhl IE5ERUJVRyBpcyAiZGlmZmVyZW50IGJlaGF2aW9yIiwgd2Ugc2hvdWxkIHRoaW5rIGhvdyB0byBl bGltaW5hdGUgaXQuDQpCdXQgSSBkbyBub3QgdW5kZXJzdGFuZCB3aHkgd2Ugc2hvdWxkIGRyb3Ag dGhlIHBhcnRpYWwgY29uZmlndXJhdGlvbiwgdGhlIGZlYXR1cmUgdGhhdCBpcyBhY3RpdmVseSB1 c2VkLg0KTm93IGNvZGUgaXMgc3BsaXQgaW50byBzZXZlcmFsIGRlYnVnIGRvbWFpbnMgKGF0IGxl YXN0IGZvciBhc3NlcnQpLCB3ZSBjYW4gY29udHJvbCBlYWNoIGRvbWFpbiBpbiBpbmRlcGVuZGVu dA0KZmFzaGlvbiwgYW5kIHRoZSBwcmFjdGljZSBzaG93cyBpdCBpcyB1c2VmdWwgYW5kIHNhdmVz IGRldmVsb3BlcidzIHRpbWUuIERQREsgaXMgdGhlIGxhcmdlIHByb2plY3QgZGVmaW5pdGVseSwN Cml0IGNvbnRhaW5zIGEgbG90IG9mIG1vZHVsZXMsIHdlIGNhbid0IGFkZHJlc3MgYWxsIGRldmVs b3BtZW50IG5lZWRzIHdpdGggb25lIHNpbXBsZSBjb21tb24gY29uZmlndXJhdGlvbg0Kb3B0aW9u Lg0KDQpIYXZpbmcgdGhlIG1vZHVsZS9wcml2YXRlIGRlYnVnIG9wdGlvbnMgZG9lcyBub3QgZWxp bWluYXRlIHRoZSBpbnRyb2R1Y2luZyB0aGUgZ2xvYmFsIGNvbnRyb2wgLQ0Kc2F5ICJSVEVfQ09O RklHX0VOQUJMRV9NT0RVTEVfREVCVUdfT1BUSU9OUyIgdG8gcHJvdmlkZSBwcm9kdWN0aW9uIGNv ZGUgZ2VuZXJhdGlvbg0KImluIG9uZSBjbGljayIsIGJ1dCBqdXN0IGRyb3BwaW5nIHRoZSBtb2R1 bGUgZGVidWcgb3B0aW9ucyBpcyBub3QgbmljZSBhcyBmb3IgbWUuDQoNCldpdGggYmVzdCByZWdh cmRzLCBTbGF2YQ0KDQoNCg==