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 9888BA00BE; Tue, 29 Oct 2019 09:33:57 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 65EB51BECC; Tue, 29 Oct 2019 09:33:57 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 838ED1BEC0 for ; Tue, 29 Oct 2019 09:33:55 +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 x9T8UI1q030277; Tue, 29 Oct 2019 01:33:54 -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=hsceExyexY3OtWwqO8IrT2C1Fjhrjhu0/wHqf+Xtyl8=; b=WywhM4Ar4BpQxqJLvnteLkwrE8YqhMmcxs/LU9PdCk+78ylt6Sv5vULd+zvbzf4eV9vk 6noHretHlBnDb3KuK1+g49cy08ZB6e3j42veulFVTV+NEpp9P/irLknhuny+NFxnGUHS J7Ycj0SEPPWsyR8YpyMPmXKO6Hl9JLv+i6ERm4HfiJO5f7j7DNplH/GtDIYtBbBX2Iks JtqKAMgxy5KONBua1YWM/GQFxtV7AyawzwQzR99WKOHlx/3ZRw6INbFWHwAV88pXnTfa 9ZXkVr4XxYL+XyN2mMDBqLxpdXiAO2SxhFDdM5x1EJgEwyViaA4EgktlbAzkcHlB9wcH FQ== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0a-0016f401.pphosted.com with ESMTP id 2vvkgq99yn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Tue, 29 Oct 2019 01:33:54 -0700 Received: from SC-EXCH04.marvell.com (10.93.176.84) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Tue, 29 Oct 2019 01:33:53 -0700 Received: from NAM05-CO1-obe.outbound.protection.outlook.com (104.47.48.57) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Tue, 29 Oct 2019 01:33:53 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nCTxEuA/oiHbPPjFkQ9TbQMeixMEV37D5nM+0PgDo2IGcWi24JT62IewM8WMBACn+RbVmPjmMBmJOZH1HLrXfI4Irqddn9jS2d14y9+nA5QRRlhmsyZ5WSSIgrRRU+ZncaBRfKQ9F3rpLmZiffLOb1jXpwSxhQUyksiUX92vVR72RMA8c0FbiSA9uUvGME+HlmLFOnRWLXYGbbDlRXBOjXYX5q28QJsdd78ELqCkxWHb0OlNOLXXgUqoj7Nla3O50zGT5WTJODWxDJ2XcIsltHK00yuAcrDgGzEnoHeijOKGS+fllRK1s3f+ReAqbY4JWenAHP1206/jVrSosOZ2QQ== 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=hsceExyexY3OtWwqO8IrT2C1Fjhrjhu0/wHqf+Xtyl8=; b=HrU7J6vpin0LJKvIB/zpaC+Fru5Id764NbWw6iFRVR38avkqCTUYK4wJUzyE82h/rb3/n4wULhwiECFPZ5dVtu0X62IjIBCXo+L/s21l1zAql5Kqxje34yNdKCf7mZhPaegnKhmMdMAQ9J+nv1RaOIYSTnxw+RKQNyRL8B5moEB2uFq/iqWdFIQ69rwKXEpfLzx1+GlqmuGhi1wG7KlCwxkfO4miA6EZVr1N+pUgVwVm81zrF3OH5f72PrAhzhOipthQTTInDLBX0yNcKlopPBXaRocHFRI/um3pzDh4c8pS7boHSeiwkpRuUISHgp+t5UUMG4MIx0Vn26cH546XOg== 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=hsceExyexY3OtWwqO8IrT2C1Fjhrjhu0/wHqf+Xtyl8=; b=hje8HqGRLO7QOQg1yjUFY8M/eu8utD0hxcEapXo+xTAtqOPDBNEb22e24sXQtce44wHF3Sp8YwPmnQrqAtPLn8WzLq3Y/fYjbkRZeeNPfP8GdoLx+wy/ZgtvaDnna/sf6EjSXV5ZB8WpwvxVEmgjhqF5nTRaxdSiQMbQItq1G8A= Received: from CY4PR1801MB1863.namprd18.prod.outlook.com (10.171.255.160) by CY4PR1801MB1846.namprd18.prod.outlook.com (10.171.254.29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2387.24; Tue, 29 Oct 2019 08:33:50 +0000 Received: from CY4PR1801MB1863.namprd18.prod.outlook.com ([fe80::d918:c54e:c3b1:3167]) by CY4PR1801MB1863.namprd18.prod.outlook.com ([fe80::d918:c54e:c3b1:3167%7]) with mapi id 15.20.2387.027; Tue, 29 Oct 2019 08:33:50 +0000 From: Pavan Nikhilesh Bhagavatula To: Andrew Rybchenko , "ferruh.yigit@intel.com" , Jerin Jacob Kollanukkaran , Thomas Monjalon CC: "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v14 3/7] ethdev: log offloads that can't be disabled by PMD Thread-Index: AQHVjhY0LXCVLuDFBUqW9Bj8C57DE6dxMnQAgAAXnfA= Date: Tue, 29 Oct 2019 08:33:50 +0000 Message-ID: References: <20191025143314.11162-1-pbhagavatula@marvell.com> <20191029050312.2715-1-pbhagavatula@marvell.com> <20191029050312.2715-4-pbhagavatula@marvell.com> <0775aa6b-cb16-0efe-bace-9a080ecfcabe@solarflare.com> In-Reply-To: <0775aa6b-cb16-0efe-bace-9a080ecfcabe@solarflare.com> 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: 2c7d2719-05ab-4a42-0978-08d75c4ab97e x-ms-traffictypediagnostic: CY4PR1801MB1846: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5236; x-forefront-prvs: 0205EDCD76 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(396003)(366004)(376002)(136003)(39850400004)(346002)(199004)(13464003)(189003)(51444003)(51914003)(486006)(446003)(11346002)(86362001)(66556008)(66946007)(66446008)(64756008)(66066001)(229853002)(4326008)(5660300002)(66476007)(52536014)(76116006)(99286004)(7696005)(76176011)(55236004)(102836004)(6506007)(14444005)(71190400001)(256004)(476003)(7736002)(74316002)(2501003)(8676002)(81156014)(81166006)(305945005)(26005)(186003)(8936002)(14454004)(6116002)(3846002)(478600001)(71200400001)(9686003)(25786009)(6246003)(6436002)(2906002)(110136005)(316002)(55016002)(33656002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR1801MB1846; 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: +h6TMcw7E50Rn2AyPt8Vt9nwZhRF3dQdZ1Iz/zgEu7OWg5I36/oyeKnDaLhozFNmsJxqDyCOy4MlUVoco+IAvqXRdQ9ksuW1HtpX7o4FQtgLGKlMqesjEGPF4crVcmrrcbNz8NvA6EVTUSYh7KEGVzyevw5nDm1x6VtE9k3jchj2MDdcEGfjMC/Em+HhVlPItq+B9w14yGT0vlDwvb8zflZ04ZCxdwuimEMOGiKgAvHs9cQb8z0gI5fACARziYvvUdOnj8wHg+Qs8vZthNc+ulW05Rn3k0OkJdE1kv/NB1gTHN1XHdQE+ANCZQe+aSPSR3PiFoZ8YsxD1gDnf4JyB5jOxmaJXS4/sTdhx0ohY0TOSmW1lW0yDJJAxdhM/U52N27P54FsquUPcexDO5rv1vZ/dc23pBaOJocqqR68gZUKafmWcze6LJ5JfLHIu8ir Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 2c7d2719-05ab-4a42-0978-08d75c4ab97e X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Oct 2019 08:33:50.4915 (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: FcFRHSiPfifUpQm5y/cJMEOPiixsykfhfo16v3zpmpVS90V1KhwOwDT+2XH+zz1sbkFlSAPefVF222G1v1+ZAEVijYHksKOfeVz2RnZTaNM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR1801MB1846 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-29_03:2019-10-28,2019-10-29 signatures=0 Subject: Re: [dpdk-dev] [PATCH v14 3/7] ethdev: log offloads that can't be disabled by PMD 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+IE9uIEJlaGFsZiBPZiBBbmRyZXcgUnliY2hlbmtvDQo+U2VudDogVHVlc2RheSwg T2N0b2JlciAyOSwgMjAxOSAxMjozNiBQTQ0KPlRvOiBQYXZhbiBOaWtoaWxlc2ggQmhhZ2F2YXR1 bGEgPHBiaGFnYXZhdHVsYUBtYXJ2ZWxsLmNvbT47DQo+ZmVycnVoLnlpZ2l0QGludGVsLmNvbTsg SmVyaW4gSmFjb2IgS29sbGFudWtrYXJhbg0KPjxqZXJpbmpAbWFydmVsbC5jb20+OyBUaG9tYXMg TW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+DQo+Q2M6IGRldkBkcGRrLm9yZw0KPlN1Ympl Y3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSCB2MTQgMy83XSBldGhkZXY6IGxvZyBvZmZsb2FkcyB0 aGF0IGNhbid0DQo+YmUgZGlzYWJsZWQgYnkgUE1EDQo+DQo+SGkgUGF2YW4sDQo+DQo+dGhhbmtz IGZvciB0aGUgcGF0Y2guIFBsZWFzZSwgc2VlIG15IHJldmlldyBub3RlcyBiZWxvdy4NCj4NCj5P biAxMC8yOS8xOSA4OjAzIEFNLCBwYmhhZ2F2YXR1bGFAbWFydmVsbC5jb20gd3JvdGU6DQo+PiBG cm9tOiBQYXZhbiBOaWtoaWxlc2ggPHBiaGFnYXZhdHVsYUBtYXJ2ZWxsLmNvbT4NCj4+DQo+PiBT b21lIFBNRCBjYW4ndCB3b3JrIHdoZW4gY2VydGFpbiBvZmZsb2FkcyBhcmUgZGlzYWJsZWQsIHRv IHdvcmsNCj5hcm91bmQNCj4+IHRoaXMgdGhlIFBNRCBhdXRvIGVuYWJsZSB0aGUgb2ZmbG9hZHMg aW50ZXJuYWxseSBhbmQgZXhwb3NlIGl0DQo+dGhyb3VnaA0KPj4gZGV2LT5kYXRhLT5kZXZfY29u Zi5yeG1vZGUub2ZmbG9hZHMuDQo+PiBBZnRlciBkZXZfY29uZmlndXJlIGlzIGNhbGxlZCBjb21w YXJlIHRoZSByZXF1ZXN0ZWQgb2ZmbG9hZHMgdG8gdGhlDQo+PiBlbmFibGVkIG9mZmxvYWRzIGFu ZCBsb2cgYW55IG9mZmxvYWRzIHRoYXQgaGF2ZSBiZWVuIGVuYWJsZWQgYnkgdGhlDQo+UE1ELg0K Pj4NCj4+IFN1Z2dlc3RlZC1ieTogQW5kcmV3IFJ5YmNoZW5rbyA8YXJ5YmNoZW5rb0Bzb2xhcmZs YXJlLmNvbT4NCj4+IFNpZ25lZC1vZmYtYnk6IFBhdmFuIE5pa2hpbGVzaCA8cGJoYWdhdmF0dWxh QG1hcnZlbGwuY29tPg0KPj4gLS0tDQo+PiAgIGxpYi9saWJydGVfZXRoZGV2L3J0ZV9ldGhkZXYu YyB8IDIyICsrKysrKysrKysrKysrKysrKysrKysNCj4+ICAgMSBmaWxlIGNoYW5nZWQsIDIyIGlu c2VydGlvbnMoKykNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0 aGRldi5jDQo+Yi9saWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2LmMNCj4+IGluZGV4IGZlZjFk YmI2MS4uN2RmYzJmNjkxIDEwMDY0NA0KPj4gLS0tIGEvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0 aGRldi5jDQo+PiArKysgYi9saWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2LmMNCj4+IEBAIC0x MTQyLDYgKzExNDIsOCBAQCBydGVfZXRoX2Rldl9jb25maWd1cmUodWludDE2X3QgcG9ydF9pZCwN Cj51aW50MTZfdCBuYl9yeF9xLCB1aW50MTZfdCBuYl90eF9xLA0KPj4gICAJc3RydWN0IHJ0ZV9l dGhfZGV2ICpkZXY7DQo+PiAgIAlzdHJ1Y3QgcnRlX2V0aF9kZXZfaW5mbyBkZXZfaW5mbzsNCj4+ ICAgCXN0cnVjdCBydGVfZXRoX2NvbmYgb3JpZ19jb25mOw0KPj4gKwl1aW50NjRfdCBvZmZsb2Fk c19mb3JjZV9lbmE7DQo+PiArCXVpbnQ2NF90IG9mZmxvYWQ7DQo+PiAgIAlpbnQgZGlhZzsNCj4+ ICAgCWludCByZXQ7DQo+Pg0KPj4gQEAgLTEzNTcsNiArMTM1OSwyNiBAQCBydGVfZXRoX2Rldl9j b25maWd1cmUodWludDE2X3QgcG9ydF9pZCwNCj51aW50MTZfdCBuYl9yeF9xLCB1aW50MTZfdCBu Yl90eF9xLA0KPj4gICAJCWdvdG8gcm9sbGJhY2s7DQo+PiAgIAl9DQo+Pg0KPj4gKwkvKiBFeHRy YWN0IFJ4IG9mZmxvYWQgYml0cyB0aGF0IGNhbid0IGJlIGRpc2FibGVkIGFuZCBsb2cgdGhlbSAq Lw0KPj4gKwlvZmZsb2Fkc19mb3JjZV9lbmEgPSBkZXZfY29uZi0+cnhtb2RlLm9mZmxvYWRzIF4N Cj4+ICsJCQlkZXYtPmRhdGEtPmRldl9jb25mLnJ4bW9kZS5vZmZsb2FkczsNCj4NCj5TdHJpY3Rs eSBzcGVha2luZyBYT1IgcmV0dXJucyBkaWZmIGFuZCBpbiB0aGVvcnkgdGhlIGRpZmYgY291bGQN Cj5jYXRjaCByZXF1ZXN0ZWQgYnV0IG5vdCBlbmFibGVkIG9mZmxvYWQgaW4gZmFjdC4NCj5Tbywg SSB0aGluayB0aGUgdmFyaWFibGUgbmFtZSBzaG91bGQgYmUgb2ZmbG9hZHNfZGlmZi4NCj5ZZXMs IGl0IGlzIHVuZXhwZWN0ZWQgYW5kIHZlcnkgYmFkLCBidXQgaXQgYWRkcyBldmVuIG1vcmUNCj52 YWx1ZSB0byB0aGUgY2hlY2suDQo+TWF5IGJlIHJlcXVlc3RlZCBidXQgbm90IGVuYWJsZWQgb2Zm bG9hZHMgc2hvdWxkIGJlIGNoZWNrZWQgZmlyc3Q6DQo+KChkZXZfY29uZi0+cnhtb2RlLm9mZmxv YWRzICYgfmRldi0+ZGF0YS0NCj4+ZGV2X2NvbmYucnhtb2RlLm9mZmxvYWRzKSAhPSAwKQ0KDQpJ c24ndCB0aGUgYWJvdmUgYWxyZWFkeSB0YWtlbiBjYXJlIHRocm91Z2gNCiINCiAgICAgICAgLyog QW55IHJlcXVlc3RlZCBvZmZsb2FkaW5nIG11c3QgYmUgd2l0aGluIGl0cyBkZXZpY2UgY2FwYWJp bGl0aWVzICovDQogICAgICAgIGlmICgoZGV2X2NvbmYtPnJ4bW9kZS5vZmZsb2FkcyAmIGRldl9p bmZvLnJ4X29mZmxvYWRfY2FwYSkgIT0NCiAgICAgICAgICAgICBkZXZfY29uZi0+cnhtb2RlLm9m ZmxvYWRzKSB7DQogICAgICAgICAgICAgICAgUlRFX0VUSERFVl9MT0coRVJSLA0KICAgICAgICAg ICAgICAgICAgICAgICAgIkV0aGRldiBwb3J0X2lkPSV1IHJlcXVlc3RlZCBSeCBvZmZsb2FkcyAw eCUiUFJJeDY0IiBkb2Vzbid0IG1hdGNoIFJ4IG9mZmxvYWRzICINCiAgICAgICAgICAgICAgICAg ICAgICAgICJjYXBhYmlsaXRpZXMgMHglIlBSSXg2NCIgaW4gJXMoKVxuIiwNCiAgICAgICAgICAg ICAgICAgICAgICAgIHBvcnRfaWQsIGRldl9jb25mLT5yeG1vZGUub2ZmbG9hZHMsDQogICAgICAg ICAgICAgICAgICAgICAgICBkZXZfaW5mby5yeF9vZmZsb2FkX2NhcGEsDQogICAgICAgICAgICAg ICAgICAgICAgICBfX2Z1bmNfXyk7DQogICAgICAgICAgICAgICAgcmV0ID0gLUVJTlZBTDsNCiAg ICAgICAgICAgICAgICBnb3RvIHJvbGxiYWNrOw0KICAgICAgICB9DQogICAgICAgIGlmICgoZGV2 X2NvbmYtPnR4bW9kZS5vZmZsb2FkcyAmIGRldl9pbmZvLnR4X29mZmxvYWRfY2FwYSkgIT0NCiAg ICAgICAgICAgICBkZXZfY29uZi0+dHhtb2RlLm9mZmxvYWRzKSB7DQogICAgICAgICAgICAgICAg UlRFX0VUSERFVl9MT0coRVJSLA0KICAgICAgICAgICAgICAgICAgICAgICAgIkV0aGRldiBwb3J0 X2lkPSV1IHJlcXVlc3RlZCBUeCBvZmZsb2FkcyAweCUiUFJJeDY0IiBkb2Vzbid0IG1hdGNoIFR4 IG9mZmxvYWRzICINCiAgICAgICAgICAgICAgICAgICAgICAgICJjYXBhYmlsaXRpZXMgMHglIlBS SXg2NCIgaW4gJXMoKVxuIiwNCiAgICAgICAgICAgICAgICAgICAgICAgIHBvcnRfaWQsIGRldl9j b25mLT50eG1vZGUub2ZmbG9hZHMsDQogICAgICAgICAgICAgICAgICAgICAgICBkZXZfaW5mby50 eF9vZmZsb2FkX2NhcGEsDQogICAgICAgICAgICAgICAgICAgICAgICBfX2Z1bmNfXyk7DQogICAg ICAgICAgICAgICAgcmV0ID0gLUVJTlZBTDsNCiAgICAgICAgICAgICAgICBnb3RvIHJvbGxiYWNr Ow0KICAgICAgICB9DQoiDQoNCkRvIHlvdSB0aGluayBQTURzIHdpbGwgYWR2ZXJ0aXNlIGJ1dCBu b3QgZW5hYmxlPw0KDQo+YnV0IEkgdGhpbmsgaXQgd291bGQgYmUgdXNlZnVsIHRvIGxvZyB0aGVz ZSBvZmZsb2FkcyBhcyB3ZWxsIHRvIGhlbHANCj5kZWJ1Z2dpbmcsDQo+c28sIGl0IHNob3VsZCBi ZSBoYW5kbGVkIGJlbG93Lg0KPg0KPj4gKwl3aGlsZSAoX19idWlsdGluX3BvcGNvdW50KG9mZmxv YWRzX2ZvcmNlX2VuYSkpIHsNCj4NCj5JZiB3ZSByZWFsbHkgbmVlZCBpdCwgX19idWlsdGluX3Bv cGNvdW50bGwoKSBzaG91bGQgYmUgdXNlZCwgYnV0IEkgdGhpbmsNCj53ZQ0KPmRvbid0IG5lZWQg aXQgaGVyZSBpbiBmYWN0IHNpbmNlIGFsbCB3ZSB3YW50IHRvIGtub3cgaWYgb2ZmbG9hZHNfZGlm ZiBpcw0KPjAgb3Igbm90Lg0KPlNvLCBjb21wYXJpc29uIHRvIDAgd2lsbCBkbyB0aGUgam9iIHdp dGhvdXQgYW55IGJ1aWx0aW5zLg0KDQpZZXMsIHdlIGNhbiBza2lwIHVzaW5nIF9fYnVpbHRpbl9w b3Bjb3VudC4NCg0KPg0KPj4gKwkJb2ZmbG9hZCA9IDFVTEwgPDwgX19idWlsdGluX2N0emxsKG9m ZmxvYWRzX2ZvcmNlX2VuYSk7DQo+PiArCQlvZmZsb2Fkc19mb3JjZV9lbmEgJj0gfm9mZmxvYWQ7 DQo+DQo+QmVsb3cgd2Ugc2hvdWxkIGRpZmZlcmVudGlhdGUgaWYgdGhlIG9mZmxvYWQgaXMgcmVx dWVzdGVkIGJ1dCBub3QNCj5lbmFibGVkIChlcnJvcikNCj5hbmQgaWYgdGhlIG9mZmxvYWQgaXMg bm90IHJlcXVlc3RlZCBidXQgZW5hYmxlZCAoaW5mbyBvciB3YXJuaW5nIGFzDQo+RmVycnVoDQo+ c3VnZ2VzdGVkKS4NCj5JIHRoaW5rIHJldCBzaG91bGQgYmUgc2V0IHRvIHNvbWUgZXJyb3IgaWYg d2UgZmluZCBhbnkgcmVxdWVzdGVkLCBidXQgbm90DQo+ZW5hYmxlZCBvZmZsb2FkIGFuZCBmaW5h bGx5IGNvbmZpZ3VyZSBzaG91bGQgZmFpbCAoYWZ0ZXIgbG9nZ2luZyBvZiBhbGwNCj52aW9sYXRp b25zKSBzaW5jZSBpdCBpcyBhIHN0cm9uZyB2aW9sYXRpb24uDQo+DQo+U2FtZSBmb3IgVHggYmVs b3cuDQo+DQo+QWxzbyBJIHRoaW5rIHRoYXQgaXQgaXMgYmV0dGVyIHRvIGZhY3RvciBvdXQgdGhl c2UgY2hlY2tzIGludG8gYSBzZXBhcmF0ZQ0KPmZ1bmN0aW9uIHNpbmNlwqAgcnRlX2V0aF9kZXZf Y29uZmlndXJlKCkgaXMgYWxyZWFkeSB0b28gbG9uZy4NCj5JdCBsb29rcyBsaWtlIHRoYXQgcGFy YW1ldGVycyBzaG91bGQgcG9ydCBJRCwgcmVxdWVzdGVkIGFuZA0KPnJlc3VsdCBvZmZsb2Fkcy4N Cj4NCg0KSSB3aWxsIG1vdmUgaXQgdG8gc3RhdGljIGZ1bmN0aW9uIGluIG5leHQgaXRlcmF0aW9u Lg0KDQo+PiArCQlSVEVfRVRIREVWX0xPRyhJTkZPLCAiUG9ydCAldSBjYW4ndCBkaXNhYmxlIFJ4 DQo+b2ZmbG9hZCAlc1xuIiwNCj4+ICsJCQkgICAgICAgcG9ydF9pZCwNCj5ydGVfZXRoX2Rldl9y eF9vZmZsb2FkX25hbWUob2ZmbG9hZCkpOw0KPj4gKwl9DQo+PiArDQo+PiArCS8qIEV4dHJhY3Qg VHggb2ZmbG9hZCBiaXRzIHRoYXQgY2FuJ3QgYmUgZGlzYWJsZWQgYW5kIGxvZyB0aGVtICovDQo+ PiArCW9mZmxvYWRzX2ZvcmNlX2VuYSA9IGRldl9jb25mLT50eG1vZGUub2ZmbG9hZHMgXg0KPj4g KwkJCQkgICAgZGV2LT5kYXRhLQ0KPj5kZXZfY29uZi50eG1vZGUub2ZmbG9hZHM7DQo+PiArCXdo aWxlIChfX2J1aWx0aW5fcG9wY291bnQob2ZmbG9hZHNfZm9yY2VfZW5hKSkgew0KPj4gKwkJb2Zm bG9hZCA9IDFVTEwgPDwgX19idWlsdGluX2N0emxsKG9mZmxvYWRzX2ZvcmNlX2VuYSk7DQo+PiAr CQlvZmZsb2Fkc19mb3JjZV9lbmEgJj0gfm9mZmxvYWQ7DQo+PiArCQlSVEVfRVRIREVWX0xPRyhJ TkZPLCAiUG9ydCAldSBjYW4ndCBkaXNhYmxlIFR4DQo+b2ZmbG9hZCAlc1xuIiwNCj4+ICsJCQkg ICAgICAgcG9ydF9pZCwNCj5ydGVfZXRoX2Rldl90eF9vZmZsb2FkX25hbWUob2ZmbG9hZCkpOw0K Pj4gKwl9DQo+PiArDQo+PiAgIAlyZXR1cm4gMDsNCj4+DQo+PiAgIHJvbGxiYWNrOg0KDQo=