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 8D7BFA04F9; Fri, 10 Jan 2020 15:28:58 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B3F841EA7A; Fri, 10 Jan 2020 15:28:57 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 922B31EA19 for ; Fri, 10 Jan 2020 15:28:56 +0100 (CET) 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 00AEPtJa014905; Fri, 10 Jan 2020 06:28:55 -0800 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-id : content-transfer-encoding : mime-version; s=pfpt0818; bh=IwD0iFP4D2v+cUYnfU4ERUNZDtZxu+24ID6S/XFhXSA=; b=X0WHaTJMXVM25F8V67jDrb73yD/qd/bcmNe7Y7qWu8NgF8+lqXmR0baaJ9HMYqGX1ZWk STjWgWXe+vimPUl35AJiZROtV2L3LXqimKHBk2acR2SrMAGLFUY4d7fnj9RWEZNoi7Bu s4T5Z24Lorr6Zf06KivabcUTwTJ0PHz6jfk0YCr9bCy/eWRcerSG84VEoAm1Q5BNcswX zOyHkwLUS+iO+rCB4LKglx5s9+r+ouAIksazSYI8i+kqJBlkLryjWca32rdNDPD0zIQG ZZHELBcpFB+9HRbu1JqS76xGSvtd8v/9NWkQ891Kxz/lBrKLK9TIz/QTU4F76VOEPte/ Jg== Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0a-0016f401.pphosted.com with ESMTP id 2xeqey8pcp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 10 Jan 2020 06:28:55 -0800 Received: from SC-EXCH04.marvell.com (10.93.176.84) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 10 Jan 2020 06:28:54 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.36.58) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Fri, 10 Jan 2020 06:28:54 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jI6tHOtCFm6XlwHQiRdXAWnTl1kkxC68TL1tu4OHav5g34TJdSeSx5fJgrZPog1oikcfOrnO+SQwZn29wNyJB5d/97UcwKwHo9Z5Loy/q2xq5uNgkAJ8Q3P2e6qbIidUIwWgoSyxRpGxHYbyGzCgfwmhPKAfPYl5/W1bSQzWowVTL3IYmhJUxludmTud46iQ9rVUHAWglueAdkGCikDC34IBluUEd0cen6gRbOvzNr0v3AGdg7WzbN+EFpkY7cYUkA1HOuTGa92bpdpyswoYsDnLfnC/4NDK5NhitDVV1BXnSaIyXDjmn1Au6AU4g5q2YTOWk79Ng3j4GiuXSeS9TQ== 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=IwD0iFP4D2v+cUYnfU4ERUNZDtZxu+24ID6S/XFhXSA=; b=RpV0Vsu9xYzOq0SC9H0irH5A+xY/Xp++/2/OtUyK5Ob9jgB6BKziX0XzEd05hgn4p2ZbyNtb9sOlM0FJ/fSDPqNVlz7E1I+4VeMVxJicCqgX4CzlFeT+SCVjEleTLMHsIKVPHqw9oAXtc1CFU4VxOkMTjJiOb5UadB+zW/m87rHuiMZ5dgpLdpFAUdJWwEhHzi3ht7ZX5Z0DILiTuKApXLtAu5ntN6yi5GwOOQSd5CmBKdhVdhR4HppHKwU35LRmpouMSzg9lCRHQSsjwohYOMqUqELMdz2Gc/ZfU99PyLuW+3CaQ63gTSxf0gTkDG1emmjFOMi6RP1kGV+whknj8Q== 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=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IwD0iFP4D2v+cUYnfU4ERUNZDtZxu+24ID6S/XFhXSA=; b=d39uE8dKZps3r+zM69sw8VfizhxIf41LAV8A55YQCwElLUZ7BxaUEzwa4M6nKHJLdsyS+SbAgLbO4QsRQt/YZfOFxDvQDgdWn6TkqxbJOTJKrR9vaQ27IUP74bcohuNJd38C8HWMSDiSFNdHUX9veCid883r8OI6uB6WQYGwfkI= Received: from BYAPR18MB2599.namprd18.prod.outlook.com (20.179.92.16) by BYAPR18MB2696.namprd18.prod.outlook.com (20.179.58.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2623.9; Fri, 10 Jan 2020 14:28:51 +0000 Received: from BYAPR18MB2599.namprd18.prod.outlook.com ([fe80::4df3:88f0:2afd:622f]) by BYAPR18MB2599.namprd18.prod.outlook.com ([fe80::4df3:88f0:2afd:622f%4]) with mapi id 15.20.2602.016; Fri, 10 Jan 2020 14:28:51 +0000 From: Lukas Bartosik To: "Ananyev, Konstantin" , Anoob Joseph , Akhil Goyal , "Nicolau, Radu" , Thomas Monjalon CC: Jerin Jacob Kollanukkaran , "Narayana Prasad Raju Athreya" , Ankur Dwivedi , "Archana Muniganti" , Tejasree Kondoj , Vamsi Krishna Attunuru , "dev@dpdk.org" Thread-Topic: [EXT] RE: [PATCH 11/14] examples/ipsec-secgw: add app processing code Thread-Index: AQHVrcOHcEZrFcDSH06C7TNvX9KKB6fIBmYAgBwinQA= Date: Fri, 10 Jan 2020 14:28:51 +0000 Message-ID: <9e8e5e97-0b75-61de-0493-5f4c1509fe7a@marvell.com> References: <1575808249-31135-1-git-send-email-anoobj@marvell.com> <1575808249-31135-12-git-send-email-anoobj@marvell.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [199.233.58.37] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d463d3e8-5099-44f6-539c-08d795d96a0f x-ms-traffictypediagnostic: BYAPR18MB2696: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2150; x-forefront-prvs: 02788FF38E x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(136003)(39840400004)(396003)(376002)(346002)(366004)(189003)(199004)(8936002)(6486002)(81166006)(81156014)(8676002)(2906002)(4326008)(86362001)(31696002)(6512007)(64756008)(66946007)(66476007)(66446008)(76116006)(66556008)(53546011)(6506007)(26005)(186003)(478600001)(54906003)(71200400001)(110136005)(5660300002)(36756003)(31686004)(2616005)(316002); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2696; H:BYAPR18MB2599.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: CpktWZIuUIlW9maUx4mGBkHBAaQF9q0BcAzTCyKyCABq6LEAVAJOtva2tW3C5rOJiKF41083oDEGYOJ7USksItePGmPHhjKfs0co1/vVjKMpZta8pxi1WEOauUjIW3w+XHiOKKVnlxLO9/Ac2V5pfD8Gq8CQ6dzRYewvgXwoXIh6LCxpud3L+3Izs00HOlHDz9jSAwEkwegfk9ODMUHWJnp1yM6OXtJaJ4v/5dhUAZsx19lQDegdcjJ8KkuM4Cn9Q0yOFB5atHtg2+OoBjqjT4clL1925aN4t/XhVidM/P15BYlYsz7/cmfYTldA3DdfOjxgZ7ZEYe/G6Is25TiwoSp0qhHPiGtUxcdIh43N1h6OGp+oRbeqqhtDnJccEK133CfK0BNFiu8XaOV6ffF9cwe29htILq0pa4tnEBoIow0WQV1wFavkj3aQFFlYLFrR Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: d463d3e8-5099-44f6-539c-08d795d96a0f X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jan 2020 14:28:51.2727 (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: 5s0rorlxXBCYxJ4z1JiyNs2PwTdPn5O55i9XVXoAMT+5jm7TZmhws8/jbPoLJ/h5Xjo4hq+wJLOqS62JASZPzQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2696 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-01-10_01:2020-01-10, 2020-01-09 signatures=0 Subject: Re: [dpdk-dev] [EXT] RE: [PATCH 11/14] examples/ipsec-secgw: add app processing code 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" SGkgS29uc3RhbnRpbiwNCg0KUGxlYXNlIHNlZSBpbmxpbmUuDQoNClRoYW5rcywNCkx1a2Fzeg0K DQpPbiAyMy4xMi4yMDE5IDE3OjQ5LCBBbmFueWV2LCBLb25zdGFudGluIHdyb3RlOg0KPiBFeHRl cm5hbCBFbWFpbA0KPiANCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiANCj4gDQo+Pg0KPj4gQWRkIElQc2Vj IGFwcGxpY2F0aW9uIHByb2Nlc3NpbmcgY29kZSBmb3IgZXZlbnQgbW9kZS4NCj4+DQo+PiBTaWdu ZWQtb2ZmLWJ5OiBBbm9vYiBKb3NlcGggPGFub29iakBtYXJ2ZWxsLmNvbT4NCj4+IFNpZ25lZC1v ZmYtYnk6IEx1a2FzeiBCYXJ0b3NpayA8bGJhcnRvc2lrQG1hcnZlbGwuY29tPg0KPj4gLS0tDQo+ PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMtc2VjZ3cuYyAgfCAxMjQgKysrKysrLS0tLS0t LS0tLS0tDQo+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMtc2VjZ3cuaCAgfCAgODEgKysr KysrKysrKysrDQo+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuaCAgICAgICAgfCAgMzcg KysrLS0tDQo+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWNfd29ya2VyLmMgfCAyNDIgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tDQo+PiAgZXhhbXBsZXMvaXBzZWMtc2Vj Z3cvaXBzZWNfd29ya2VyLmggfCAgMzkgKysrKysrDQo+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cv c2EuYyAgICAgICAgICAgfCAgMTEgLS0NCj4+ICA2IGZpbGVzIGNoYW5nZWQsIDQwOSBpbnNlcnRp b25zKCspLCAxMjUgZGVsZXRpb25zKC0pDQo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGV4YW1wbGVz L2lwc2VjLXNlY2d3L2lwc2VjLXNlY2d3LmgNCj4+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZXhhbXBs ZXMvaXBzZWMtc2VjZ3cvaXBzZWNfd29ya2VyLmgNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvZXhhbXBs ZXMvaXBzZWMtc2VjZ3cvaXBzZWMtc2VjZ3cuYyBiL2V4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2Vj LXNlY2d3LmMNCj4+IGluZGV4IGM1ZDk1YjkuLjJlN2Q0ZDggMTAwNjQ0DQo+PiAtLS0gYS9leGFt cGxlcy9pcHNlYy1zZWNndy9pcHNlYy1zZWNndy5jDQo+PiArKysgYi9leGFtcGxlcy9pcHNlYy1z ZWNndy9pcHNlYy1zZWNndy5jDQo+PiBAQCAtNTAsMTIgKzUwLDExIEBADQo+Pg0KPj4gICNpbmNs dWRlICJldmVudF9oZWxwZXIuaCINCj4+ICAjaW5jbHVkZSAiaXBzZWMuaCINCj4+ICsjaW5jbHVk ZSAiaXBzZWNfd29ya2VyLmgiDQo+PiAgI2luY2x1ZGUgInBhcnNlci5oIg0KPj4NCj4+ICB2b2xh dGlsZSBib29sIGZvcmNlX3F1aXQ7DQo+Pg0KPj4gLSNkZWZpbmUgUlRFX0xPR1RZUEVfSVBTRUMg UlRFX0xPR1RZUEVfVVNFUjENCj4+IC0NCj4+ICAjZGVmaW5lIE1BWF9KVU1CT19QS1RfTEVOICA5 NjAwDQo+Pg0KPj4gICNkZWZpbmUgTUVNUE9PTF9DQUNIRV9TSVpFIDI1Ng0KPj4gQEAgLTcwLDgg KzY5LDYgQEAgdm9sYXRpbGUgYm9vbCBmb3JjZV9xdWl0Ow0KPj4NCj4+ICAjZGVmaW5lIEJVUlNU X1RYX0RSQUlOX1VTIDEwMCAvKiBUWCBkcmFpbiBldmVyeSB+MTAwdXMgKi8NCj4+DQo+PiAtI2Rl ZmluZSBOQl9TT0NLRVRTIDQNCj4+IC0NCj4+ICAvKiBDb25maWd1cmUgaG93IG1hbnkgcGFja2V0 cyBhaGVhZCB0byBwcmVmZXRjaCwgd2hlbiByZWFkaW5nIHBhY2tldHMgKi8NCj4+ICAjZGVmaW5l IFBSRUZFVENIX09GRlNFVAkzDQo+Pg0KPj4gQEAgLTc5LDggKzc2LDYgQEAgdm9sYXRpbGUgYm9v bCBmb3JjZV9xdWl0Ow0KPj4NCj4+ICAjZGVmaW5lIE1BWF9MQ09SRV9QQVJBTVMgMTAyNA0KPj4N Cj4+IC0jZGVmaW5lIFVOUFJPVEVDVEVEX1BPUlQocG9ydCkgKHVucHJvdGVjdGVkX3BvcnRfbWFz ayAmICgxIDw8IHBvcnRpZCkpDQo+PiAtDQo+PiAgLyoNCj4+ICAgKiBDb25maWd1cmFibGUgbnVt YmVyIG9mIFJYL1RYIHJpbmcgZGVzY3JpcHRvcnMNCj4+ICAgKi8NCj4+IEBAIC04OSwyOSArODQs NiBAQCB2b2xhdGlsZSBib29sIGZvcmNlX3F1aXQ7DQo+PiAgc3RhdGljIHVpbnQxNl90IG5iX3J4 ZCA9IElQU0VDX1NFQ0dXX1JYX0RFU0NfREVGQVVMVDsNCj4+ICBzdGF0aWMgdWludDE2X3QgbmJf dHhkID0gSVBTRUNfU0VDR1dfVFhfREVTQ19ERUZBVUxUOw0KPj4NCj4+IC0jaWYgUlRFX0JZVEVf T1JERVIgIT0gUlRFX0xJVFRMRV9FTkRJQU4NCj4+IC0jZGVmaW5lIF9fQllURVNfVE9fVUlOVDY0 KGEsIGIsIGMsIGQsIGUsIGYsIGcsIGgpIFwNCj4+IC0JKCgodWludDY0X3QpKChhKSAmIDB4ZmYp IDw8IDU2KSB8IFwNCj4+IC0JKCh1aW50NjRfdCkoKGIpICYgMHhmZikgPDwgNDgpIHwgXA0KPj4g LQkoKHVpbnQ2NF90KSgoYykgJiAweGZmKSA8PCA0MCkgfCBcDQo+PiAtCSgodWludDY0X3QpKChk KSAmIDB4ZmYpIDw8IDMyKSB8IFwNCj4+IC0JKCh1aW50NjRfdCkoKGUpICYgMHhmZikgPDwgMjQp IHwgXA0KPj4gLQkoKHVpbnQ2NF90KSgoZikgJiAweGZmKSA8PCAxNikgfCBcDQo+PiAtCSgodWlu dDY0X3QpKChnKSAmIDB4ZmYpIDw8IDgpICB8IFwNCj4+IC0JKCh1aW50NjRfdCkoaCkgJiAweGZm KSkNCj4+IC0jZWxzZQ0KPj4gLSNkZWZpbmUgX19CWVRFU19UT19VSU5UNjQoYSwgYiwgYywgZCwg ZSwgZiwgZywgaCkgXA0KPj4gLQkoKCh1aW50NjRfdCkoKGgpICYgMHhmZikgPDwgNTYpIHwgXA0K Pj4gLQkoKHVpbnQ2NF90KSgoZykgJiAweGZmKSA8PCA0OCkgfCBcDQo+PiAtCSgodWludDY0X3Qp KChmKSAmIDB4ZmYpIDw8IDQwKSB8IFwNCj4+IC0JKCh1aW50NjRfdCkoKGUpICYgMHhmZikgPDwg MzIpIHwgXA0KPj4gLQkoKHVpbnQ2NF90KSgoZCkgJiAweGZmKSA8PCAyNCkgfCBcDQo+PiAtCSgo dWludDY0X3QpKChjKSAmIDB4ZmYpIDw8IDE2KSB8IFwNCj4+IC0JKCh1aW50NjRfdCkoKGIpICYg MHhmZikgPDwgOCkgfCBcDQo+PiAtCSgodWludDY0X3QpKGEpICYgMHhmZikpDQo+PiAtI2VuZGlm DQo+PiAtI2RlZmluZSBFVEhBRERSKGEsIGIsIGMsIGQsIGUsIGYpIChfX0JZVEVTX1RPX1VJTlQ2 NChhLCBiLCBjLCBkLCBlLCBmLCAwLCAwKSkNCj4+IC0NCj4+ICAjZGVmaW5lIEVUSEFERFJfVE9f VUlOVDY0KGFkZHIpIF9fQllURVNfVE9fVUlOVDY0KCBcDQo+PiAgCQkoYWRkciktPmFkZHJfYnl0 ZXNbMF0sIChhZGRyKS0+YWRkcl9ieXRlc1sxXSwgXA0KPj4gIAkJKGFkZHIpLT5hZGRyX2J5dGVz WzJdLCAoYWRkciktPmFkZHJfYnl0ZXNbM10sIFwNCj4+IEBAIC0xMjMsMTggKzk1LDYgQEAgc3Rh dGljIHVpbnQxNl90IG5iX3R4ZCA9IElQU0VDX1NFQ0dXX1RYX0RFU0NfREVGQVVMVDsNCj4+DQo+ PiAgI2RlZmluZSBNVFVfVE9fRlJBTUVMRU4oeCkJKCh4KSArIFJURV9FVEhFUl9IRFJfTEVOICsg UlRFX0VUSEVSX0NSQ19MRU4pDQo+Pg0KPj4gLS8qIHBvcnQvc291cmNlIGV0aGVybmV0IGFkZHIg YW5kIGRlc3RpbmF0aW9uIGV0aGVybmV0IGFkZHIgKi8NCj4+IC1zdHJ1Y3QgZXRoYWRkcl9pbmZv IHsNCj4+IC0JdWludDY0X3Qgc3JjLCBkc3Q7DQo+PiAtfTsNCj4+IC0NCj4+IC1zdHJ1Y3QgZXRo YWRkcl9pbmZvIGV0aGFkZHJfdGJsW1JURV9NQVhfRVRIUE9SVFNdID0gew0KPj4gLQl7IDAsIEVU SEFERFIoMHgwMCwgMHgxNiwgMHgzZSwgMHg3ZSwgMHg5NCwgMHg5YSkgfSwNCj4+IC0JeyAwLCBF VEhBRERSKDB4MDAsIDB4MTYsIDB4M2UsIDB4MjIsIDB4YTEsIDB4ZDkpIH0sDQo+PiAtCXsgMCwg RVRIQUREUigweDAwLCAweDE2LCAweDNlLCAweDA4LCAweDY5LCAweDI2KSB9LA0KPj4gLQl7IDAs IEVUSEFERFIoMHgwMCwgMHgxNiwgMHgzZSwgMHg0OSwgMHg5ZSwgMHhkZCkgfQ0KPj4gLX07DQo+ PiAtDQo+PiAgc3RydWN0IGZsb3dfaW5mbyBmbG93X2luZm9fdGJsW1JURV9NQVhfRVRIUE9SVFNd Ow0KPj4NCj4+ICAjZGVmaW5lIENNRF9MSU5FX09QVF9DT05GSUcJCSJjb25maWciDQo+PiBAQCAt MTkyLDEwICsxNTIsMTYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvcHRpb24gbGdvcHRzW10gPSB7 DQo+PiAgCXtOVUxMLCAwLCAwLCAwfQ0KPj4gIH07DQo+Pg0KPj4gK3N0cnVjdCBldGhhZGRyX2lu Zm8gZXRoYWRkcl90YmxbUlRFX01BWF9FVEhQT1JUU10gPSB7DQo+PiArCXsgMCwgRVRIQUREUigw eDAwLCAweDE2LCAweDNlLCAweDdlLCAweDk0LCAweDlhKSB9LA0KPj4gKwl7IDAsIEVUSEFERFIo MHgwMCwgMHgxNiwgMHgzZSwgMHgyMiwgMHhhMSwgMHhkOSkgfSwNCj4+ICsJeyAwLCBFVEhBRERS KDB4MDAsIDB4MTYsIDB4M2UsIDB4MDgsIDB4NjksIDB4MjYpIH0sDQo+PiArCXsgMCwgRVRIQURE UigweDAwLCAweDE2LCAweDNlLCAweDQ5LCAweDllLCAweGRkKSB9DQo+PiArfTsNCj4+ICsNCj4+ ICAvKiBtYXNrIG9mIGVuYWJsZWQgcG9ydHMgKi8NCj4+ICBzdGF0aWMgdWludDMyX3QgZW5hYmxl ZF9wb3J0X21hc2s7DQo+PiAgc3RhdGljIHVpbnQ2NF90IGVuYWJsZWRfY3J5cHRvZGV2X21hc2sg PSBVSU5UNjRfTUFYOw0KPj4gLXN0YXRpYyB1aW50MzJfdCB1bnByb3RlY3RlZF9wb3J0X21hc2s7 DQo+PiAgc3RhdGljIGludDMyX3QgcHJvbWlzY3VvdXNfb24gPSAxOw0KPj4gIHN0YXRpYyBpbnQz Ml90IG51bWFfb24gPSAxOyAvKio8IE5VTUEgaXMgZW5hYmxlZCBieSBkZWZhdWx0LiAqLw0KPj4g IHN0YXRpYyB1aW50MzJfdCBuYl9sY29yZXM7DQo+PiBAQCAtMjgzLDggKzI0OSw2IEBAIHN0YXRp YyBzdHJ1Y3QgcnRlX2V0aF9jb25mIHBvcnRfY29uZiA9IHsNCj4+ICAJfSwNCj4+ICB9Ow0KPj4N Cj4+IC1zdGF0aWMgc3RydWN0IHNvY2tldF9jdHggc29ja2V0X2N0eFtOQl9TT0NLRVRTXTsNCj4+ IC0NCj4+ICAvKg0KPj4gICAqIERldGVybWluZSBpcyBtdWx0aS1zZWdtZW50IHN1cHBvcnQgcmVx dWlyZWQ6DQo+PiAgICogIC0gZWl0aGVyIGZyYW1lIGJ1ZmZlciBzaXplIGlzIHNtYWxsZXIgdGhl biBtdHUNCj4+IEBAIC0yODI4LDQ3ICsyNzkyLDEwIEBAIG1haW4oaW50MzJfdCBhcmdjLCBjaGFy ICoqYXJndikNCj4+DQo+PiAgCQlzYV9jaGVja19vZmZsb2Fkcyhwb3J0aWQsICZyZXFfcnhfb2Zm bG9hZHMsICZyZXFfdHhfb2ZmbG9hZHMpOw0KPj4gIAkJcG9ydF9pbml0KHBvcnRpZCwgcmVxX3J4 X29mZmxvYWRzLCByZXFfdHhfb2ZmbG9hZHMpOw0KPj4gLQkJLyogQ3JlYXRlIGRlZmF1bHQgaXBz ZWMgZmxvdyBmb3IgdGhlIGV0aGVybmV0IGRldmljZSAqLw0KPj4gLQkJcmV0ID0gY3JlYXRlX2Rl ZmF1bHRfaXBzZWNfZmxvdyhwb3J0aWQsIHJlcV9yeF9vZmZsb2Fkcyk7DQo+PiAtCQlpZiAocmV0 KQ0KPj4gLQkJCXByaW50ZigiQ2Fubm90IGNyZWF0ZSBkZWZhdWx0IGZsb3csIGVycj0lZCwgcG9y dD0lZFxuIiwNCj4+IC0JCQkJCXJldCwgcG9ydGlkKTsNCj4+ICAJfQ0KPj4NCj4+ICAJY3J5cHRv ZGV2c19pbml0KCk7DQo+Pg0KPj4gLQkvKiBzdGFydCBwb3J0cyAqLw0KPj4gLQlSVEVfRVRIX0ZP UkVBQ0hfREVWKHBvcnRpZCkgew0KPj4gLQkJaWYgKChlbmFibGVkX3BvcnRfbWFzayAmICgxIDw8 IHBvcnRpZCkpID09IDApDQo+PiAtCQkJY29udGludWU7DQo+PiAtDQo+PiAtCQkvKg0KPj4gLQkJ ICogU3RhcnQgZGV2aWNlDQo+PiAtCQkgKiBub3RlOiBkZXZpY2UgbXVzdCBiZSBzdGFydGVkIGJl Zm9yZSBhIGZsb3cgcnVsZQ0KPj4gLQkJICogY2FuIGJlIGluc3RhbGxlZC4NCj4+IC0JCSAqLw0K Pj4gLQkJcmV0ID0gcnRlX2V0aF9kZXZfc3RhcnQocG9ydGlkKTsNCj4+IC0JCWlmIChyZXQgPCAw KQ0KPj4gLQkJCXJ0ZV9leGl0KEVYSVRfRkFJTFVSRSwgInJ0ZV9ldGhfZGV2X3N0YXJ0OiAiDQo+ PiAtCQkJCQkiZXJyPSVkLCBwb3J0PSVkXG4iLCByZXQsIHBvcnRpZCk7DQo+PiAtCQkvKg0KPj4g LQkJICogSWYgZW5hYmxlZCwgcHV0IGRldmljZSBpbiBwcm9taXNjdW91cyBtb2RlLg0KPj4gLQkJ ICogVGhpcyBhbGxvd3MgSU8gZm9yd2FyZGluZyBtb2RlIHRvIGZvcndhcmQgcGFja2V0cw0KPj4g LQkJICogdG8gaXRzZWxmIHRocm91Z2ggMiBjcm9zcy1jb25uZWN0ZWQgIHBvcnRzIG9mIHRoZQ0K Pj4gLQkJICogdGFyZ2V0IG1hY2hpbmUuDQo+PiAtCQkgKi8NCj4+IC0JCWlmIChwcm9taXNjdW91 c19vbikgew0KPj4gLQkJCXJldCA9IHJ0ZV9ldGhfcHJvbWlzY3VvdXNfZW5hYmxlKHBvcnRpZCk7 DQo+PiAtCQkJaWYgKHJldCAhPSAwKQ0KPj4gLQkJCQlydGVfZXhpdChFWElUX0ZBSUxVUkUsDQo+ PiAtCQkJCQkicnRlX2V0aF9wcm9taXNjdW91c19lbmFibGU6IGVycj0lcywgcG9ydD0lZFxuIiwN Cj4+IC0JCQkJCXJ0ZV9zdHJlcnJvcigtcmV0KSwgcG9ydGlkKTsNCj4+IC0JCX0NCj4+IC0NCj4+ IC0JCXJ0ZV9ldGhfZGV2X2NhbGxiYWNrX3JlZ2lzdGVyKHBvcnRpZCwNCj4+IC0JCQlSVEVfRVRI X0VWRU5UX0lQU0VDLCBpbmxpbmVfaXBzZWNfZXZlbnRfY2FsbGJhY2ssIE5VTEwpOw0KPj4gLQl9 DQo+PiAtDQo+PiAgCS8qIGZyYWdtZW50IHJlYXNzZW1ibGUgaXMgZW5hYmxlZCAqLw0KPj4gIAlp ZiAoZnJhZ190Ymxfc3ogIT0gMCkgew0KPj4gIAkJcmV0ID0gcmVhc3NlbWJsZV9pbml0KCk7DQo+ PiBAQCAtMjg4OSw4ICsyODE2LDYgQEAgbWFpbihpbnQzMl90IGFyZ2MsIGNoYXIgKiphcmd2KQ0K Pj4gIAkJfQ0KPj4gIAl9DQo+Pg0KPj4gLQljaGVja19hbGxfcG9ydHNfbGlua19zdGF0dXMoZW5h YmxlZF9wb3J0X21hc2spOw0KPj4gLQ0KPj4gIAkvKg0KPj4gIAkgKiBTZXQgdGhlIGVuYWJsZWQg cG9ydCBtYXNrIGluIGhlbHBlciBjb25maWcgZm9yIHVzZSBieSBoZWxwZXINCj4+ICAJICogc3Vi LXN5c3RlbS4gVGhpcyB3aWxsIGJlIHVzZWQgd2hpbGUgaW50aWFsaXppbmcgZGV2aWNlcyB1c2lu Zw0KPj4gQEAgLTI5MDMsNiArMjgyOCwzOSBAQCBtYWluKGludDMyX3QgYXJnYywgY2hhciAqKmFy Z3YpDQo+PiAgCWlmIChyZXQgPCAwKQ0KPj4gIAkJcnRlX2V4aXQoRVhJVF9GQUlMVVJFLCAiZWhf ZGV2c19pbml0IGZhaWxlZCwgZXJyPSVkXG4iLCByZXQpOw0KPj4NCj4+ICsJLyogQ3JlYXRlIGRl ZmF1bHQgaXBzZWMgZmxvdyBmb3IgZWFjaCBwb3J0IGFuZCBzdGFydCBlYWNoIHBvcnQgKi8NCj4+ ICsJUlRFX0VUSF9GT1JFQUNIX0RFVihwb3J0aWQpIHsNCj4+ICsJCWlmICgoZW5hYmxlZF9wb3J0 X21hc2sgJiAoMSA8PCBwb3J0aWQpKSA9PSAwKQ0KPj4gKwkJCWNvbnRpbnVlOw0KPj4gKw0KPj4g KwkJcmV0ID0gY3JlYXRlX2RlZmF1bHRfaXBzZWNfZmxvdyhwb3J0aWQsIHJlcV9yeF9vZmZsb2Fk cyk7DQo+IA0KPiBUaGF0IGRvZXNuJ3QgbG9vayByaWdodC4NCj4gRm9yIG1vcmUgdGhhbiBvbmUg ZXRoIHBvcnQgaW4gdGhlIHN5c3RlbSwgcmVxX3J4X29mZmxvYWRzIHdpbGwgYmUgb3ZlcndyaXR0 ZW4gYnkgdGhhdCBtb21lbnQuDQoNCltMdWthc3pdIFlvdSdyZSByaWdodC4gSSB3aWxsIGZpeCBp dCBpbiB2Mi4NCg0KPiANCj4+ICsJCWlmIChyZXQpDQo+PiArCQkJcHJpbnRmKCJjcmVhdGVfZGVm YXVsdF9pcHNlY19mbG93IGZhaWxlZCwgZXJyPSVkLCAiDQo+PiArCQkJICAgICAgICJwb3J0PSVk XG4iLCByZXQsIHBvcnRpZCk7DQo+PiArCQkvKg0KPj4gKwkJICogU3RhcnQgZGV2aWNlDQo+PiAr CQkgKiBub3RlOiBkZXZpY2UgbXVzdCBiZSBzdGFydGVkIGJlZm9yZSBhIGZsb3cgcnVsZQ0KPj4g KwkJICogY2FuIGJlIGluc3RhbGxlZC4NCj4+ICsJCSAqLw0KPj4gKwkJcmV0ID0gcnRlX2V0aF9k ZXZfc3RhcnQocG9ydGlkKTsNCj4gDQo+IE1vdmluZyB0aGF0IHBpZWNlIG9mIGNvZGUgKGRldl9z dGFydCkgYWZ0ZXIgc2FfaW5pdCgpIGJyZWFrcyBpeGdiZSBpbmxpbmUtY3J5cHRvIHN1cHBvcnQu DQo+IEFzIEkgdW5kZXJzdGFuZCwgYmVjYXVzZSBjb25maWd1cmVkIGlwc2VjIGZsb3dzIGRvbid0 IHBlcnNpc3QgZGV2X3N0YXJ0KCkuDQo+IEF0IGxlYXN0IGZvciBpeGdiZSBQTUQuDQo+IEFueSBy ZWFzb24gd2h5IHRvIG1vdmUgdGhhdCBjb2RlIGF0IGFsbD8NCg0KW0x1a2Fzel0gV2UgbW92ZWQg c3RhcnRpbmcgZXRoIHBvcnQgYWZ0ZXIgY3JlYXRpb24gb2YgZGVmYXVsdCBpcHNlYyBmbG93IGlu IG9yZGVyIHRvIHN0b3AgcGFja2V0cyBmcm9tIHRlbXBvcmFyeSBvbWl0dGluZyBpbmxpbmUgKGFm dGVyIGV0aCBwb3J0IGlzIHN0YXJ0ZWQgYnV0IGJlZm9yZSBmbG93IGlzIGNyZWF0ZWQpDQouIFRo aXMgaGFwcGVucyBpZiB0cmFmZmljIGlzIGZsb3dpbmcgYW5kIGlwc2VjLXNlY2d3IGFwcCBpcyBz dGFydGVkLiANCkhvd2V2ZXIgbW92aW5nIGV0aF9kZXZfc3RhcnQgYWZ0ZXIgc2FfaW5pdCBpcyBu b3QgbmVjZXNzYXJ5LiBJIHdpbGwgcmV2ZXJ0IHRoaXMgY2hhbmdlIHRvIHN0YXJ0IGV0aCBwb3J0 cyBiZWZvcmUgc2FfaW5pdC4NCg0KPj4gKwkJaWYgKHJldCA8IDApDQo+PiArCQkJcnRlX2V4aXQo RVhJVF9GQUlMVVJFLCAicnRlX2V0aF9kZXZfc3RhcnQ6ICINCj4+ICsJCQkJCSJlcnI9JWQsIHBv cnQ9JWRcbiIsIHJldCwgcG9ydGlkKTsNCj4+ICsJCS8qDQo+PiArCQkgKiBJZiBlbmFibGVkLCBw dXQgZGV2aWNlIGluIHByb21pc2N1b3VzIG1vZGUuDQo+PiArCQkgKiBUaGlzIGFsbG93cyBJTyBm b3J3YXJkaW5nIG1vZGUgdG8gZm9yd2FyZCBwYWNrZXRzDQo+PiArCQkgKiB0byBpdHNlbGYgdGhy b3VnaCAyIGNyb3NzLWNvbm5lY3RlZCAgcG9ydHMgb2YgdGhlDQo+PiArCQkgKiB0YXJnZXQgbWFj aGluZS4NCj4+ICsJCSAqLw0KPj4gKwkJaWYgKHByb21pc2N1b3VzX29uKQ0KPj4gKwkJCXJ0ZV9l dGhfcHJvbWlzY3VvdXNfZW5hYmxlKHBvcnRpZCk7DQo+PiArDQo+PiArCQlydGVfZXRoX2Rldl9j YWxsYmFja19yZWdpc3Rlcihwb3J0aWQsDQo+PiArCQkJUlRFX0VUSF9FVkVOVF9JUFNFQywgaW5s aW5lX2lwc2VjX2V2ZW50X2NhbGxiYWNrLCBOVUxMKTsNCj4+ICsJfQ0KPj4gKw0KPj4gKwljaGVj a19hbGxfcG9ydHNfbGlua19zdGF0dXMoZW5hYmxlZF9wb3J0X21hc2spOw0KPj4gKw0KPj4gIAkv KiBsYXVuY2ggcGVyLWxjb3JlIGluaXQgb24gZXZlcnkgbGNvcmUgKi8NCj4+ICAJcnRlX2VhbF9t cF9yZW1vdGVfbGF1bmNoKGlwc2VjX2xhdW5jaF9vbmVfbGNvcmUsIGVoX2NvbmYsIENBTExfTUFT VEVSKTsNCj4+