From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id D267FA046B for ; Mon, 24 Jun 2019 08:26:51 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CB6FE1BF47; Mon, 24 Jun 2019 08:26:49 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id D22ED1BE67 for ; Mon, 24 Jun 2019 08:26:47 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x5O6OTvX020570; Sun, 23 Jun 2019 23:26:46 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=f7ruLVxGmRfk2muLEGAkFMXYOHNVvJpY7/nNxzKjAAc=; b=Dc0zjgX3GgVQ/NCpMZMMbBRhaGMFN4xkR5vJOk07hbljOrlS/bCtm2OeYjZrUNdoWJD/ p621g/TMjGMrDTuApnXKKXVzkgn9MkbEgyS0bNR5iX4VN2PJHJT4Usgn42tUXDX1PUaZ goPvvMNVKi4W8apmtWHySW1CbvqKwPWBE+vkSfIeDfFEoqzUl8tbtakUOHP7jmE2Z3Wm qx/v5qAigqlGkWsyTPA6Leyp6d/h6fXe8QknQ30dH69djG+nVV+QgWo1ioKJnReN+yeN LkeTKlRtttEYLwwvH52Qd8mjITytJKQVkpfYxPpxCWZIqYcpULWNoTtVFSbpvQRlj8Ai sw== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0a-0016f401.pphosted.com with ESMTP id 2tarxr822t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 23 Jun 2019 23:26:46 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Sun, 23 Jun 2019 23:26:45 -0700 Received: from NAM01-BY2-obe.outbound.protection.outlook.com (104.47.34.53) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Sun, 23 Jun 2019 23:26:45 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector2-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=f7ruLVxGmRfk2muLEGAkFMXYOHNVvJpY7/nNxzKjAAc=; b=FSijKzpIzRK37hhyNiWKvcFjEz1HeAdQY+xMmWVnxqMPg8X2qH+PL1iZH1GI3nhw4yOfgFXmxAhRS8LyDhWcVf11qTImzdRLzeAzWbF6Mdnla5JEHGjqW8Uxo5mCsSukBZPeD6mHkZafC7Neh81Z3kAm3pGotqNkVJ7yuWgcGiw= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2949.namprd18.prod.outlook.com (20.179.59.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2008.13; Mon, 24 Jun 2019 06:26:44 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::75fd:a528:a1bf:bef4]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::75fd:a528:a1bf:bef4%3]) with mapi id 15.20.2008.014; Mon, 24 Jun 2019 06:26:43 +0000 From: Jerin Jacob Kollanukkaran To: Matan Azrad , Adrien Mazarguil , "dev@dpdk.org" Thread-Topic: [PATCH] [RFC] ethdev: support flow aging Thread-Index: AQHVE6xZdRJnMnCt1UOalpFSEqCNWKaOe3uAgAADrUCAABn+oIASay2QgAl+VOA= Date: Mon, 24 Jun 2019 06:26:43 +0000 Message-ID: References: <1558865893-23381-1-git-send-email-matan@mellanox.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [14.140.231.66] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 737584d9-93f1-4b60-495a-08d6f86ced3c x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:BYAPR18MB2949; x-ms-traffictypediagnostic: BYAPR18MB2949: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-forefront-prvs: 007814487B x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(376002)(39850400004)(346002)(366004)(396003)(13464003)(199004)(189003)(305945005)(55016002)(66066001)(316002)(5660300002)(66446008)(64756008)(68736007)(486006)(6436002)(186003)(229853002)(99286004)(14454004)(476003)(86362001)(52536014)(446003)(14444005)(11346002)(76176011)(3846002)(6116002)(7696005)(55236004)(81166006)(8676002)(74316002)(81156014)(25786009)(7736002)(110136005)(6246003)(9686003)(33656002)(8936002)(2501003)(76116006)(102836004)(71200400001)(478600001)(256004)(2906002)(6506007)(53546011)(26005)(71190400001)(66946007)(73956011)(66556008)(66476007)(53936002); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2949; H:BYAPR18MB2424.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: sHZjXjfb1pgz8iP5ZlKgKYLXaknVwKlf5+Aqj3iTWMIbXDy+fSOExYunDbzM2D/9MHLk+oYdf1LOlldacMHtSYGdHPc9mHHRWxncYCmBFbqLt74EE5n3I945o51BzerwETYeYGIKqqTg6H+gc+IsnzHvm5c5yC/1o5iCmfBttFeXV5ISvNGrwewCcLDYrCJpGz5hbILRPtbfcl+gHiWY0FqO/AFZ94AuT6xV4vwpTUyThAuWG6Ph3qvIOJ/G8zrn7tVB3x5/4DEiiQzuq5sCgNEiAsj8HwacF8JnV1N0OGGkBRZaEvRGWOFw/8zvrDif3zc5PNHo6M+8IF++/WCnua0iIdagDoLhjxF4FflIHsfquy0lcs9l7Wr5vsRlfAwrlwfQXnFxbpOsiRt5zCBWiVN/LWI42ljnYcy/Ixknqqk= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 737584d9-93f1-4b60-495a-08d6f86ced3c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jun 2019 06:26:43.8062 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: jerinj@marvell.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2949 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-06-24_05:, , signatures=0 Subject: Re: [dpdk-dev] [PATCH] [RFC] ethdev: support flow aging 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" DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IE1hdGFuIEF6cmFkIDxtYXRh bkBtZWxsYW5veC5jb20+DQo+IFNlbnQ6IFR1ZXNkYXksIEp1bmUgMTgsIDIwMTkgMTE6MjcgQU0N Cj4gVG86IEplcmluIEphY29iIEtvbGxhbnVra2FyYW4gPGplcmluakBtYXJ2ZWxsLmNvbT47IEFk cmllbiBNYXphcmd1aWwNCj4gPGFkcmllbi5tYXphcmd1aWxANndpbmQuY29tPjsgZGV2QGRwZGsu b3JnDQo+IFN1YmplY3Q6IFtFWFRdIFJFOiBbUEFUQ0hdIFtSRkNdIGV0aGRldjogc3VwcG9ydCBm bG93IGFnaW5nDQo+IA0KPiBIaSBKZXJpbg0KDQpIaSBNYXRhbiwNCg0KPiANCj4gRnJvbTogSmVy aW4gSmFjb2INCj4gPiBTZW50OiBUaHVyc2RheSwgSnVuZSA2LCAyMDE5IDM6MTYgUE0NCj4gPiBU bzogTWF0YW4gQXpyYWQgPG1hdGFuQG1lbGxhbm94LmNvbT47IEFkcmllbiBNYXphcmd1aWwNCj4g PiA8YWRyaWVuLm1hemFyZ3VpbEA2d2luZC5jb20+OyBkZXZAZHBkay5vcmcNCj4gPiBTdWJqZWN0 OiBSRTogW1BBVENIXSBbUkZDXSBldGhkZXY6IHN1cHBvcnQgZmxvdyBhZ2luZw0KPiA+DQo+ID4g PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogTWF0YW4gQXpyYWQgPG1h dGFuQG1lbGxhbm94LmNvbT4NCj4gPiA+IFNlbnQ6IFRodXJzZGF5LCBKdW5lIDYsIDIwMTkgNDoy MiBQTQ0KPiA+ID4gVG86IEplcmluIEphY29iIEtvbGxhbnVra2FyYW4gPGplcmluakBtYXJ2ZWxs LmNvbT47IEFkcmllbiBNYXphcmd1aWwNCj4gPiA+IDxhZHJpZW4ubWF6YXJndWlsQDZ3aW5kLmNv bT47IGRldkBkcGRrLm9yZw0KPiA+ID4gU3ViamVjdDogW0VYVF0gUkU6IFtQQVRDSF0gW1JGQ10g ZXRoZGV2OiBzdXBwb3J0IGZsb3cgYWdpbmcNCj4gPiA+DQo+ID4gPiBIaSBKZXJpbg0KPiA+DQo+ ID4gSGkgTWF0YW4sDQo+ID4NCj4gPiA+DQo+ID4gPiBGcm9tOiBKZXJpbiBKYWNvYg0KPiA+ID4g PiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+ID4gRnJvbTogZGV2IDxkZXYt Ym91bmNlc0BkcGRrLm9yZz4gT24gQmVoYWxmIE9mIE1hdGFuIEF6cmFkDQo+ID4gPiA+ID4gU2Vu dDogU3VuZGF5LCBNYXkgMjYsIDIwMTkgMzo0OCBQTQ0KPiA+ID4gPiA+IFRvOiBBZHJpZW4gTWF6 YXJndWlsIDxhZHJpZW4ubWF6YXJndWlsQDZ3aW5kLmNvbT47IGRldkBkcGRrLm9yZw0KPiA+ID4g PiA+IFN1YmplY3Q6IFtkcGRrLWRldl0gW1BBVENIXSBbUkZDXSBldGhkZXY6IHN1cHBvcnQgZmxv dyBhZ2luZw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gT25lIG9mIHRoZSByZWFzb25zIHRvIGRlc3Ry b3kgYSBmbG93IGlzIHRoZSBmYWN0IHRoYXQgbm8gcGFja2V0DQo+ID4gPiA+ID4gbWF0Y2hlcyB0 aGUgZmxvdyBmb3IgInRpbWVvdXQiIHRpbWUuDQo+ID4gPiA+ID4gRm9yIGV4YW1wbGUsIHdoZW4g VENQXFVEUCBzZXNzaW9ucyBhcmUgc3VkZGVubHkgY2xvc2VkLg0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gQ3VycmVudGx5LCB0aGVyZSBpcyBubyBhbnkgZHBkayBtZWNoYW5pc20gZm9yIGZsb3cgYWdp bmcgYW5kIHRoZQ0KPiA+ID4gPiA+IGFwcGxpY2F0aW9ucyB1c2UgdGhlcmUgb3duIHdheXMgdG8g ZGV0ZWN0IGFuZCBkZXN0cm95IGFnZWQtb3V0DQo+IGZsb3dzLg0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gVGhpcyBSRkMgaW50cm9kdWNlcyBmbG93IGFnaW5nIEFQSXMgdG8gb2ZmbG9hZCB0aGUgZmxv dyBhZ2luZw0KPiA+ID4gPiA+IHRhc2sgZnJvbSB0aGUgYXBwbGljYXRpb24gdG8gdGhlIHBvcnQu DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBEZXNpZ246DQo+ID4gPiA+ID4gLSBBIG5ldyBydGVfZmxv dyBhY3Rpb246IFJURV9GTE9XX0FDVElPTl9UWVBFX0FHRSB0byBzZXQgdGhlDQo+ID4gPiB0aW1l b3V0DQo+ID4gPiA+ID4gYW5kDQo+ID4gPiA+ID4gICB0aGUgYXBwbGljYXRpb24gZmxvdyBjb250 ZXh0IGZvciBlYWNoIGZsb3cuDQo+ID4gPiA+ID4gLSBBIG5ldyBldGhkZXYgZXZlbnQ6IFJURV9F VEhfRVZFTlRfRkxPV19BR0VEIGZvciB0aGUgZHJpdmVyDQo+IHRvDQo+ID4gPiA+IHJlcG9ydA0K PiA+ID4gPiA+ICAgdGhhdCB0aGVyZSBhcmUgbmV3IGFnZWQtb3V0IGZsb3dzLg0KPiA+ID4gPiA+ IC0gQSBuZXcgcnRlX2Zsb3cgQVBJOiBydGVfZmxvd19nZXRfYWdlZF9mbG93cyB0byBnZXQgdGhl DQo+ID4gPiA+ID4gYWdlZC1vdXQNCj4gPiA+IGZsb3dzDQo+ID4gPiA+ID4gICBjb250ZXh0cyBm cm9tIHRoZSBwb3J0Lg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQnkgdGhpcyBkZXNpZ24gZWFjaCBQ TUQgY2FuIHVzZSBpdHMgYmVzdCB3YXkgdG8gZG8gdGhlIGFnaW5nDQo+ID4gPiA+ID4gd2l0aCB0 aGUgZGV2aWNlIG9mZmxvYWRzIHN1cHBvcnRlZCBieSBpdHMgSFcuDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiBTaWduZWQtb2ZmLWJ5OiBNYXRhbiBBenJhZCA8bWF0YW5AbWVsbGFub3guY29tPg0KPiA+ ID4gPiA+IC0tLQ0KPiA+ID4gPiA+ICBsaWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2LmggfCAg MSArDQo+ID4gPiA+ID4gIGxpYi9saWJydGVfZXRoZGV2L3J0ZV9mbG93LmggICB8IDU2DQo+ID4g PiA+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gPiA+ ID4gIDIgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKQ0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfZXRoZGV2L3J0ZV9ldGhkZXYuaA0KPiA+ID4gPiA+ IGIvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0aGRldi5oIGluZGV4IDFmMzVlMWQuLjZmYzE1MzEg MTAwNjQ0DQo+ID4gPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0aGRldi5oDQo+ ID4gPiA+ID4gKysrIGIvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0aGRldi5oDQo+ID4gPiA+ID4g QEAgLTI3NzEsNiArMjc3MSw3IEBAIGVudW0gcnRlX2V0aF9ldmVudF90eXBlIHsNCj4gPiA+ID4g PiAgCVJURV9FVEhfRVZFTlRfTkVXLCAgICAgIC8qKjwgcG9ydCBpcyBwcm9iZWQgKi8NCj4gPiA+ ID4gPiAgCVJURV9FVEhfRVZFTlRfREVTVFJPWSwgIC8qKjwgcG9ydCBpcyByZWxlYXNlZCAqLw0K PiA+ID4gPiA+ICAJUlRFX0VUSF9FVkVOVF9JUFNFQywgICAgLyoqPCBJUHNlYyBvZmZsb2FkIHJl bGF0ZWQgZXZlbnQgKi8NCj4gPiA+ID4gPiArCVJURV9FVEhfRVZFTlRfRkxPV19BR0VELC8qKjwg TmV3IGFnZWQtb3V0IGZsb3dzDQo+IGRldGVjdGVkIGluDQo+ID4gPiA+ID4gdGhlIHBvcnQNCj4g PiA+ID4gRG9lcyB0aGlzIGV2ZW50IHN1cHBvcnRlZCBpbiBIVz8NCj4gPiA+IEl0IGRlcGVuZHMg aW4gdGhlIFBNRCBpbXBsZW1lbnRhdGlvbiBhbmQgSFcgY2FwYWJpbGl0eS4NCj4gPiA+DQo+ID4g PiA+IE9yIEFyZSBwbGFubmluZyB0byBpbXBsZW1lbnQgd2l0aCBhbGFybSBvciB0aW1lci4NCj4g PiA+IEFnYWluLCBkZXBlbmRzIGluIHRoZSBQTUQgaW1wbGVtZW50YXRpb24uDQo+ID4gPg0KPiA+ ID4gPiBKdXN0IGFza2luZyBiZWNhdXNlLCBpZiBub25lIG9mIHRoZSBIVyBzdXBwb3J0cyB0aGUg aW50ZXJydXB0IHRoZW4NCj4gPiA+ID4gb25seSBydGVfZmxvd19nZXRfYWdlZF9mbG93cyBzeW5j IEFQSSBiZSBlbm91Z2goKQ0KPiA+ID4gV2h5Pw0KPiA+DQo+ID4gSWYgbm9uZSBvZiB0aGUgSFcg c3VwcG9ydHMgaXQgdGhlbiBhcHBsaWNhdGlvbi9jb21tb24gY29kZSBjYW4NCj4gPiBwZXJpb2Rp Y2FsbHkgcG9sbHMgaXQuDQo+ID4gSWYgbWx4NSBodyBzdXBwb3J0cyBpdCB0aGVuIGl0IGZpbmUg dG8gaGF2ZSBpbnRlcnJ1cHQuDQo+IA0KPiBBY3R1YWxseSBNTFg1IGRvZXNuJ3Qgc3VwcG9ydCBh Z2luZyBmdWxseSBieSBIVyBidXQgdGhlIEhXIGNhbiBoZWxwIHRvIGRvIGl0DQo+IGJldHRlci4N Cj4gTG9vaywgdGhlIFBNRCBpcyB0aGUgYmVzdCBvbmUgdG8ga25vdyB3aGF0IGlzIHRoZSBiZXN0 IHdheSB0byBkbyBhZ2luZyBieSBpdHMNCj4gSFcgZXZlbiBpZiBhZ2luZyBpcyBub3QgZnVsbHkg c3VwcG9ydGVkIGJ5IGl0Lg0KPiBBbmQgaXQgbWF5IGFkZCBhIG1lYW5pbmdmdWwgZWZmaWNpZW5j eSB0byB0aGUgYXBwbGljYXRpb24uDQo+IA0KPiA+IEJ1dCBJIHRoaW5rLCB3ZSBuZWVkIHRvIGhh dmUgbWVhbnMgdG8gZXhwcmVzcyBhIEhXL0ltcGxlbWVudGF0aW9uIGRvZXMNCj4gPiBub3Qgc3Vw cG9ydCBpdHMgQXMgdGhlcmUgbWF5IGZvbGxvd2luZyByZWFzb25zIHdoeSBkcml2ZXJzIGNob29z ZSB0bw0KPiA+IG5vdCB0YWtlIHRpbWVyL2FsYXJtIHBhdGgNCj4gPiAxKSBTb21lIEVBTCBwb3J0 IGRvZXMgbm90IHN1cHBvcnQgdGltZXIvYWxhcm0gZXhhbXBsZTogRnJlZUJTRCBEUERLDQo+ID4g cG9ydA0KPiAJT0ssIGJ1dCB3aHkgbm90IHRvIHN1cHBvcnQgaXQgZm9yIG90aGVyIGNhc2VzIChu byBGcmVlQlNEIHBvcnQpPw0KPiANCj4gPiAyKSBJZiB3ZSBuZWVkIHRvIHN1cHBvcnQgYSBmZXcg a2lsbG8gcnVsZXMgdGhlbiB0aW1lci9hbGFybQ0KPiA+IGltcGxlbWVudGF0aW9uIHdpbGwgYmUg aGVhdnkNCj4gDQo+IE5vdCBzdXJlLCBEZXBlbmQgaW4gdGhlIEhXIGFiaWxpdHkuDQoNClllcyB3 aGVuIEhXIGRvZXMgbm90IHN1cHBvcnQgYXQgYWxsLg0KDQo+IA0KPiA+IFNvIGFuIG9wdGlvbiB0 byBleHByZXNzIHVuIHN1cHBvcnRlZCBldmVudCB3b3VsZCBiZSBmaW5lLg0KPiANCj4gQ2FuIHlv dSBleHBsYWluIG1vcmUgd2hhdCBpcyB5b3VyIGludGVuc2lvbiBoZXJlICgyKT8NCg0KVG8gYWRk cmVzcyB0aGUgY2FzZSB3aGVyZSBIVyBhbmQvb3IgT1MoTGlrZSBGcmVlQlNEKSBkb2VzIG5vdCBz dXBwb3J0IGF0IGFsbCAuIEluIHN1Y2ggY2FzZSwNCkV4cHJlc3NpbmcgdGhlIHVuc3VwcG9ydGVk IHdvdWxkIGhlbHAgYXBwbGljYXRpb24gdG8gaGFuZGxlIGluIHN5bmNocm9ub3VzIG1hbm5lci4N Cg0KPiANCj4gPiA+IEFjY29yZGluZyB0byB0aGUgYWJvdmUgZGVzaWduIHRoaXMgaXMgdGhlIHdh eSBmb3IgdGhlIFBNRCB0byBub3RpZnkNCj4gPiA+IHRoZSBhcHBsaWNhdGlvbiB3aGVuIGl0IGhh cyBzb21lIGFnZWQgZmxvd3MgQVNBUC4NCj4gPiA+IFNvLCBpZiB0aGUgUE1EIHVzZXMgYW4gYWxh cm1cdGltZXIgb3IgYW55IG90aGVyIHdheSB0byBzdXBwb3J0IGFnaW5nDQo+ID4gPiBhY3Rpb24g aXQgaXMgYmV0dGVyIGluIHBhcnQgb2YgdGhlIGNhc2VzIHRvIG5vdGlmeSB0aGUgdXNlcg0KPiA+ ID4gYXN5bmNocm9uaWNhbGx5IGluc3RlYWQgb2YgZG9pbmcgcG9sbGluZyBieSB0aGUgYXBwbGlj YXRpb24uDQo+ID4gPiBUaGUgaWRlYSBpcyB0byBsZXQgdGhlIGFwcGxpY2F0aW9uIHRvIGRlY2lk ZSB3aGF0IGlzIGJldHRlciBmb3IgaXRzIHVzYWdlLg0KPiA+ID4NCj4gPiA+IEZvciBtbHg1IGNh c2UsDQo+ID4gPiBUaGUgcGxhbiBpcyB0byByYWlzZSB0aGlzIGV2ZW50IGZyb20gYW4gSFcgaW50 ZXJydXB0IGhhbmRsaW5nKHNhbWUNCj4gPiA+IGFzIGxpbmsgZXZlbnQpLg0KPiA+DQo+ID4gR29v ZCB0byBrbm93Lg0KPiANCj4gVGhlIE1MWDUgcGxhbiBpcyBzdGlsbCB0byB1c2UgdGltZXIvYWxh cm0gYW5kIGludGVycnVwdCBtZWNoYW5pc20gdG8gc3VwcG9ydA0KPiBhZ2luZzoNCj4gIFRoZSBI VyBoZWxwIGhlcmUgaXMgdGhlIGFiaWxpdHkgdG8gcXVlcnkgYmF0Y2ggb2YgZmxvd3MgY291bnRl cnMNCj4gYXN5bmNocm9uaWNhbGx5LCBzbyBnZXR0aW5nIHRoZSByZXNwb25zZSBvZiB0aGUgbmV3 IGNvdW50ZXJzIHZhbHVlcyBieSBhbg0KPiBpbnRlcnJ1cHQuDQo+IA0KPiBUaGUgdGltZXJcYWxh cm0gd2lsbCBjYWxsIHRvIGRldlggb3BlcmF0aW9uIHRvIHJlYWQgYmF0Y2ggb2YgY291bnRlcnMN Cj4gYXN5bmNocm9uaWNhbGx5IC0gZmFzdCBjb21tYW5kLg0KPiBUaGUgaW50ZXJydXB0IGhhbmRs ZXIgdG8gY2F0Y2ggdGhlIHJlc3BvbnNlIGFuZCB0byBjaGVjayB0aW1lb3V0IGZvciBlYWNoDQo+ IGZsb3cgKG5vIG5lZWQgdG8gY29weSB0aGUgY291bnRlcnMgZnJvbSB0aGUgSFcgbWVtb3J5IC0g dGhlIHZhbHVlcyBhcmUgaW4NCj4gdGhlIFBNRCBtZW1vcnkpIC0gaWYgdGhlcmUgaXMgYSBuZXcg YWdlZCBmbG93IC0gcmFpc2UgdGhlIGV2ZW50Lg0KPiANCj4gDQoNCg==