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 4DC01A04DB; Thu, 15 Oct 2020 16:39:33 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 355C51E9C4; Thu, 15 Oct 2020 16:39:32 +0200 (CEST) Received: from nat-hk.nvidia.com (nat-hk.nvidia.com [203.18.50.4]) by dpdk.org (Postfix) with ESMTP id 092051E96B for ; Thu, 15 Oct 2020 16:39:29 +0200 (CEST) Received: from HKMAIL101.nvidia.com (Not Verified[10.18.92.77]) by nat-hk.nvidia.com (using TLS: TLSv1.2, AES256-SHA) id ; Thu, 15 Oct 2020 22:39:27 +0800 Received: from HKMAIL103.nvidia.com (10.18.16.12) by HKMAIL101.nvidia.com (10.18.16.10) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Thu, 15 Oct 2020 14:39:27 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.174) by HKMAIL103.nvidia.com (10.18.16.12) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Thu, 15 Oct 2020 14:39:26 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dQQGk/AxnWz3s3WnvykjKKWjGHXuY4Cqhw1ZmbGvR2CeTfbCEcSUbM3BUJEhD6T8eO9zx95Pd8VN7WpvRODJknYkhEK4ICTxCtq0xdQ1gjUvKadgsPBsPs4WT5dfxDf1jD5f8anPUW245q+0q0vRX3CViVApgm5bpOh/C3LJ9zoI+5fiDOhwb12w8Lyz9EfRnU6wKHK6IO902OWCyj8md7rx+G0b38E7IWMpyRmTcmfS7wZ1EG+sVeTTqeloRfzs3Oo+ikRBB3pM7mrBM1YQmM8gk091suJA+W9Th2cDoA4IE6/GxiGPk4zhp9diLzVAf5kD99gDhwNGZRS7uMzjRA== 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=IHaXomwJYHy/PLtQSTZmlNq43V4jl9ExMWX1JUMnn2M=; b=fTAlJPQd4bQaTmcI40/s0KrJL5iIbOrZJV/irxDpzUwaqxDhNXxFjALePjIB835vc6WEMOGcAMId7TB+Y1zD1VvWkaILIVdJBxLiF47/gw07c9FWj9/qcPYi9fj9/nYJy2YiWm3SruEU0VwTVdRzjPfcqhLGE6OkO9FNxF2NDm2dS82yzSf9mmjOV+UwSjkZchjXpSUk7IxDUSr2JKyUGRGB/xlwX25M4/k+TPh834l4rmJEb9663gTXQcy3D9Odku1uTcYS704JhU8cO7tjHFXMdFFBNujaDU3nOt2dNv4N+ItGh9eJsTt9quvf7FdWMCYHodVrsoMu/mB/3lu99w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none Received: from MWHPR12MB1360.namprd12.prod.outlook.com (2603:10b6:300:12::7) by MWHPR1201MB0255.namprd12.prod.outlook.com (2603:10b6:301:4f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3477.21; Thu, 15 Oct 2020 14:39:23 +0000 Received: from MWHPR12MB1360.namprd12.prod.outlook.com ([fe80::191b:81c4:8297:c6ce]) by MWHPR12MB1360.namprd12.prod.outlook.com ([fe80::191b:81c4:8297:c6ce%5]) with mapi id 15.20.3477.020; Thu, 15 Oct 2020 14:39:22 +0000 From: Slava Ovsiienko To: Andrew Rybchenko , Jerin Jacob CC: dpdk-dev , NBU-Contact-Thomas Monjalon , Stephen Hemminger , "Ferruh Yigit" , Olivier Matz , "Maxime Coquelin" , David Marchand , Andrew Rybchenko Thread-Topic: [dpdk-dev] [PATCH v6 1/6] ethdev: introduce Rx buffer split Thread-Index: AQHWolwR6iD2GvBSUUa07RYZTAdzSKmYMayAgAA6g4CAAAKcEIAAE94AgAAy1WA= Date: Thu, 15 Oct 2020 14:39:22 +0000 Message-ID: References: <1602699122-15737-1-git-send-email-viacheslavo@nvidia.com> <1602699122-15737-2-git-send-email-viacheslavo@nvidia.com> <663a2ea8-cb32-9960-75d1-2a4854dcc0ff@oktetlabs.ru> <6e190086-a859-2e3f-bf76-d56b193fd906@oktetlabs.ru> In-Reply-To: <6e190086-a859-2e3f-bf76-d56b193fd906@oktetlabs.ru> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: oktetlabs.ru; dkim=none (message not signed) header.d=none;oktetlabs.ru; dmarc=none action=none header.from=nvidia.com; x-originating-ip: [95.164.10.10] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 699d6206-52f4-4f4c-e37d-08d871181b9e x-ms-traffictypediagnostic: MWHPR1201MB0255: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: tmrPVI9ysidyRpQ5NJD1BWAnKTTikwgV1okpwH6Z/iA2xuZHXsXDdL57kmt6o90SPqJbhZmExxWO+buM54jgVTDTkm4TpwLelczapZytavw426uhulo8OvK0laLBoicbnDnJsiA7ZBS4k4/Jktijl13+ZNe0w0vlUM1M+Z4mcgoFakZraU4mKUyUK288gR466UkK0ZQ/ToInOcGQ+pHvvrSwbc945mfLRGJmoFbKLgbY5matuir/3HUdVieDF/ALe7PVMQwWaDs/0s/tOd4N4JDDO5aH63xHS5eUe83TGCLsyzJJ8gaUyi4d7M3QdQXK386s7kYogcVuamujfGhTPQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MWHPR12MB1360.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(346002)(376002)(366004)(136003)(39860400002)(4326008)(2906002)(8676002)(86362001)(110136005)(7696005)(54906003)(52536014)(55016002)(6506007)(33656002)(26005)(186003)(8936002)(71200400001)(7416002)(316002)(83380400001)(76116006)(66446008)(9686003)(478600001)(5660300002)(66476007)(64756008)(66556008)(66946007); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: SefYHJ5ULWYCDnaM2olb9PmT7+nJhyu3rxzOyX4A9oViqRBGEQ3sNJXGyZD/pD06F92O+GN8T62XhrJh4RxxaCSq9dcRoTUrrvciTsvHZLSufRXST6YOT4VaPQ6NR1DgQw0VoeWJtcKvveyRwLyVwkEF6V82o+mUa57oxgExBXR6HgeWNzfLm0c4aao0VP0ZSOrlyhqBDTDInPeoBgpz9C8iuSnyhejegtxRk5VAreAxlOd4UMxxgwzXvx+6NQWY6AV+vqvE6xZsRMBy0hZalyzx8txNuj97oq+ZV38JPhgME3kIzd61WDPQ2zym96eZEBXMceeLV1RRNVzecEwCKoCVIx7fcF+4aveHA14ump//DFynW6Nz+A3nDiH+YFFTxlHvTNMIPKmm+bxg3IGp87WG5NqRzyD9Ki3pwFkLSdhjTOsZtngMUV+K1ixI3B4EcDEQ3aCdMcZLHDRlVZh3h2uiFrYHqqogU72raKalAlWQMDmtV6yaRc6QN46wtosbxY3tBwex1W9Yyd/F6Qc9I8qD6td1lBZhibCDBY7W6h89Aa4lh4Ozo7Z2G8QSXhe6E3bQ1hxmlO/19hCWRseTDJBfmJRgzWjiBL8G93+wYLIgtk/oYP3qbSjUAyQ6l1dXcWT2TeC84AlB3Q54fgYSlA== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR12MB1360.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 699d6206-52f4-4f4c-e37d-08d871181b9e X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Oct 2020 14:39:22.8177 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: o30rCXaGuSkJVLma7V7p+OTq4EEsotGvpNWoWfZSAr8NovodO38cEVfjVAn05Xrt8KXWUq8VNPnJwNGYcqly3w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1201MB0255 X-OriginatorOrg: Nvidia.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1602772767; bh=IHaXomwJYHy/PLtQSTZmlNq43V4jl9ExMWX1JUMnn2M=; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To: CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References: In-Reply-To:Accept-Language:Content-Language:X-MS-Has-Attach: X-MS-TNEF-Correlator:authentication-results:x-originating-ip: x-ms-publictraffictype:x-ms-office365-filtering-correlation-id: x-ms-traffictypediagnostic:x-ld-processed: x-microsoft-antispam-prvs:x-ms-oob-tlc-oobclassifiers: x-ms-exchange-senderadcheck:x-microsoft-antispam: x-microsoft-antispam-message-info:x-forefront-antispam-report: x-ms-exchange-antispam-messagedata:x-ms-exchange-transport-forked: Content-Type:Content-Transfer-Encoding:MIME-Version: X-MS-Exchange-CrossTenant-AuthAs: X-MS-Exchange-CrossTenant-AuthSource: X-MS-Exchange-CrossTenant-Network-Message-Id: X-MS-Exchange-CrossTenant-originalarrivaltime: X-MS-Exchange-CrossTenant-fromentityheader: X-MS-Exchange-CrossTenant-id:X-MS-Exchange-CrossTenant-mailboxtype: X-MS-Exchange-CrossTenant-userprincipalname: X-MS-Exchange-Transport-CrossTenantHeadersStamped:X-OriginatorOrg; b=nN5w+1bP3VJFvTHUeZAfrc95VWyzE91FY4HmnsY82Nj3EcMPVYS0olf5kQF0Pk6cF 7PiJJoTpH55lbcRv9BTUVoHmkrIwFXfFei/VHwd+SBZXhBYkubCJ9pbabI04vRLfCe 4Wdh3at5tCBh+o6oDOubJRaifzg3Co7eZxercSWF9HpWdocoKRqYoPbAmJy5j4V111 YgmcIRVx58aAV/zhuDB2i9waLSTkXlVK0AaxHbjQORkELTQwkU6ipF8w2ub5pGFrDT YP+WmVAJaP9IfzDPPSU2jq7exEzW6YnwM8i09exHg4/T5+sEMIn7UI3laO1Z9vZE4n DkVGTQTkvfe9A== Subject: Re: [dpdk-dev] [PATCH v6 1/6] ethdev: introduce Rx buffer split 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" SGksIEFuZHJldw0KDQo+ID4+IEF0IGxlYXN0IHRoZXJlIGFyZSBmZXcgc2ltcGxlIGxpbWl0YXRp b25zIHdoaWNoIGFyZSBlYXN5IHRvDQo+ID4+IGV4cHJlc3M6DQo+ID4+ICAxLiBNYXhpbXVtIG51 bWJlciBvZiBzZWdtZW50cw0KPiA+IFdlIGhhdmUgc2NhdHRlciBjYXBhYmlsaXR5IGFuZCB3ZSBk byBub3QgcmVwb3J0IHRoZSBtYXhpbWFsIG51bWJlciBvZg0KPiA+IHNlZ21lbnRzLCBpdCBpcyBv biBQTUQgb3duLiBXZSBjb3VsZCBhZGQgdGhlIGZpZWxkIHRvIHRoZQ0KPiA+IHJ0ZV9ldGhfZGV2 X2luZm8sIGJ1dCBub3Qgc3VyZSB3aGV0aGVyIHdlIGhhdmUgc29tZXRoaW5nIHNwZWNpYWwgdG8g cmVwb3J0DQo+IHRoZXJlIGV2ZW4gZm9yIG1seDUgY2FzZS4NCj4gDQo+IFRoZXJlIGlzIGFsd2F5 cyBhIGxpbWl0YXRpb24gaW4gcHJvZ3JhbW1pbmcgYW5kIEhXLiBOb3RoaW5nIGlzIHVubGltaXRl ZC4NCj4gTGltaXRzIGNvdWxkIGJlIGhpZ2gsIGJ1dCBzdGlsbCBleGlzdC4NCj4gTnVtYmVyIG9m IGRlc2NyaXB0b3JzPyBXaWR0aCBvZiBmaWVsZCBpbiBIVyBpbnRlcmZhY2U/DQo+IE1heGltdW0g bGVuZ3RoIG9mIHRoZSBjb25maWcgbWVzc2FnZSB0byBIVz8NCj4gQWxsIGFib3ZlIGNvdWxkIGxp bWl0IGl0IGRpcmVjdGx5IG9yIGluZGlyZWN0bHkuDQoNCk5vbmUgb2YgYWJvdmUgaXMgYXBwbGlj YWJsZSB0byBtbHg1IGJ1ZmZlciBzcGxpdCBmZWF0dXJlIC0gaXQganVzdCBhZGp1c3RzIHRoZSBS eCBidWZmZXIgcG9pbnRlcnMNCmFuZCBzZWdtZW50IHNpemVzLCBubyBhbnl0aGluZyBiZXlvbmQg Z2VuZXJpYyBsaW1pdGF0aW9uIC0gdGhlIHF1ZXVlIGRlc2NyaXB0b3IgbnVtYmVycw0KYW5kIG1i dWYgYnVmZmVyIHNpemUuIFN1cHBvc2UgdGhlIG1vc3Qgb2YgSFcgYnkgb3RoZXIgdmVuZG9ycyBp cyBjYXBhYmxlIHRvIHN1cHBvcnQNCmJ1ZmZlciBzcGxpdCBmZWF0dXJlIHdpdGggc2ltaWxhciBn ZW5lcmljIGxpbWl0YXRpb25zLg0KDQo+IA0KPiA+PiAgMi4gUG9zc2liaWxpdHkgdG8gdXNlIHRo ZSBsYXN0IHNlZ21lbnQgbWFueSB0aW1lcyBpZiByZXF1aXJlZA0KPiA+PiAgICAgKEkgd2FzIHN1 Z2dlc3RpbmcgdG8gdXNlIHNjYXR0ZXIgZm9yIGl0LCBidXQgeW91IHJlamVjdGVkDQo+ID4+ICAg ICAgdGhlIGlkZWEgLSBtYXkgYmUgdGltZSB0byByZWNvbnNpZGVyIDopICkNCj4gPg0KPiA+IE1t bSwgc29ycnkgSSBkbyBub3QgZm9sbG93LCBpdCBtaWdodCBiZSBJIGRpZCBub3QgdW5kZXJzdGFu ZC9taXNzZWQgeW91cg0KPiBpZGVhLg0KPiA+IFNvbWUgb2YgdGhlIGxhc3Qgc2VnbWVudCBhdHRy aWJ1dGVzIGFyZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHNjYXR0ZXINCj4gPiB0aGUgcmVzdCBv ZiB0aGUgZGF0YSBpbiBmYXNoaW9uIHZlcnkgY2xvc2UgdG8gdGhlIGV4aXN0aW5nIHNjYXR0ZXJp bmcNCj4gPiBhcHByb2FjaCAtIGF0IGxlYXN0LCBwb29sIGFuZCBidWZmZXIgc2l6ZSBmcm9tIHRo aXMgcG9vbCBhcmUgdXNlZC4gVGhlDQo+ID4gYmVnaW5uaW5nIG9mIHRoZSBwYWNrZXQgc2NhdHRl cmVkIGFjY29yZGluZyB0byB0aGUgbmV3IGRlc2NyaXB0aW9ucywNCj4gPiB0aGUgcmVzdCBvZiB0 aGUgcGFja2V0IC0gYWNjb3JkaW5nIHRvIHRoZSBleGlzdGluZyByZWd1bGFyIHNjYXR0ZXJpbmcN Cj4gPiB3aXRoIHBvb2wgc2V0dGluZ3MgZnJvbSB0aGUgbGFzdCBzZWdtZW50IGRlc2NyaXB0aW9u Lg0KPiANCj4gSSBiZWxpZXZlIHRoYXQgdGhlIHBvc3NpYmlsaXR5IHRvIHNwbGl0IGludG8gYSBm aXhlZCBzZWdtZW50cw0KPiAoQlVGRkVSX1NQTElUKSBhbmQgcG9zc2liaWxpdHkgdG8gdXNlIGEg bWVtcG9vbCAoanVzdCBtcCBvciBsYXN0IHNlZ21lbnQpDQo+IG1hbnkgdGltZXMgaWYgYSBwYWNr ZXQgZG9lcyBub3QgZml0IChTQ0FUVEVSKSBpdCBpcyAqZGlmZmVyZW50KiBmZWF0dXJlcy4NCg0K U29ycnksIHdoYXQgZG8geW91IG1lYW4gInVzZSBtZW1wb29sIG1hbnkgdGltZXMiPyBBbGxvY2F0 ZSBtdWx0aXBsZQ0KbWJ1ZnMgZnJvbSB0aGUgc2FtZSBtZW1wb29sIGFuZCBidWlsZCB0aGUgY2hh aW4gb2YgdGhlbT8gDQoNCldlIGhhdmUgU0NBVFRFUiBvZmZsb2FkIGFuZCBtYW55IFBNRHMgYWR2 ZXJ0aXNlIHRoYXQuIA0KU2NhdHRlcmluZyBpcyBhY3R1YWxseSB0aGUgc3BsaXQsIHRoZSBzcGxp dCBoYXBwZW5zIG9uIHNvbWUgd2VsbC1kZWZpbmVkIHBvaW50cw0KdG8gdGhlIG1idWZzIGZyb20g dGhlIHNhbWUgcG9vbC4gQlVGRkVSX1NQTElUIGp1c3QgZXh0ZW5kcyBTQ0FUVEVSDQpjYXBhYmls aXRpZXMgYnkgcHJvdmlkaW5nIHRoZSBzcGxpdCBwb2ludCBhcmJpdHJhcnkgc2V0dGluZ3MgYW5k IG11bHRpcGxlDQpwb29scy4NCg0KPiBJIGNhbiBlYXNpbHkgaW1hZ2luZSBIVyB3aGljaCBjb3Vs ZCBkbyBCVUZGRVJfU1BMSVQgdG8gZml4ZWQgc2VnbWVudHMsIGJ1dA0KPiBjYW5ub3QgdXNlIHRo ZSBsYXN0IHNlZ21lbnQgbWFueSB0aW1lcyAoaS5lLiBubyBjbGFzc2ljYWwgU0NBVFRFUikuDQoN ClNvcnJ5LCB3aGF0IGRvIHlvdSBtZWFuICJCVUZGRVJfU1BMSVQgdG8gZml4ZWQgc2VnbWVudHMi ID8NClRoaXMgbmV3IG9mZmxvYWQgQlVGRkVSX1NQTElUICBpcyBpbnRlbmRlZCB0byBwdXNoIGRh dGEgdG8gZmxleGlibGUgc2VnbWVudHMsDQpwb3RlbnRpYWxseSBhbGxvY2F0ZWQgZnJvbSB0aGUg ZGlmZmVyZW50IHBvb2xzLiBUaGUgSFcgY2FuIGJlIGNvbnN0cmFpbmVkDQp3aXRoIHBvb2wgbnVt YmVyIChzYXkgaXQgc3VwcG9ydHMgc29tZSBwb29sIGFsbG9jL2ZyZWUgaGFyZHdhcmUgYWNjZWxl cmF0b3INCmZvciBzaW5nbGUgcG9vbCBvbmx5KSwgaW4gdGhpcyBjYXNlIGl0IHdpbGwgbm90IGJl IGFibGUgdG8gc3VwcG9ydCBCVUZGRVJfU1BMSVQNCmluIG11bHRpcGxlIHBvb2wgY29uZmlnLCBi dXQgdXNpbmcgdGhlIHNpbmdsZSBwb29sIGRvZXMgbm90IGFyaXNlIHRoZSBwcm9ibGVtLg0KDQpJ dCBzZWVtcyBJIG1pc3NlZCBzb21ldGhpbmcsIGNvdWxkIHlvdSwgcGxlYXNlLCBwcm92aWRlIGFu IGV4YW1wbGUsDQpob3cgd291bGQgeW91IGxpa2UgdG8gc2VlIHRoZSB1c2FnZSBsYXN0IHNlZ21l bnQgbWFueSB0aW1lcyBmb3IgQlVGRkVSX1NQTElUPw0KSG93IHRoZSBwYWNrZXQgc2hvdWxkIGJl IHNwbGl0LCBpbiBtYnVmcyB3aXRoIHdoYXQgKGxhc3Qgc2VnbWVudCBpbmhlcml0ZWQpIGF0dHJp YnV0ZXM/DQoNCj4gDQo+ID4NCj4gPiAgMy4gTWF4aW11bSBvZmZzZXQNCj4gPj4gICAgIEZyYW5r bHkgc3BlYWtpbmcgSSdtIG5vdCBzdXJlIHdoeSBpdCBjYW5ub3QgYmUgaGFuZGxlZCBvbg0KPiA+ PiAgICAgUE1EIGxldmVsIChpLmUuIHByb3ZpZGUgZGVzY3JpcHRvcnMgd2l0aCBvZmZzZXQgdGFr ZW4gaW50bw0KPiA+PiAgICAgYWNjb3VudCBvciBndWFyYW50ZWUgdGhhdCBIVyBtZW1wb29sIG9i amVjdHMgaW5pdGlhbGl6ZWQNCj4gPj4gICAgIGNvcnJlY3RseSB3aXRoIHJlcXVpcmVkIGhlYWRy b29tKS4gTWF5IGJlIGluIHNvbWUgY29ybmVyDQo+ID4+ICAgICBjYXNlcyB3aGVuIHRoZSBzYW1l IEhXIG1lbXBvb2wgaXMgc2hhcmVkIGJ5IHZhcmlvdXMNCj4gPj4gICAgIHNlZ21lbnRzIHdpdGgg ZGlmZmVyZW50IG9mZnNldCByZXF1aXJlbWVudHMuDQo+ID4NCj4gPiBIVyBvZmZzZXRzIGFyZSBi ZXlvbmQgdGhlIGZlYXR1cmUgc2NvcGUsIHRoZSBvZmZzZXRzIGluIHRoZSBzZWdtZW50DQo+ID4g ZGVzY3JpcHRpb24gaXMgc3VwcG9zZWQgdG8gYmUgYWRkZWQgdG8gdGhlIG5hdGl2ZSBwb29sIG9m ZnNldHMgKGlmIGFueSkuDQo+IA0KPiBBcmUgeW91IHNheWluZyB0aGF0IG9mZnNldHMgYXJlIG5v dCBwYXNzZWQgdG8gSFcgYW5kIGp1c3QgaGFuZGxlZCBieSBQTUQgdG8NCj4gcHJvdmlkZSBjb3Jy ZWN0IElPVkEgYWRkcmVzc2VzIHRvIHB1dCBkYXRhIHRvPyBJZiBzbywgaXQgaXMgYW4gaW1wbGVt ZW50YXRpb24NCj4gZGV0YWlsIHdoaWNoIGlzIHNwZWNpZmljIHRvIG1seDUuIElmIHNvLCBubyBz cGVjaWZpYyBsaW1pdGF0aW9ucyBleGNlcHQgZGF0YSByb29tLA0KPiBzaXplIGFuZCBvZmZzZXQg Y29uc2lzdGVuY3kuDQo+IEJ1dCBpdCBjb3VsZCBiZSBwYXNzZWQgdG8gYSBIVyBhbmQgaXQgY291 bGQgYmUsIGZvciBleGFtcGxlLCBqdXN0IDggYml0cyBmb3IgdGhlDQo+IHZhbHVlLg0KDQpZZXMs IGl0IGNvdWxkLiBCdXQgdGhlcmUgc2hvdWxkIGJlIG90aGVyIHZlbmRvcnMgYmUgaW52b2x2ZWQs IG5vdCBrbm93biBmb3Igbm93DQp3aG8gaXMgZ29pbmcgdG8gc3VwcG9ydCBCVUZGRVJfU1BMSVQg YW5kIGluIHdoaWNoIHdheS4gV2Ugc2hvdWxkIG5vdCBpbnZlbnQNCnNvbWUgdGhlb3JldGljYWwg bGltaXRhdGlvbnMgYW5kIG1lcmdlIHRoZSBkZWFkIGNvZGUuIEFuZCwgcGxlYXNlIG5vdGUgLQ0K VHggc2VnbWVudGF0aW9uIGhhcyBiZWVuIGxpdmluZyBmb3IgMTAgeWVhcnMgc3VjY2Vzc2Z1bGx5 IHdpdGhvdXQgYW55IGxpbWl0YXRpb25zLA0Kbm8gb25lIGNhcmVzIGFib3V0LCB0aGVyZSBpcyBu byBhbnkgcmVxdWVzdCB0byByZXBvcnQuIExpa2V3aXNlIGlzIGV4cGVjdGVkIGZvciBSeC4NCg0K PiANCj4gPg0KPiA+PiAgNC4gT2Zmc2V0IGFsaWdubWVudA0KPiA+PiAgNS4gTWF4aW11bS9taW5p bXVtIGxlbmd0aCBvZiBhIHNlZ21lbnQgIDYuIExlbmd0aCBhbGlnbm1lbnQNCj4gPiBJbiB3aGlj aCBmb3JtPyBNYXNrIG9mIGxzYnMgPyAwIG1lYW5zIG5vIGxpbWl0YXRpb25zID8NCj4gDQo+IGxv ZzIsIGkuZS4gMCA9PiAxIChubyBsaW1pdGF0aW9ucykgMSA9PiAyIChldmVuIG9ubHkpLA0KPiA2 ID0+IDY0ICg2NC1ieXRlIGNhY2hlIGxpbmUgYWxpZ25lZCkgZXRjLg0KPiANCg0KWWVzLCBwb3Nz aWJsZSBvcHRpb24uDQo+ID4NCj4gPj4NCj4gPj4gSSByZWFsaXplIHRoYXQgMywgNCBhbmQgNSBj b3VsZCBiZSBwZXIgc2VnbWVudCBudW1iZXIuDQo+ID4+IElmIGl0IGlzIHJlYWxseSB0aGF0IGNv bXBsZXgsIHJlcG9ydCBjb21tb24gZGVub21pbmF0b3Igd2hpY2ggaXMNCj4gPj4gZ3VhcmFudGVl ZCB0byB3b3JrLiBJZiB3ZSBoYXZlIG5vIGNoZWNrcyBvbiBldGhkZXYgbGF5ZXIsIGFwcGxpY2F0 aW9uDQo+ID4+IGNhbiBpZ25vcmUgaXQgaWYgaXQga25vd3MgYmV0dGVyDQo+ID4NCj4gPiBDdXJy ZW50bHkgaXQgaXMgbm90IGNsZWFyIGF0IGFsbCB3aGF0IGtpbmQgb2YgbGltaXRhdGlvbnMgc2hv dWxkIGJlDQo+ID4gcmVwb3J0ZWQsIHdlIGNvdWxkIGluY2x1ZGUgYWxsIG9mIG1lbnRpb25lZC9w cm9wb3NlZCBvbmVzLCBhbmQgbm8gb25lDQo+ID4gd2lsbCByZXBvcnQgdGhlcmUgLQ0KPiA+IG1s eDUgaGFzIG5vIGFueSByZWFzb25hYmxlIGxpbWl0YXRpb25zIHRvIHJlcG9ydCBmb3Igbm93Lg0K PiA+DQo+ID4gU2hvdWxkIHdlIHJlc2VydmUgc29tZSBwb2ludGVyIGZpZWxkIGluIHRoZSBydGVf ZXRoX2Rldl9pbmZvIHRvIHJlcG9ydA0KPiA+IHRoZSBsaW1pdGF0aW9ucz8gKExpbWl0YXRpb24g ZGVzY3JpcHRpb24gc2hvdWxkIGNvbnRhaW4gdmFyaWFibGUgc2l6ZQ0KPiA+IGFycmF5LCBkZXBl bmRpbmcgb24gdGhlIG51bWJlciBvZiBzZWdtZW50cywgc28gcG9pbnRlciBzZWVtcyB0byBiZQ0K PiBhcHByb3ByaWF0ZSkuDQo+ID4gSXQgd291bGQgYWxsb3cgdXMgdG8gYXZvaWQgQUJJIGJyZWFr LCBhbmQgcHJlc2VudCB0aGUgbGltaXRhdGlvbiBzdHJ1Y3R1cmUNCj4gb25jZSBpdCBpcyBkZWZp bmVkLg0KPiANCj4gSSB3aWxsIGxldCBvdGhlciBldGhkZXYgbWFpbnRhaW5lcnMgdG8gbWFrZSBh IGRlY2lzaW9uIGhlcmUuDQo+IE15IHZvdGUgd291bGQgYmUgdG8gcmVwb3J0IGxpbWl0YXRpb25z IG1lbnRpb25lZCBhYm92ZS4NCj4gSXQgbG9va3MgbGlrZSBKZXJpbiBpcyBhbHNvIGludGVyZXN0 ZWQgaW4gbGltaXRhdGlvbnMgcmVwb3J0aW5nLiBOb3Qgc3VyZSBpZiBteSBmb3JtDQo+IGxvb2tz IE9LIG9yIG5vLg0KDQpGb3Igbm93IEkgdGVuZCB0byB0aGluayB3ZSBjb3VsZCByZXNlcnZlIHNv bWUgcG9pbnRlciBmb3IgQlVGRkVSX1NQTElUIGxpbWl0YXRpb25zIGFuZCB0aGF0J3MgaXQuDQpS ZXBvcnRpbmcgc29tZSBzaWxseSBnZW5lcmljIGxpbWl0YXRpb25zIGZyb20gbWx4NSBtZWFucyBp bnRyb2R1Y2luZyB0aGUgZGVhZCBjb2RlIGluIG15IG9waW5pb24uDQpJZiB3ZSdsbCBzZWUgdGhl IGFjdHVhbCByZXF1ZXN0IGZyb20gYXBwbGljYXRpb25zIHRvIGNoZWNrIGFuZCBoYW5kbGUgbGlt aXRhdGlvbnMgKGFjdHVhbGx5IGFwcGxpY2F0aW9ucw0KYXJlIHZlcnkgbGltaXRlZCBpbiB0aGlz IG1hdHRlciAtIHRoZXkgZXhwZWN0IHRoZSBzcGxpdCBwb2ludCB0byBiZSBzZXQgYXQgdmVyeSBz dHJvbmcgZGVmaW5lZCBwbGFjZQ0Kb2YgdGhlIHBhY2tldCBmb3JtYXQpLg0KDQoNCg0K