From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D7890A0C47; Sun, 31 Oct 2021 10:29:12 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 66F484068E; Sun, 31 Oct 2021 10:29:12 +0100 (CET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2055.outbound.protection.outlook.com [40.107.20.55]) by mails.dpdk.org (Postfix) with ESMTP id 0F9B640689 for ; Sun, 31 Oct 2021 10:29:10 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YA2ewhgakudGs7XZVnH+rE/2cZUPb8RUNX0c2QnuBwDsU+ZYEDkz6gNSARHMjSx8RdsAeJWCggGrKQCYG10UAj3VhTgsIXMZ0wLBIly2Y1IuManqdcsrtVCYpqxzY+Z5tODNI3JM7IZt5VIwxgC5lrMHeR3eGG4AdGdBNNe9T4PXu0x2LgwCGwMkbIvJy2JLTP3/5Sd+I+vBkbWg0C8KrDeNQJzSwnlMdmI9aSuSoeONNQ+AA2BKZbltGzEwPBMxEiJO3UBOJwE5L9H6jqx15Kkdkmkai9FKD1MfqJBxBMMJiMiREsdwXVBE5N3EljeqgQqJ0ivsb2uThhMyQ60OyA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Sp43Yt+VCBz5BvKckFJ2kh4kq9WtU3G4VcCOzwAQCSA=; b=CPw4d4bt3jfE0ilBOKHPiwfNfBvtIK7MaHmv9qJsReIqcdDBe66/yKvmk/NaPls8CB/uDELeF7+apfFBAdsPVDJT5gqd7E3Ff95mhLhiL1mdzp4bvp/qnHUW+55ae/+3CSh8bTaqOIVjOa1dmh6d/DpRHqyB4tpdqeCBmjM1NhHJYHV1i7dY9DudTtac429cNOfAy20lxbbUbVrOb7IJ/EI+gZDYsSCLwd4U+sKmzJQ4JTqDmmBaFJxvE3xHvCwAO4h6nx9niQ4NEqt3TKpm8pxnfXc8EKxxUW0GqqpFJaU+iuEQblZQ6St57sD420CP2mHUEOscnx9WSXPH0Id+9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Sp43Yt+VCBz5BvKckFJ2kh4kq9WtU3G4VcCOzwAQCSA=; b=ayAI3gTMHcz8Yxu/SzPf7nwvDODw7Y/WLMQMa3yeS9zkBg+Fw5cQUVQ+tVkYcoclajy8fIYFtHHvvGjyBDkBGDVM+k1DX+29Tn+RqfQCXkp8Y+ulYRlypUkYroer1+ZLvLCdKmhvFgd0ceFuJZNYe24M0+8VlgVnlwonvMQW0Yc= Received: from DB7PR07MB5978.eurprd07.prod.outlook.com (2603:10a6:10:80::15) by DBAPR07MB6902.eurprd07.prod.outlook.com (2603:10a6:10:196::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.6; Sun, 31 Oct 2021 09:29:09 +0000 Received: from DB7PR07MB5978.eurprd07.prod.outlook.com ([fe80::8b2:d48f:7cb7:8b3d]) by DB7PR07MB5978.eurprd07.prod.outlook.com ([fe80::8b2:d48f:7cb7:8b3d%6]) with mapi id 15.20.4669.009; Sun, 31 Oct 2021 09:29:09 +0000 From: =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= To: "Van Haaren, Harry" , Jerin Jacob , "McDaniel, Timothy" , Pavan Nikhilesh , Hemant Agrawal , Liang Ma CC: "Richardson, Bruce" , Jerin Jacob , "Gujjar, Abhinandan S" , "Carrillo, Erik G" , "Jayatheerthan, Jay" , dpdk-dev Thread-Topic: [dpdk-dev] [PATCH 1/3] eventdev: allow for event devices requiring maintenance Thread-Index: AQHXyo9mlWp5RiBbnUOU1kFjgNX7IavqEBCAgAAHHACAAAQFgIAADHmAgAK2uQA= Date: Sun, 31 Oct 2021 09:29:09 +0000 Message-ID: <0f5ad4d7-20bb-d59f-3345-1129b0130b18@ericsson.com> References: <3e8c8bab-783d-d132-a836-51bd4d5533bb@ericsson.com> <20211026173148.19399-1-mattias.ronnblom@ericsson.com> <7494151c-26b2-4ccc-f011-73ffceb92a85@ericsson.com> In-Reply-To: Accept-Language: en-US, sv-SE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.2.1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 73c5b322-e1a7-425e-11ad-08d99c50e484 x-ms-traffictypediagnostic: DBAPR07MB6902: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kEuHxvFy8cURcv6fgjRsOoRNinDTlByfSPaw299sldhl7BmxvpAxG0KQWt4khJ2j45QViPmo/4Ulc+JyGXGtG25lW6bV7sbiIKzXm6t4GBTIehmul7ETJ35jlAJzLST2AYDnnjZH/PizYstJsSFTRV4Dg/G0iieK3A00DJ9AXy4rG0Zq4tjl7GPybZOgQRuS5WGsVtOyrohzaNK9IfTZSWIpH0cWHYxXJo6Ypid7pekcwqVPNoEbeKld8uVGqIreza+xzLLFTtJLjPG2UWRwts27ex2jwAH7HyQ/+HdFgjnpKzAzrME5g/EnU2KGAohPYHh8qHM5Z5dkDLjWtkvOtkMkxTykoFB6yPdeD032Lv1xv91b9diotdicpbxvp1YdBekpdzDE0W3w9jDQHYnzW/86a56PZWbB5ELGHOZcQG5paptajm5ztoemhK0g/O7buDAVJ5h9vBGRZZdlTYSckPGhO2Qb1/8c2xRqvOdT05wUibCeEFQSoKXBYn/do4SugQVju3wY8vTskXabM68ngiMd3VXzMdLXZP2teUWrrEpTBK/oX6P0mQJUzYff1C/QOfqDRGEuUxllJeMHo2Vz5CJdDef6+Oz/MtY0c5Wmwco7hdRn3oL6h6HNorfHy/yxkxUkcy/L1nFCq1rsn55rYoFhPvezpyD1MaXXn0Q6aDWw7ZJVUPJ50llWC0fYChabNgQ4mv5lGbt5q/zHkw+ALvsoggXacNcER4HQBiodyxoz5p8D73qXqy5QTKD2GIMVT7vYp3nUfxhnboNWUDIyJTOJfMeHYuqCkSuUmEX+2LnysR5+pP4iMD8/wOmBqSxL+Y5SXpbT0FkXwbwlhRk3eqhzwmj5xK7uck+lSTY+oV0= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR07MB5978.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(316002)(38100700002)(110136005)(54906003)(31686004)(66476007)(86362001)(8676002)(966005)(71200400001)(66446008)(76116006)(66556008)(64756008)(66946007)(7416002)(36756003)(2616005)(4001150100001)(6486002)(26005)(83380400001)(186003)(85202003)(31696002)(5660300002)(2906002)(53546011)(38070700005)(8936002)(66574015)(85182001)(82960400001)(122000001)(508600001)(6506007)(6512007)(4326008)(45980500001)(43740500002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eUZLRXVFcVRRUlhzU1BxQkRCc0JETjNFVGVyWXhWREx0VHRnS3RNRXJtOGhR?= =?utf-8?B?bHlHNVZSbUxvSUg3YkUrbnBpSmp0Z2tHS3c2K3hBUkRxQ1V6c3NuU0dyaDVZ?= =?utf-8?B?T2Q0cXNQa2V5ZzVLSUNHV2czN2tWbjhCektVcFNEK2JIQzhUeDhMM0h5US9C?= =?utf-8?B?dzZPQlJFSUJEUXRpeWpMdE1MMXJrTHZMK29mRnJ3d29kZnVpQlJuS2hDeEN6?= =?utf-8?B?N3lIWjcwK3ozc0pqd0Y4N3RZcWwyUWdVeFU0cmFCTXpoK3QxTEtPUy9ZTnhh?= =?utf-8?B?U08xOU5HWjFYSVI4Z1ZRNEZ6bG9jRC9JY2tEUFBBOUI4TGtBYktCNjc1MDdh?= =?utf-8?B?RXovOFNLK0tGWHJvVXlTNGRJaUxCTXpVbVhUSENnVHUzOWNXL0pxMWRQU29o?= =?utf-8?B?bzNlUE85d2hZVTR3dFZvY1JEeDA4ZmpScDZ6cjd0SnZVaTFVU05TbVpGVERi?= =?utf-8?B?R1ZKdW92VDEzclNXYU5SN0tvM2FLOUJFamdFd0VYRmZLazI2a2pVazcxWStQ?= =?utf-8?B?dGlHamQrUFdTUnBxUzl3TGE2K2JhNjhxU3Z4d2JoM2k1Vk1RRTJhSWQ3Qnd0?= =?utf-8?B?b2Y4STIyTnhlMXArelI5WFlDQXRCVVhjejlOMFhxNDhWUW8yRE9HeG5kSzJW?= =?utf-8?B?Y1JJTEFNc1hkUjk5V3ZxanF0WWF5WlRpM2p0SG0vMWh5emVMQ2dYSHNqM2ZC?= =?utf-8?B?cWhHanlWLzRrZDJadVdxbnMzbUlEOFpXSno5WUNZOHBHZytlNnpad0dNRmJO?= =?utf-8?B?WElnbStGWXlDV3h3STlyMkdJWGpGWFJqV0FKaExKM2ZJcmZzMzBlbndJcDVs?= =?utf-8?B?SWpVZlVWRDZ6U0FYSjJKL1c5Z2ptU2RyaFJnU1pMNmhTeHV0bG9saTFLSGcw?= =?utf-8?B?eFh4NGFyV3ZFRjZWek8vVWVKQlI3RWJSTzVEN3NDck9QQ1FSRlVpUllyMmd6?= =?utf-8?B?MEN3emZRWTY1dmtuWlBvRnJUMHF4Z0ErVG9qTGhMVEJjUDlXdm5VL3VXVkNu?= =?utf-8?B?RzlFa3ZnRnlGcWd2OFFsL2hnS0ZIWlJ0cXU2RHZYblNBUzY5VUtRbEJWc2l4?= =?utf-8?B?NEcyV1FtcWlJVDNNRjVzL3ZTajEwd1Qwclp4ek55c3Y5RnZzNzJEUEJzajVp?= =?utf-8?B?NE5wRnQyaHAyc0NZR0dmcXhuZ2ZhNlpCcWRTa3BobzNoNmhxN2xJdkQ5Z2Jh?= =?utf-8?B?WG5FMWcwUERnRzZTRFR6eTBJNVIyL2R1aVJuQUN5ME9qTno1VmxLRHRVdUhH?= =?utf-8?B?L05mYlZmRXZXSDZYZkV6dlY5MGxlYTd5Tmw2czJqZXpkMWpSd3dJbk9KZnJR?= =?utf-8?B?c0I1LytmcWRWVjZEaUFOS05mM1JmVll1QW5KS2llSjhwYVhXU1h1MDBWMDdl?= =?utf-8?B?Qndmdm04NXQ3RmxHL0NUYjVQbXp6bGxlU3lUOTJPV0FyNGtoWEV5MnFoNmRp?= =?utf-8?B?YjFQR25BQk1aRnNMa25MYnNaZGE2bFppeFh3OWdaL1o4bjAzbDY5K2VKaHNo?= =?utf-8?B?MTlLbldNbTA3cWJnOXppVE5KZnRPM0pBQjBhajNxc2wrRkNqOGtGeEk4UVI3?= =?utf-8?B?ZTFWYUNTV2JydUdZQzhxNU5KQ3ZyNXdRbkh2TllFYnltSFU1WlJtMVg4ZEJV?= =?utf-8?B?OE85Um1qSDY3QWo5TWRlalNEOEQ4OWoxK1FHR2NuaUduK3hrTTc2Vmtuanp6?= =?utf-8?B?emRwK21pRmQycnJKWEMwSFhsUWZzZGZISUJWM2NPandKcUlkcW5JaEVkemE3?= =?utf-8?B?SUlsRXFNV2RYTkEycDFTdHdlaHJyZWZWTjdLZXlkZjJsR3FlVHpsY1JjTkcy?= =?utf-8?B?Q2w4aVZZUTRXbmtXSUFSSnNFUDZsSDdPQmtVUEJaY3hmU3g0a1dnVGVENHJ1?= =?utf-8?B?TnQ1SzhkOEpLeGxXeCtQTzBTdEhma3NtYUFEYmxUaFZrUmJsQThVYXlkckZY?= =?utf-8?B?VVRRTm9IZkw4N3BJYmRTZmZrU0xkSGRQdGhSWHU3eWx0ZEFRd2hnSlhhR1BR?= =?utf-8?B?YVZoTHhzWXNIMFg0bVFlN2U2RVR4b3ZUOFRlVE1KS3EvM25odHEzQ291M2tB?= =?utf-8?B?V3YybVJPVnlGMVlXNTBZNkkwUUlORGZVdWJLVzBTVjVSb0I2YU5BOGJVNC9Y?= =?utf-8?B?TTlsRFhyQ3lvWlg0ME5zdWJpMXgvbFliSTNQNktzWjcwT29nNHJrdUc1aUtt?= =?utf-8?B?azRPVmxqWjM0dmVKci8xYnRtOGtQd2JOTXZ0WjNXOC82MWl0eGV1aHNqNUdh?= =?utf-8?B?UjFxSytvd1ZnM2hDcXVPM1F4b25BPT0=?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: ericsson.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB7PR07MB5978.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 73c5b322-e1a7-425e-11ad-08d99c50e484 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Oct 2021 09:29:09.3323 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: kvO6fksc83e3YymOftPq69HhLftqqoG+kUSG6RE0r/m1hzB5w8qH3gXXXcnaFQQPDbg7I2aUsfRuAyJJ6cHRre6qkNZb+BBESspZna9LHGk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR07MB6902 Subject: Re: [dpdk-dev] [PATCH 1/3] eventdev: allow for event devices requiring maintenance X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" T24gMjAyMS0xMC0yOSAxODowMiwgVmFuIEhhYXJlbiwgSGFycnkgd3JvdGU6DQo+PiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPj4gRnJvbTogSmVyaW4gSmFjb2IgPGplcmluamFjb2JrQGdt YWlsLmNvbT4NCj4+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciAyOSwgMjAyMSA0OjE4IFBNDQo+PiBU bzogbWF0dGlhcy5yb25uYmxvbSA8bWF0dGlhcy5yb25uYmxvbUBlcmljc3Nvbi5jb20+OyBWYW4g SGFhcmVuLCBIYXJyeQ0KPj4gPGhhcnJ5LnZhbi5oYWFyZW5AaW50ZWwuY29tPjsgTWNEYW5pZWws IFRpbW90aHkNCj4+IDx0aW1vdGh5Lm1jZGFuaWVsQGludGVsLmNvbT47IFBhdmFuIE5pa2hpbGVz aCA8cGJoYWdhdmF0dWxhQG1hcnZlbGwuY29tPjsNCj4+IEhlbWFudCBBZ3Jhd2FsIDxoZW1hbnQu YWdyYXdhbEBueHAuY29tPjsgTGlhbmcgTWENCj4+IDxsaWFuZ21hQGxpYW5nYml0LmNvbT4NCj4+ IENjOiBSaWNoYXJkc29uLCBCcnVjZSA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5jb20+OyBKZXJp biBKYWNvYg0KPj4gPGplcmluakBtYXJ2ZWxsLmNvbT47IEd1amphciwgQWJoaW5hbmRhbiBTIDxh YmhpbmFuZGFuLmd1amphckBpbnRlbC5jb20+Ow0KPj4gQ2FycmlsbG8sIEVyaWsgRyA8ZXJpay5n LmNhcnJpbGxvQGludGVsLmNvbT47IEpheWF0aGVlcnRoYW4sIEpheQ0KPj4gPGpheS5qYXlhdGhl ZXJ0aGFuQGludGVsLmNvbT47IGRwZGstZGV2IDxkZXZAZHBkay5vcmc+DQo+PiBTdWJqZWN0OiBS ZTogW2RwZGstZGV2XSBbUEFUQ0ggMS8zXSBldmVudGRldjogYWxsb3cgZm9yIGV2ZW50IGRldmlj ZXMgcmVxdWlyaW5nDQo+PiBtYWludGVuYW5jZQ0KPj4NCj4+IE9uIEZyaSwgT2N0IDI5LCAyMDIx IGF0IDg6MzMgUE0gTWF0dGlhcyBSw7ZubmJsb20NCj4+IDxtYXR0aWFzLnJvbm5ibG9tQGVyaWNz c29uLmNvbT4gd3JvdGU6DQo+Pj4gT24gMjAyMS0xMC0yOSAxNjozOCwgSmVyaW4gSmFjb2Igd3Jv dGU6DQo+Pj4+IE9uIFR1ZSwgT2N0IDI2LCAyMDIxIGF0IDExOjAyIFBNIE1hdHRpYXMgUsO2bm5i bG9tDQo+Pj4+IDxtYXR0aWFzLnJvbm5ibG9tQGVyaWNzc29uLmNvbT4gd3JvdGU6DQo+Pj4+PiBF eHRlbmQgRXZlbnRkZXYgQVBJIHRvIGFsbG93IGZvciBldmVudCBkZXZpY2VzIHdoaWNoIHJlcXVp cmUgdmFyaW91cw0KPj4+Pj4gZm9ybXMgb2YgaW50ZXJuYWwgcHJvY2Vzc2luZyB0byBoYXBwZW4s IGV2ZW4gd2hlbiBldmVudHMgYXJlIG5vdA0KPj4+Pj4gZW5xdWV1ZWQgdG8gb3IgZGVxdWV1ZWQg ZnJvbSBhIHBvcnQuDQo+Pj4+Pg0KPj4+Pj4gUEFUQ0ggdjE6DQo+Pj4+PiAgICAgLSBBZGFwdCB0 byB0aGUgbW92ZSBvZiBmYXN0cGF0aCBmdW5jdGlvbiBwb2ludGVycyBvdXQgb2YNCj4+Pj4+ICAg ICAgIHJ0ZV9ldmVudGRldiBzdHJ1Y3QNCj4+Pj4+ICAgICAtIEF0dGVtcHQgdG8gY2xhcmlmeSBo b3cgb2Z0ZW4gdGhlIGFwcGxpY2F0aW9uIGlzIGV4cGVjdGVkIHRvDQo+Pj4+PiAgICAgICBjYWxs IHJ0ZV9ldmVudF9tYWludGFpbigpDQo+Pj4+PiAgICAgLSBBZGQgdHJhY2UgcG9pbnQNCj4+Pj4+ IFJGQyB2MjoNCj4+Pj4+ICAgICAtIENoYW5nZSBydGVfZXZlbnRfbWFpbnRhaW4oKSByZXR1cm4g dHlwZSB0byBiZSBjb25zaXN0ZW50DQo+Pj4+PiAgICAgICB3aXRoIHRoZSBkb2N1bWVudGF0aW9u Lg0KPj4+Pj4gICAgIC0gUmVtb3ZlIHVudXNlZCB0eXBlZGVmIGZyb20gZXZlbnRkZXZfcG1kLmgu DQo+Pj4+Pg0KPj4+Pj4gU2lnbmVkLW9mZi1ieTogTWF0dGlhcyBSw7ZubmJsb20gPG1hdHRpYXMu cm9ubmJsb21AZXJpY3Nzb24uY29tPg0KPj4+Pj4gVGVzdGVkLWJ5OiBSaWNoYXJkIEVrbHlja2Ug PHJpY2hhcmQuZWtseWNrZUBlcmljc3Nvbi5jb20+DQo+Pj4+PiBUZXN0ZWQtYnk6IExpcm9uIEhp bWkgPGxpcm9uaEBtYXJ2ZWxsLmNvbT4NCj4+Pj4+IC0tLQ0KPj4+Pj4NCj4+Pj4+ICsvKioNCj4+ Pj4+ICsgKiBNYWludGFpbiBhbiBldmVudCBkZXZpY2UuDQo+Pj4+PiArICoNCj4+Pj4+ICsgKiBU aGlzIGZ1bmN0aW9uIGlzIG9ubHkgcmVsZXZhbnQgZm9yIGV2ZW50IGRldmljZXMgd2hpY2ggaGFz IHRoZQ0KPj4+Pj4gKyAqIFJURV9FVkVOVF9ERVZfQ0FQX1JFUVVJUkVTX01BSU5UIGZsYWcgc2V0 LiBTdWNoIGRldmljZXMgcmVxdWlyZQ0KPj4gdGhlDQo+Pj4+PiArICogYXBwbGljYXRpb24gdG8g Y2FsbCBydGVfZXZlbnRfbWFpbnRhaW4oKSBvbiBhIHBvcnQgZHVyaW5nIHBlcmlvZHMNCj4+Pj4+ ICsgKiB3aGljaCBpdCBpcyBuZWl0aGVyIGVucXVldWluZyBub3IgZGVxdWV1aW5nIGV2ZW50cyBm cm9tIHRoYXQNCj4+Pj4+ICsgKiBwb3J0Lg0KPj4+PiAjIFdlIG5lZWQgdG8gYWRkICAiYnkgdGhl IHNhbWUgY29yZSIuIFJpZ2h0PyBBcyBvdGhlciBjb3JlIHN1Y2ggYXMNCj4+Pj4gc2VydmljZSBj b3JlIGNhbiBub3QgY2FsbCBydGVfZXZlbnRfbWFpbnRhaW4oKQ0KPj4+DQo+Pj4gRG8geW91IG1l YW4gYnkgdGhlIHNhbWUgbGNvcmUgdGhyZWFkIHRoYXQgIm93bnMiIChkZXF1ZXVlcyBhbmQgZW5x dWV1ZXMNCj4+PiB0bykgdGhlIHBvcnQ/IFllcy4gSSB0aG91Z2h0IHRoYXQgd2FzIGltcGxpY2l0 LCBzaW5jZSBldmVudGRldiBwb3J0IGFyZQ0KPj4+IG5vdCBNVCBzYWZlLiBJJ2xsIHRyeSB0byBm aWd1cmUgb3V0IHNvbWUgd29yZGluZyB0aGF0IG1ha2VzIHRoYXQgbW9yZSBjbGVhci4NCj4+IE9L Lg0KPj4NCj4+Pg0KPj4+PiAjIEFsc28sIEluY2FzZSBvZiBBZGFwdGVycyBlbnF1ZXVlKCkgaGFw cGVucywgcmlnaHQ/IElmIHNvLCBlaXRoZXINCj4+Pj4gYWJvdmUgdGV4dCBpcyBub3QgY29ycmVj dC4NCj4+Pj4gIyBARXJpayBHYWJyaWVsIENhcnJpbGxvICBASmF5YXRoZWVydGhhbiwgSmF5IEBH dWpqYXIsIEFiaGluYW5kYW4gUw0KPj4+PiBQbGVhc2UgcmV2aWV3IDMvMyBwYXRjaCBvbiBhZGFw dGVyIGNoYW5nZS4NCj4+Pj4gTGV0IG1lIGtub3cgeW91IGZvbGtzIGFyZSBPSyB3aXRoIGNoYW5n ZSBvciBub3Qgb3IgbmVlZCBtb3JlIHRpbWUgdG8NCj4+IGFuYWx5emUuDQo+Pj4+IElmIGl0IG5l ZWQgb25seSBmb3IgdGhlIGFkYXB0ZXIgc3Vic3lzdGVtIHRoZW4gY2FuIHdlIG1ha2UgaXQgYW4N Cj4+Pj4gaW50ZXJuYWwgQVBJIGJldHdlZW4gRFNXIGFuZCBhZGFwdGVycz8NCj4+Pg0KPj4+IE5v LCBpdCdzIG5lZWRlZCBmb3IgYW55IHByb2R1Y2VyLW9ubHkgZXZlbnRkZXYgcG9ydHMsIGluY2x1 ZGluZyBhbnkgc3VjaA0KPj4+IHBvcnRzIHVzZWQgYnkgdGhlIGFwcGxpY2F0aW9uLg0KPj4NCj4+ IEluIHRoYXQgY2FzZSwgdGhlIGNvZGUgcGF0aCBpbiB0ZXN0ZXZlbnRkZXYsIGV2ZW50ZGV2X3Bp cGVsaW5lLCBldGMgbmVlZHMNCj4+IHRvIGJlIHVwZGF0ZWQuIEkgYW0gd29ycmllZCBhYm91dCB0 aGUgcGVyZm9ybWFuY2UgaW1wYWN0IGZvciB0aGUgZHJpdmVycyB0aGV5DQo+PiBkb24ndCBoYXZl IHN1Y2ggbGltaXRhdGlvbnMuDQo+IEFwcGxpY2F0aW9ucyBjYW4gaWRlbnRpZnkgaWYgdGhpcyAi bWFpbnRhaW4oKSIgY2FsbCBpcyByZXF1aXJlZCBieQ0KPiB0aGUgUlRFX0VWRU5UX0RFVl9DQVBf UkVRVUlSRVNfTUFJTlQgZmxhZyBjb3JyZWN0Pw0KDQoNClllcy4NCg0KDQo+IFNvIHRoZSBjYWxs IHRocm91Z2ggdGhlIEV2ZW50ZGV2IGZ1bmN0aW9uIHBvaW50ZXIgY291bGQgYmUgYnJhbmNoZWQg b3ZlciBhdCBhcHBsaWNhdGlvbiBsZXZlbCBpZiByZXF1aXJlZC4NCg0KDQpZZXMsIHlvdSBjb3Vs ZCB1c2UgdGhlIGNvbnN0YW50IHByb3BhZ2F0aW9uIHRyaWNrIHRvIGVsaW1pbmF0ZSBhbGwgDQpv dmVyaGVhZCwgaWYgc28gd291bGQgYmUgcHJlZmVycmVkLg0KDQoNCj4gT3IgaWYgdGhlIFBNRCBk b2Vzbid0IGFjdHVhbGx5IHNldCB0aGUgIi5tYWludGFpbiIgZnVuY3Rpb24gcG9pbnRlciB0byBh IHZhbGlkIHZhbHVlLCB0aGVuIGl0IHdpbGwganVzdCByZXR1cm4/DQoNClRoYXQncyBhbm90aGVy IGFsdGVybmF0aXZlLCBidXQgYSBzbGlnaHRseSBtb3JlIGNvc3RseSBvbmUuIEkgZmFpbCB0byAN CnNlZSB0aGUgYmVuZWZpdCBvZiB0YWtpbmcgdGhhdCBhcHByb2FjaC4NCg0KDQo+IElzIGl0IGVh c3kvcG9zc2libGUgdG8gdGVzdC9iZW5jaG1hcmsgdGhpcyB3aXRoIHRlc3QtZXZlbnRkZXYgdG8g bWVhc3VyZSBwZXJmLWltcGFjdD8NCj4NCg0KSSd2ZSBiZW5jaG1hcmtlZCBpdCBpbiBhIGRpZmZl cmVudCB0ZXN0IGJlZCwgYW5kIGFzIEkndmUgbWVudGlvbmVkLCBmb3IgDQpldmVudCBkZXZpY2Vz IHdoaWNoIGRvZXNuJ3Qgc2V0IFJURV9FVkVOVF9ERVZfQ0FQX1JFUVVJUkVTX01BSU5UIGFuZCAN CnRodXMgaGF2ZSBOVUxMIHBvaW50ZXIgYXMgdGhlIG1haW50YWluIGZ1bmN0aW9uIGluIHRoZSBv cHMgc3RydWN0LCBJIHdhcyANCnVuYWJsZSB0byBtZWFzdXJlIGFueSBpbmNyZWFzZSBhdCBhbGwg aW4gb3ZlcmhlYWQsIGV2ZW4gaWYgdGhleSBjYWxsZWQgDQpydGVfZXZlbnRfbWFpbnRhaW4oKSBm b3IgZXZlcnkgaXRlcmF0aW9uIGluIHRoZWlyIA0KImRlcXVldWUrcHJvY2VzcytlbnF1ZXVlIiBs b29wLiBPYnZpb3VzbHksIHRoZXJlIGFyZSBhIGNvdXBsZSBvZiBtb3JlIA0KaW5zdHJ1Y3Rpb25z IGluIHRoZSBjb2RlIHBhdGgsIHNvIHN1cmVseSB0aGVyZSBpcyBzb21lIGNvc3QsIGJ1dCBJU1Ag DQptYW5hZ2VkIHRvIGhpZGUgZXZlcnl0aGluZyBvbiB0aGUgc3lzdGVtIEkgd2FzIHVzaW5nLg0K DQoNCj4+IFdoeSBub3QgaGF2ZSBhbiBhZGRpdGlvbmFsIGNvbmZpZyBvcHRpb24gaW4gcG9ydF9j b25maWcgd2hpY2ggc2F5cw0KPj4gaXQgaXMgYSBwcm9kdWNlci1vbmx5IHBvcnQgYnkgYW4gYXBw bGljYXRpb24gYW5kIHRha2VzIGNhcmUgb2YgdGhlIGRyaXZlci4NCj4gVGhlICJwb3J0IGhpbnRz IiB0aGF0IHdhcyByZWNlbnRseSBhZGRlZCBjb3VsZCBiZSB1c2VkIHRvIGNvbW11bmljYXRlIHN1 Y2ggYSBjb25jZXB0Lg0KPiBodHRwczovL3Byb3RlY3QyLmZpcmVleWUuY29tL3YxL3VybD9rPTEz MWQ2MmRmLTRjODY1YmRkLTEzMWQyMjQ0LTg2OWExNGY0YjA4Yy1lOTk1ZGQ0MTliZWViZjdjJnE9 MSZlPTc1YzE2YjJlLTE1ZTgtNGExYS1hYjlmLTZmODBlYzcxMzhlNiZ1PWh0dHAlM0ElMkYlMkZw YXRjaGVzLmRwZGsub3JnJTJGcHJvamVjdCUyRmRwZGslMkZwYXRjaCUyRjIwMjExMDE0MTQ1MTQx LjY3OTM3Mi0xLWhhcnJ5LnZhbi5oYWFyZW4lNDBpbnRlbC5jb20lMkYNCj4NCj4gTm90ZSB0aGF0 IHRvZGF5IHRoZSAicG9ydCBoaW50cyIgYXJlICpoaW50cyosIGFuZCBtdXN0IG5vdCBiZSAqcmVs aWVkIG9uKiB0byBkbyBhbnl0aGluZy4NCj4gVGhpcyBtYXkgYmUgdXNlZnVsIGFzIChvbmUgb2Yp IHRoZSB0b29scy9jb25jZXB0cyB3ZSBjb3VsZCB1c2UgdG8gdHJ5IGFic3RyYWN0IHRoZSAibWFp bnRhaW4iIHJlcXVpcmVtZW50Lg0KPg0KPg0KPj4gSW4gdGhlIGN1cnJlbnQgYWRhcHRlcnMgY29k ZSwgeW91IGFyZSBjYWxsaW5nIG1haW50YWluKCkgd2hlbiBlbnF1ZXVlDQo+PiByZXR1cm5zIHpl cm8uDQo+PiBJbiBzdWNoIGEgY2FzZSwgaWYgdGhlIHBvcnQgaXMgY29uZmlndXJlZCBhcyBwcm9k dWNlciBhbmQgdGhlbg0KPj4gaW50ZXJuYWxseSBpdCBjYW4gY2FsbCBtYWludGFpbi4NCj4+DQo+ PiBUaG91Z2h0cyBmcm9tIG90aGVyIGV2ZW50ZGV2IG1haW50YWluZXJzPw0KPj4gQ2MrIEBWYW4g SGFhcmVuLCBIYXJyeSAgQFJpY2hhcmRzb24sIEJydWNlIEBHdWpqYXIsIEFiaGluYW5kYW4gUw0K Pj4gQEpheWF0aGVlcnRoYW4sIEpheSBARXJpayBHYWJyaWVsIENhcnJpbGxvIEBNY0RhbmllbCwg VGltb3RoeSBAUGF2YW4NCj4+IE5pa2hpbGVzaCAgQEhlbWFudCBBZ3Jhd2FsIEBMaWFuZyBNYQ0K PiBBYm92ZSwgdGhhbmtzIGZvciB0aGUgK0NDLg0KPg0KPiA8c25pcCByZW1haW5pbmcgcGF0Y2g+ DQoNCg0KU29ycnksIEkgc2hvdWxkIGhhdmUgaW5jbHVkZWQgYWxsIGZyb20gdGhlIG9yaWdpbmFs IChSRkMpIGRpc2N1c3Npb24uDQoNCg0K