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 1EE92A2EDB for ; Tue, 1 Oct 2019 07:59:14 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 4032A322C; Tue, 1 Oct 2019 07:59:13 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 3C8FB23D for ; Tue, 1 Oct 2019 07:59:11 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x915sUnF008817; Mon, 30 Sep 2019 22:59:10 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=SCv6spepNv06NlmMxjvWeidxsC9/EM7nontiAod4Vow=; b=UZY+9XOCIcTaMiNqFr7nL+tZkZ1Cdx4PBzfTQxS8MTZLOqDkLnAaj0ehk65FXUorrclQ PbZ2IYu4ynhkl/cNItG5/CI/xV649XvrmrK4TDslv7t0sppm9NbCWfPBshEMa9GWpuwO PFIro1qXrdGmD3dE1P2FyZBubm/7xqmernxRYYfZL933F2fFwqfNQ0vOl3QQdRDiHQyF 6Cr5TCWebkW/H/S6S+yfnOJyBebD4GVJ92XWdvcB1gdT+XKtiHq1PgYRUQorzHqM+o6H pEApSRj+XpbbtXftKttLuINI/L22K9npFDPvrWcPk2NQRfsf/kbn0mY8ErArrUZS5Uo+ 2Q== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0a-0016f401.pphosted.com with ESMTP id 2vbur18w15-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 30 Sep 2019 22:59:10 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 30 Sep 2019 22:59:09 -0700 Received: from NAM01-BY2-obe.outbound.protection.outlook.com (104.47.34.58) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 30 Sep 2019 22:59:09 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aBWsooFIGCSEtywVjwjJZFkywHecl73xEiYtZ5IakCsn8sDft76ZHws5B6XpfVNgZqTJ5UqIGKHx+1WEMWdflMfelq7jJHCiPr31ZzkG3xad/PFen0IdAE3FPt3+RbEVOxb2GXxY8B/H1RUsBnAJUz1JgrHCPkiXdXnRKLVcEHF/ElVa+97w85PhKYAnwZAoROlQosv8UX98s6fnCXxGIAsIGJc+YblvHlkUhlSK0O0RTLatrbP2ECG4FgYy0fRpzW1EuFkLZvtTg20dQYkMTLLEt2F8UPGoB345xMipDogTZrqHmVDH/sSlqh/maHC4McaLPNBvnLECdbVgb3B78g== 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=SCv6spepNv06NlmMxjvWeidxsC9/EM7nontiAod4Vow=; b=CF3PfXqUH56PlYRhru8q6ud3KjvgTPuCdisYPvZxs1jXwryueFN2vk6wdPRPz0kHVe6YuGx2I6FYIXPuAzP+OpZrAffvQHIfZ3DhXkH8BaUFgl7oIiC+1vNCEC12kKJHA+Is8tQjgmc7Sv1/ZPzoWjTFgUtJphrayMwj5ppEuGonIYt4hZU6f+moLEFXuJo/yRT1eL0JRkIWHGz/nF6YauKMJi5+ZPRqsdV5sfkrtGHZQBPscfUHJZ+SPZkIKaYXFm20kYdbHn5tPMoqrIfgqxdxOoqwH5TtOmYMqv5JaynfZMxLdmWxX/cL3l2SGSws4Ooth+VUz2/l1EEGJGoeEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none 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=SCv6spepNv06NlmMxjvWeidxsC9/EM7nontiAod4Vow=; b=C2uycGWvaytvl60IhnHFcsggV20UgzAGZ4Yg8sY9IMMeJ4GUZNMPHSVdK44YclpONf1l9+qNXa/4KBk10j9qUp87HGq0h1b95xC9E++hrYFX9svNQIi79+plWGi7nZuf2CtCuVWnDQskHupfcT6a0dVMCrgBuK/g3Q36Wopw8c8= Received: from CY4PR1801MB1863.namprd18.prod.outlook.com (10.171.255.160) by CY4PR1801MB1861.namprd18.prod.outlook.com (10.165.88.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2305.16; Tue, 1 Oct 2019 05:59:06 +0000 Received: from CY4PR1801MB1863.namprd18.prod.outlook.com ([fe80::15d1:f4cf:f510:8fa]) by CY4PR1801MB1863.namprd18.prod.outlook.com ([fe80::15d1:f4cf:f510:8fa%4]) with mapi id 15.20.2305.017; Tue, 1 Oct 2019 05:59:05 +0000 From: Pavan Nikhilesh Bhagavatula To: Nipun Gupta , Jerin Jacob CC: Jerin Jacob Kollanukkaran , "bruce.richardson@intel.com" , Akhil Goyal , Marko Kovacevic , Ori Kam , Radu Nicolau , Tomasz Kantecki , Sunil Kumar Kori , "dev@dpdk.org" , Hemant Agrawal Thread-Topic: [dpdk-dev] [PATCH v4 08/10] examples/l2fwd-event: add eventdev main loop Thread-Index: AQHVd1m18TvNEI+qbEy+mjixUswtGqdD17IAgAAErmCAAKQegIAAySNA Date: Tue, 1 Oct 2019 05:59:05 +0000 Message-ID: References: <20190919101346.8832-1-pbhagavatula@marvell.com> <20190924094209.3827-1-pbhagavatula@marvell.com> <20190924094209.3827-9-pbhagavatula@marvell.com> In-Reply-To: Accept-Language: en-IN, 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: 82c4501d-6248-4b21-afd7-08d74634779d x-ms-traffictypediagnostic: CY4PR1801MB1861: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 0177904E6B x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(376002)(396003)(366004)(39860400002)(136003)(346002)(199004)(189003)(13464003)(4326008)(33656002)(26005)(6116002)(14444005)(99286004)(6246003)(316002)(7416002)(71200400001)(3846002)(256004)(229853002)(2906002)(110136005)(54906003)(6506007)(71190400001)(86362001)(53546011)(186003)(14454004)(74316002)(52536014)(25786009)(8676002)(5660300002)(81156014)(81166006)(305945005)(476003)(7696005)(478600001)(102836004)(446003)(9686003)(11346002)(486006)(6436002)(76176011)(55016002)(66066001)(7736002)(8936002)(55236004)(66556008)(76116006)(64756008)(66946007)(66476007)(66446008)(60764002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR1801MB1861; H:CY4PR1801MB1863.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: BCL:0; x-microsoft-antispam-message-info: FhZSE3W8cvkkfsg6FMhswPN3Rq0R0ULE6Ew1S3VIIW0BUO/HMvu1v/CX46z1YZq2O7pjqaXCq95txDPa1PE/LWLO3qSax03H8+GF3Plb9WJGLv+sVu4iq5lJQQB1+lVTRL0lMwHuuMAjPeB9K0TWrpt/L6KM2LxO7QNHC8ud7FRqliZjTRey/JuucmGr3anEc0IMma0Q0iqiEEzQ3kS0ltjwyf1yNOjUUtwKqxW+NlYZX/xmqIV1AckKjgNPK0HJ46HkNr55sLjcfKatHMJNbDMnjbdkEnyCd/YLyTUQpQXuAfHC1P3LYO7XTySphmY4bz+EAvro6zeqMsjHTPQOJdj2X4iGaLYDqaIcPesUvy876CNdIACFVVVBjiu0rILi6vW4McrrQnre128mpJDbcL1lmukVk/6vRWyl4c2AB10= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 82c4501d-6248-4b21-afd7-08d74634779d X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Oct 2019 05:59:05.4271 (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: o9H+TpAsk0O5pLXqq0IbwgmGIfmFhqvUrVSC69lRVkyXrPL35mZQ4bJOeQfQYnxeDhFaLtrw3RQuEsZQ9sb+HIFXm7Mw2WGKdFl+kgGn+ks= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR1801MB1861 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-01_03:2019-09-30,2019-10-01 signatures=0 Subject: Re: [dpdk-dev] [PATCH v4 08/10] examples/l2fwd-event: add eventdev main loop 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" DQoNCj4tLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPkZyb206IGRldiA8ZGV2LWJvdW5jZXNA ZHBkay5vcmc+IE9uIEJlaGFsZiBPZiBOaXB1biBHdXB0YQ0KPlNlbnQ6IE1vbmRheSwgU2VwdGVt YmVyIDMwLCAyMDE5IDExOjIxIFBNDQo+VG86IFBhdmFuIE5pa2hpbGVzaCBCaGFnYXZhdHVsYSA8 cGJoYWdhdmF0dWxhQG1hcnZlbGwuY29tPjsgSmVyaW4NCj5KYWNvYiA8amVyaW5qYWNvYmtAZ21h aWwuY29tPg0KPkNjOiBKZXJpbiBKYWNvYiBLb2xsYW51a2thcmFuIDxqZXJpbmpAbWFydmVsbC5j b20+Ow0KPmJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tOyBBa2hpbCBHb3lhbCA8YWtoaWwuZ295 YWxAbnhwLmNvbT47DQo+TWFya28gS292YWNldmljIDxtYXJrby5rb3ZhY2V2aWNAaW50ZWwuY29t PjsgT3JpIEthbQ0KPjxvcmlrYUBtZWxsYW5veC5jb20+OyBSYWR1IE5pY29sYXUgPHJhZHUubmlj b2xhdUBpbnRlbC5jb20+Ow0KPlRvbWFzeiBLYW50ZWNraSA8dG9tYXN6LmthbnRlY2tpQGludGVs LmNvbT47IFN1bmlsIEt1bWFyIEtvcmkNCj48c2tvcmlAbWFydmVsbC5jb20+OyBkZXZAZHBkay5v cmc7IEhlbWFudCBBZ3Jhd2FsDQo+PGhlbWFudC5hZ3Jhd2FsQG54cC5jb20+DQo+U3ViamVjdDog UmU6IFtkcGRrLWRldl0gW1BBVENIIHY0IDA4LzEwXSBleGFtcGxlcy9sMmZ3ZC1ldmVudDogYWRk DQo+ZXZlbnRkZXYgbWFpbiBsb29wDQo+DQo+DQo+DQo+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPj4gRnJvbTogUGF2YW4gTmlraGlsZXNoIEJoYWdhdmF0dWxhIDxwYmhhZ2F2YXR1bGFA bWFydmVsbC5jb20+DQo+PiBTZW50OiBNb25kYXksIFNlcHRlbWJlciAzMCwgMjAxOSAxOjM5IFBN DQo+PiBUbzogTmlwdW4gR3VwdGEgPG5pcHVuLmd1cHRhQG54cC5jb20+OyBKZXJpbiBKYWNvYg0K PjxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+PiBDYzogSmVyaW4gSmFjb2IgS29sbGFudWtrYXJh biA8amVyaW5qQG1hcnZlbGwuY29tPjsNCj4+IGJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tOyBB a2hpbCBHb3lhbCA8YWtoaWwuZ295YWxAbnhwLmNvbT47DQo+TWFya28NCj4+IEtvdmFjZXZpYyA8 bWFya28ua292YWNldmljQGludGVsLmNvbT47IE9yaSBLYW0NCj48b3Jpa2FAbWVsbGFub3guY29t PjsNCj4+IFJhZHUgTmljb2xhdSA8cmFkdS5uaWNvbGF1QGludGVsLmNvbT47IFRvbWFzeiBLYW50 ZWNraQ0KPj4gPHRvbWFzei5rYW50ZWNraUBpbnRlbC5jb20+OyBTdW5pbCBLdW1hciBLb3JpDQo+ PHNrb3JpQG1hcnZlbGwuY29tPjsNCj4+IGRldkBkcGRrLm9yZw0KPj4gU3ViamVjdDogUkU6IFtk cGRrLWRldl0gW1BBVENIIHY0IDA4LzEwXSBleGFtcGxlcy9sMmZ3ZC1ldmVudDogYWRkDQo+ZXZl bnRkZXYNCj4+IG1haW4gbG9vcA0KPj4NCj4+DQo+Pg0KPj4gPi0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+PiA+RnJvbTogTmlwdW4gR3VwdGEgPG5pcHVuLmd1cHRhQG54cC5jb20+DQo+PiA+ U2VudDogTW9uZGF5LCBTZXB0ZW1iZXIgMzAsIDIwMTkgMToxNyBQTQ0KPj4gPlRvOiBKZXJpbiBK YWNvYiA8amVyaW5qYWNvYmtAZ21haWwuY29tPg0KPj4gPkNjOiBQYXZhbiBOaWtoaWxlc2ggQmhh Z2F2YXR1bGEgPHBiaGFnYXZhdHVsYUBtYXJ2ZWxsLmNvbT47IEplcmluDQo+PiA+SmFjb2IgS29s bGFudWtrYXJhbiA8amVyaW5qQG1hcnZlbGwuY29tPjsNCj4+ID5icnVjZS5yaWNoYXJkc29uQGlu dGVsLmNvbTsgQWtoaWwgR295YWwgPGFraGlsLmdveWFsQG54cC5jb20+Ow0KPj4gPk1hcmtvIEtv dmFjZXZpYyA8bWFya28ua292YWNldmljQGludGVsLmNvbT47IE9yaSBLYW0NCj4+ID48b3Jpa2FA bWVsbGFub3guY29tPjsgUmFkdSBOaWNvbGF1IDxyYWR1Lm5pY29sYXVAaW50ZWwuY29tPjsNCj4+ ID5Ub21hc3ogS2FudGVja2kgPHRvbWFzei5rYW50ZWNraUBpbnRlbC5jb20+OyBTdW5pbCBLdW1h ciBLb3JpDQo+PiA+PHNrb3JpQG1hcnZlbGwuY29tPjsgZGV2QGRwZGsub3JnDQo+PiA+U3ViamVj dDogUkU6IFtkcGRrLWRldl0gW1BBVENIIHY0IDA4LzEwXSBleGFtcGxlcy9sMmZ3ZC1ldmVudDoN Cj5hZGQNCj4+ID5ldmVudGRldiBtYWluIGxvb3ANCj4+ID4NCj4+ID4NCj4+ID4NCj4+ID4+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+PiA+PiBGcm9tOiBKZXJpbiBKYWNvYiA8amVyaW5q YWNvYmtAZ21haWwuY29tPg0KPj4gPj4gU2VudDogTW9uZGF5LCBTZXB0ZW1iZXIgMzAsIDIwMTkg MTI6MDggUE0NCj4+ID4+IFRvOiBOaXB1biBHdXB0YSA8bmlwdW4uZ3VwdGFAbnhwLmNvbT4NCj4+ ID4+IENjOiBQYXZhbiBOaWtoaWxlc2ggQmhhZ2F2YXR1bGEgPHBiaGFnYXZhdHVsYUBtYXJ2ZWxs LmNvbT47DQo+SmVyaW4NCj4+ID5KYWNvYg0KPj4gPj4gS29sbGFudWtrYXJhbiA8amVyaW5qQG1h cnZlbGwuY29tPjsNCj5icnVjZS5yaWNoYXJkc29uQGludGVsLmNvbTsNCj4+ID5Ba2hpbA0KPj4g Pj4gR295YWwgPGFraGlsLmdveWFsQG54cC5jb20+OyBNYXJrbyBLb3ZhY2V2aWMNCj4+ID4+IDxt YXJrby5rb3ZhY2V2aWNAaW50ZWwuY29tPjsgT3JpIEthbSA8b3Jpa2FAbWVsbGFub3guY29tPjsN Cj4+ID5SYWR1DQo+PiA+PiBOaWNvbGF1IDxyYWR1Lm5pY29sYXVAaW50ZWwuY29tPjsgVG9tYXN6 IEthbnRlY2tpDQo+PiA+PiA8dG9tYXN6LmthbnRlY2tpQGludGVsLmNvbT47IFN1bmlsIEt1bWFy IEtvcmkNCj4+ID48c2tvcmlAbWFydmVsbC5jb20+Ow0KPj4gPj4gZGV2QGRwZGsub3JnDQo+PiA+ PiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjQgMDgvMTBdIGV4YW1wbGVzL2wyZndk LWV2ZW50Og0KPmFkZA0KPj4gPj4gZXZlbnRkZXYgbWFpbiBsb29wDQo+PiA+Pg0KPj4gPj4gT24g TW9uLCBTZXAgMzAsIDIwMTkgYXQgMTE6MDggQU0gTmlwdW4gR3VwdGENCj4+ID48bmlwdW4uZ3Vw dGFAbnhwLmNvbT4NCj4+ID4+IHdyb3RlOg0KPj4gPj4gPg0KPj4gPj4gPg0KPj4gPj4gPg0KPj4g Pj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+PiA+PiA+ID4gRnJvbTogUGF2YW4g TmlraGlsZXNoIEJoYWdhdmF0dWxhDQo+PHBiaGFnYXZhdHVsYUBtYXJ2ZWxsLmNvbT4NCj4+ID4+ ID4gPiBTZW50OiBGcmlkYXksIFNlcHRlbWJlciAyNywgMjAxOSA4OjA1IFBNDQo+PiA+PiA+ID4g VG86IE5pcHVuIEd1cHRhIDxuaXB1bi5ndXB0YUBueHAuY29tPjsgSmVyaW4gSmFjb2INCj4+ID5L b2xsYW51a2thcmFuDQo+PiA+PiA+ID4gPGplcmluakBtYXJ2ZWxsLmNvbT47IGJydWNlLnJpY2hh cmRzb25AaW50ZWwuY29tOyBBa2hpbA0KPkdveWFsDQo+PiA+PiA+ID4gPGFraGlsLmdveWFsQG54 cC5jb20+OyBNYXJrbyBLb3ZhY2V2aWMNCj4+ID48bWFya28ua292YWNldmljQGludGVsLmNvbT47 DQo+PiA+PiA+ID4gT3JpIEthbSA8b3Jpa2FAbWVsbGFub3guY29tPjsgUmFkdSBOaWNvbGF1DQo+ PiA+PHJhZHUubmljb2xhdUBpbnRlbC5jb20+Ow0KPj4gPj4gPiA+IFRvbWFzeiBLYW50ZWNraSA8 dG9tYXN6LmthbnRlY2tpQGludGVsLmNvbT47IFN1bmlsIEt1bWFyDQo+S29yaQ0KPj4gPj4gPiA+ IDxza29yaUBtYXJ2ZWxsLmNvbT4NCj4+ID4+ID4gPiBDYzogZGV2QGRwZGsub3JnDQo+PiA+PiA+ ID4gU3ViamVjdDogUkU6IFtkcGRrLWRldl0gW1BBVENIIHY0IDA4LzEwXSBleGFtcGxlcy9sMmZ3 ZC0NCj5ldmVudDoNCj4+ID5hZGQNCj4+ID4+ID4gPiBldmVudGRldiBtYWluIGxvb3ANCj4+ID4+ ID4gPg0KPj4gPj4gPiA+ID4+DQo+PiA+PiA+ID4gPj4gRnJvbTogUGF2YW4gTmlraGlsZXNoIDxw YmhhZ2F2YXR1bGFAbWFydmVsbC5jb20+DQo+PiA+PiA+ID4gPj4NCj4+ID4+ID4gPiA+PiBBZGQg ZXZlbnQgZGV2IG1haW4gbG9vcCBiYXNlZCBvbiBlbmFibGVkIGwyZndkIG9wdGlvbnMNCj5hbmQN Cj4+ID4+ID4gPiA+ZXZlbnRkZXYNCj4+ID4+ID4gPiA+PiBjYXBhYmlsaXRpZXMuDQo+PiA+PiA+ ID4gPj4NCj4+ID4+ID4gPiA+PiBTaWduZWQtb2ZmLWJ5OiBQYXZhbiBOaWtoaWxlc2gNCj48cGJo YWdhdmF0dWxhQG1hcnZlbGwuY29tPg0KPj4gPj4gPiA+ID4+IC0tLQ0KPj4gPj4gPiA+ID4NCj4+ ID4+ID4gPiA+PHNuaXA+DQo+PiA+PiA+ID4gPg0KPj4gPj4gPiA+ID4+ICsgICAgICAgICAgaWYg KGZsYWdzICYgTDJGV0RfRVZFTlRfVFhfRElSRUNUKSB7DQo+PiA+PiA+ID4gPj4gKyAgICAgICAg ICAgICAgICAgIHJ0ZV9ldmVudF9ldGhfdHhfYWRhcHRlcl90eHFfc2V0KG1idWYsIDApOw0KPj4g Pj4gPiA+ID4+ICsgICAgICAgICAgICAgICAgICB3aGlsZQ0KPj4gPj4gPiA+ID4+ICghcnRlX2V2 ZW50X2V0aF90eF9hZGFwdGVyX2VucXVldWUoZXZlbnRfZF9pZCwNCj4+ID4+ID4gPiA+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBv cnRfaWQsDQo+PiA+PiA+ID4gPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmZXYsIDEpDQo+PiA+PiA+ID4gPiYmDQo+PiA+PiA+ID4g Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKmRvbmUpDQo+PiA+PiA+ID4g Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgOw0KPj4gPj4gPiA+ID4+ICsgICAgICAgICAg fQ0KPj4gPj4gPiA+ID4NCj4+ID4+ID4gPiA+SW4gdGhlIFRYIGRpcmVjdCBtb2RlIHdlIGNhbiBz ZW5kIHBhY2tldHMgZGlyZWN0bHkgdG8gdGhlDQo+PiA+ZXRoZXJuZXQNCj4+ID4+ID4gPiA+ZGV2 aWNlIHVzaW5nIGV0aGRldg0KPj4gPj4gPiA+ID5BUEkncy4gVGhpcyB3aWxsIHNhdmUgdW5uZWNl c3NhcnkgaW5kaXJlY3Rpb25zIGFuZCBldmVudA0KPnVuZm9sZHMNCj4+ID53aXRoaW4NCj4+ID4+ ID4gPiA+dGhlIGRyaXZlci4NCj4+ID4+ID4gPg0KPj4gPj4gPiA+IEhvdyB3b3VsZCB3ZSBndWFy YW50ZWUgYXRvbWljaXR5IG9mIGFjY2VzcyB0byBUeCBxdWV1ZXM/DQo+PiA+QmV0d2Vlbg0KPj4g Pj4gY29yZXMNCj4+ID4+ID4gPiBhcyB3ZSBjYW4gb25seSB1c2Ugb25lIFR4IHF1ZXVlLg0KPj4g Pj4gPiA+IEFsc28sIGlmIFNDSEVEX1RZUEUgaXMgT1JERVJFRCBob3cgd291bGQgd2UgZ3VhcmFu dGVlIGZsb3cNCj4+ID5vcmRlcmluZz8NCj4+ID4+ID4gPiBUaGUgY2FwYWJpbGl0eSBvZiBNVF9M T0NLRlJFRSBhbmQgZmxvdyBvcmRlcmluZyBpcyBhYnN0cmFjdGVkDQo+PiA+dGhyb3VnaCBgDQo+ PiA+PiA+ID4gcnRlX2V2ZW50X2V0aF90eF9hZGFwdGVyX2VucXVldWUgYC4NCj4+ID4+ID4NCj4+ ID4+ID4gSSB1bmRlcnN0YW5kIHlvdXIgb2JqZWN0aXZlIGhlcmUuIFByb2JhYmx5IGluIHlvdXIg Y2FzZSB0aGUNCj5ESVJFQ1QNCj4+ID5pcw0KPj4gPj4gZXF1aXZhbGVudA0KPj4gPj4gPiB0byBn aXZpbmcgdGhlIHBhY2tldCB0byB0aGUgc2NoZWR1bGVyLCB3aGljaCB3aWxsIHBhc3Mgb24gdGhl DQo+cGFja2V0DQo+PiA+dG8gdGhlDQo+PiA+PiBkZXN0aW5lZCBkZXZpY2UuDQo+PiA+PiA+IE9u IE5YUCBwbGF0Zm9ybSwgRElSRUNUIGltcGxpZXMgc2VuZGluZyB0aGUgcGFja2V0IGRpcmVjdGx5 IHRvDQo+dGhlDQo+PiA+ZGV2aWNlDQo+PiA+PiAoZXRoL2NyeXB0byksDQo+PiA+PiA+IGFuZCBz Y2hlZHVsZXIgd2lsbCBpbnRlcm5hbGx5IHBpdGNoIGluLg0KPj4gPj4gPiBIZXJlIHdlIHdpbGwg bmVlZCBhbm90aGVyIG9wdGlvbiB0byBzZW5kIGl0IGRpcmVjdGx5IHRvIHRoZQ0KPmRldmljZS4N Cj4+ID4+ID4gV2UgY2FuIHNldCB1cCBhIGNhbGwgdG8gZGlzY3VzcyB0aGUgc2FtZSwgb3Igc2Vu ZCBwYXRjaCByZWdhcmRpbmcNCj50aGlzDQo+PiA+dG8geW91DQo+PiA+PiB0byBpbmNvcnBvcmF0 ZQ0KPj4gPj4gPiB0aGUgc2FtZSBpbiB5b3VyIHNlcmllcy4NCj4+ID4+DQo+PiA+PiBZZXMuIFNl bmRpbmcgdGhlIHBhdGNoIHdpbGwgbWFrZSB1cyB1bmRlcnN0YW5kIGJldHRlci4NCj4+ID4+DQo+ PiA+PiBDdXJyZW50bHksIFdlIGhhdmUgdHdvIGRpZmZlcmVudCBtZWFucyBmb3IgYWJzdHJhY3Rp bmcgVHggYWRhcHRlcg0KPj4gPmZhc3QNCj4+ID4+IHBhdGggY2hhbmdlcywNCj4+ID4+IGEpIFNJ TkdMRSBMSU5LIFFVRVVFDQo+PiA+PiBiKSBydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXJfZW5xdWV1 ZSgpDQo+PiA+Pg0KPj4gPj4gQ291bGQgeW91IHBsZWFzZSBzaGFyZSB3aHkgYW55IG9mIHRoZSBh Ym92ZSBzY2hlbWVzIGRvIG5vdA0KPndvcmsNCj4+ID5mb3IgTlhQDQo+PiA+PiBIVz8NCj4+ID4+ IElmIHRoZXJlIGlzIG5vIGFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0eSBpbg0KPj4gPj4gcnRlX2V2 ZW50X2V0aF90eF9hZGFwdGVyX2VucXVldWUoKSwgeW91IGNvdWxkDQo+PiA+PiBzaW1wbHkgY2Fs bCBkaXJlY3QgZXRoZGV2IHR4IGJ1cnN0IGZ1bmN0aW9uIHBvaW50ZXIgdG8gbWFrZQ0KPj4gPj4g YWJzdHJhY3Rpb24gIGludGFjdCB0byBhdm9pZA0KPj4gPj4gb25lIG1vcmUgY29kZSBmbG93IGlu IHRoZSBmYXN0IHBhdGguDQo+PiA+Pg0KPj4gPj4gSWYgSSBndWVzcyBpdCByaWdodCBzaW5jZSBO WFAgSFcgc3VwcG9ydHMgTVRfTE9DS0ZSRUUgYW5kIG9ubHkNCj4+ID5hdG9taWMsIGR1ZQ0KPj4g Pj4gdG8NCj4+ID4+IHRoYXQsIGNhbGxpbmcgZXRoX2Rldl90eF9idXJzdCB3aWxsIGJlIHN1ZmZp Y2llbnQuIEJ1dCBhYnN0cmFjdGluZw0KPj4gPj4gb3ZlciBydGVfZXZlbnRfZXRoX3R4X2FkYXB0 ZXJfZW5xdWV1ZSgpDQo+PiA+PiBtYWtlcyBhcHBsaWNhdGlvbiBsaWZlIGVhc3kuIFlvdSBjYW4g Y2FsbCB0aGUgbG93IGxldmVsIERQUEEyIFR4DQo+PiA+ZnVuY3Rpb24gaW4NCj4+ID4+IHJ0ZV9l dmVudF9ldGhfdHhfYWRhcHRlcl9lbnF1ZXVlKCkgdG8gYXZvaWQgYW55IHBlcmZvcm1hbmNlDQo+ PiA+PiBpbXBhY3QoV2UNCj4+ID4+IGFyZSBkb2luZyB0aGUgc2FtZSkuDQo+PiA+DQo+PiA+WWVz LCB0aGF04oCZcyBjb3JyZWN0IHJlZ2FyZGluZyBvdXIgSC9XIGNhcGFiaWxpdHkuDQo+PiA+QWdy ZWUgdGhhdCB0aGUgYXBwbGljYXRpb24gd2lsbCBiZWNvbWUgY29tcGxleCBieSBhZGRpbmcgbW9y ZQ0KPmNvZGUNCj4+ID5mbG93LA0KPj4gPmJ1dCBjYWxsaW5nIFR4IGZ1bmN0aW9ucyBpbnRlcm5h bGx5IG1heSBsZWFkIHRvIGFkZGl0aW9uYWwgQ1BVIGN5Y2xlcy4NCj4+ID5HaXZlIHVzIGEgY291 cGxlIG9mIGRheXMgdG8gYW5hbHl6ZSB0aGUgcGVyZm9ybWFuY2UgaW1wYWN0LCBhbmQgYXMNCj55 b3UNCj4+ID5hbHNvIHNheSwgSSB0b28NCj4+ID5kb24ndCB0aGluayBpdCB3b3VsZCBiZSBtdWNo LiBXZSBzaG91bGQgYmUgYWJsZSB0byBtYW5hZ2UgaXQgaW4NCj53aXRoaW4NCj4+ID5vdXIgZHJp dmVyLg0KPj4NCj4+IFdoZW4gYXBwbGljYXRpb24gY2FsbHMgcnRlX2V2ZW50X2V0aF90eF9hZGFw dGVyX3F1ZXVlX2FkZCgpDQo+YmFzZWQgb24NCj4+IHRoZSBldGhfZGV2X2lkIHRoZSB1bmRlcmx5 aW5nIGV2ZW50ZGV2aWNlIGNhbiBzZXQNCj4+IHNldCBydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXJf ZW5xdWV1ZSgpIHRvIGRpcmVjdGx5IGNhbGwgYSBmdW5jdGlvbg0KPndoaWNoDQo+PiBkb2VzIHRo ZSBwbGF0Zm9ybSBzcGVjaWZpYyBUeC4NCj4+DQo+PiBpLmUgaWYgZXRoX2RldiBpcyBuZXQvZHBh YSBhbmQgZXZlbnQgZGV2IGlzIGFsc28gbmV0L2RwYWEgd2UgbmVlZA0KPl9ub3RfIGNhbGwNCj4+ IGBydGVfZXRoX3R4X2J1cnN0KClgIGluIGAgcnRlX2V2ZW50X2V0aF90eF9hZGFwdGVyX2VucXVl dWUoKWAgaXQNCj5jYW4gZGlyZWN0bHkNCj4+IEludm9rZSB0aGUgcGxhdGZvcm0gc3BlY2lmaWMg UnggZnVuY3Rpb24gd2hpY2ggd291bGQgYXZvaWQgZnVuY3Rpb24NCj5wb2ludGVyDQo+PiBpbmRp cmVjdGlvbi4NCj4NCj5JIGhhdmUgc29tZSBwZXJmb3JtYW5jZSBjb25jZXJuIHJlZ2FyZGluZyB0 aGUgYnVyc3QgbW9kZTsgbm90IHcuci50DQo+dGhlDQo+ZnVuY3Rpb24gY2FsbCBzZXF1ZW5jZSwg YnV0IHcuci50IHRoZSBidXJzdCBmdW5jdGlvbmFsaXR5Lg0KPg0KPlRoZSBBUEkgYHJ0ZV9ldmVu dF9ldGhfdHhfYWRhcHRlcl9lbnF1ZXVlKClgIGlzIGNhbGxlZCB3aXRoIGBuYl9yeGANCj5ldmVu dHMuIEluIGNhc2Ugd2UNCj5hcmUgY2FsbGluZyB0aGUgRXRoZXJuZXQgQVBJJ3MgZGlyZWN0bHkg ZnJvbSB3aXRoaW4gdGhlIGFkYXB0ZXIsIHdlIHdpbGwNCj5zdGlsbCBuZWVkIHRvIHNlbmQNCj5h bGwgb2YgdGhlbSBzZXBhcmF0ZWx5IHRvIHRoZSBFdGhlcm5ldCBkZXZpY2UgcmF0aGVyIHRoYW4g aW4gYnVyc3QgKG9yDQo+c2NhbiBhbmQgc2VwYXJhdGUNCj50aGUgcGFja2V0cyBpbnRlcm5hbGx5 IGZvciBldGhlcm5ldCBkZXZpY2UsIHF1ZXVlIHBhaXIpLiBUaGlzIHNlcGFyYXRpb24NCj5pbiB0 aGUgZHJpdmVyIGlzDQo+bW9yZSBjb21wbGV4IHRoYW4gaW4gdGhlIGFwcGxpY2F0aW9uLCBhcyBh cHBsaWNhdGlvbiBpcyBhd2FyZSBvZiB0aGUgRXRoDQo+ZGV2IGFuZCBxdWV1ZXMNCj5pdCBpcyB1 c2luZyBhbmQgdGh1cyBjYW4gZWFzaWx5IGJpZnVyY2F0ZSB0aGUgZXZlbnRzLg0KPg0KPkkgc3Vn Z2VzdCB0byBoYXZlIGEgZmxhZyBpbiB0aGUgYHJ0ZV9ldmVudF9ldGhfdHhfYWRhcHRlcl9lbnF1 ZXVlKClgDQo+QVBJIHRvIGRldGVybWluZQ0KPmlmIHRoZSBhcHBsaWNhdGlvbiBpcyBzZW5kaW5n IGFsbCB0aGUgcGFja2V0cyBpbiBhIHBhcnRpY3VsYXIgQVBJIGNhbGwgZm9yIGENCj5zaW5nbGUg ZGVzdGluYXRpb24sDQo+c28gdGhhdCBkcml2ZXIgY2FuIGFjdCBzbWFydGx5IGFuZCBzZW5kIHRo ZSBidXJzdCB0byBFdGggVHggZnVuY3Rpb24sIG9uDQo+dGhlIGJhc2lzIG9mIGZpZWxkcw0KPnNl dCBpbiB0aGUgZmlyc3QgbWJ1Zi4NCj4NCg0KV2UgY291bGQgaGF2ZSBhIGZsYWcgZm9yIHRoZSBh Ym92ZSBidXQgdGhlIGFwcGxpY2F0aW9uIHN0aWxsIG5lZWRzIHRvIHNlZ3JlZ2F0ZSANCnBhY2tl dHMgYmFzZWQgb24gcG9ydF9pZCBhcyBgcnRlX2V2ZW50X2RlcXVldWVfYnVyc3RgIGRvZXNu4oCZ dCBndWFyYW50ZWUgDQp0aGF0IGFsbCB0aGUgcGFja2V0cyBhcnJpdmUgZnJvbSB0aGUgc2FtZSBl dGhlcm5ldCBwb3J0L3F1ZXVlLiANCg0KSSB0aGluayBzaW5jZSB0aGUgYXBwbGljYXRpb24gaXMg c2V0dGluZyBtYnVmLT5wb3J0IGFuZCANCmBydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXJfdHhxX3Nl dGAsIHRoZSBzZWdyZWdhdGlvbiBzaG91bGQgYmUgZG9uZSBhdCANCmBydGVfZXZlbnRfZXRoX3R4 X2FkYXB0ZXJfZW5xdWV1ZWAgYXMgaXQgd291bGQgYmUgdGhlIHNhbWUgbG9naWMgZm9yIGV2ZXJ5 IA0KYXBwbGljYXRpb24gYW5kIHJlZHVjZXMgYXBwbGljYXRpb24gY29tcGxleGl0eS4NCg0KUmVn YXJkcywNClBhdmFuLg0KDQo+U2VlbXMgZmluZSB0byB5b3UgZ3V5cz8gSSBwbGFuIHRvIHNlbmQg dGhlIHBhdGNoIHJlZ2FyZGluZyB0aGlzIHNvb24uDQo+DQo+UmVnYXJkcywNCj5OaXB1bg0KPg0K Pj4NCj4+ID4NCj4+ID4+DQo+PiA+Pg0KPj4gPj4gPg0KPj4gPj4gPiA+DQo+PiA+PiA+ID4gQHNl ZSBleGFtcGxlcy9ldmVudGRldl9waXBlbGluZSBhbmQgYXBwL3Rlc3QtDQo+PiA+PiBldmVudGRl di90ZXN0X3BpcGVsaW5lXyouDQo+PiA+PiA+DQo+PiA+PiA+IFllcywgd2UgYXJlIGF3YXJlIG9m IHRoYXQsIFRoZXkgYXJlIG9uZSB3YXkgb2YgcmVwcmVzZW50aW5nLA0KPmhvdw0KPj4gPnRvIGJ1 aWxkDQo+PiA+PiBhIGNvbXBsZXRlIGV2ZW50ZGV2IHBpcGVsaW5lLg0KPj4gPj4gPiBUaGV5IGRv bid0IHdvcmsgb24gTlhQIEhXLg0KPj4gPj4gPiBXZSBwbGFuIHRvIHNlbmQgcGF0Y2hlcyBmb3Ig dGhlbSB0byBmaXggdGhlbSBmb3IgTlhQIEhXIHNvb24uDQo+PiA+PiA+DQo+PiA+PiA+IFJlZ2Fy ZHMsDQo+PiA+PiA+IE5pcHVuDQo+PiA+PiA+DQo+PiA+PiA+ID4NCj4+ID4+ID4gPiA+DQo+PiA+ PiA+ID4gPj4gKw0KPj4gPj4gPiA+ID4+ICsgICAgICAgICAgaWYgKHRpbWVyX3BlcmlvZCA+IDAp DQo+PiA+PiA+ID4gPj4gKyAgICAgICAgICAgICAgICAgIF9fYXRvbWljX2ZldGNoX2FkZCgmZXZl bnRkZXZfcnNyYy0NCj4+ID4+ID4gPiA+PnN0YXRzW21idWYtDQo+PiA+PiA+ID4gPj4gPnBvcnRd LnR4LA0KPj4gPj4gPiA+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MSwgX19BVE9NSUNfUkVMQVhFRCk7DQo+PiA+PiA+ID4gPj4gKyAgfQ0KPj4gPj4gPiA+ID4+ICt9 DQo=