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 73281A09EF; Wed, 16 Dec 2020 15:53:31 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BDF3FC9C0; Wed, 16 Dec 2020 15:53:29 +0100 (CET) Received: from nat-hk.nvidia.com (nat-hk.nvidia.com [203.18.50.4]) by dpdk.org (Postfix) with ESMTP id 61BFDC9BA for ; Wed, 16 Dec 2020 15:53:26 +0100 (CET) Received: from HKMAIL102.nvidia.com (Not Verified[10.18.92.9]) by nat-hk.nvidia.com (using TLS: TLSv1.2, AES256-SHA) id ; Wed, 16 Dec 2020 22:53:25 +0800 Received: from HKMAIL103.nvidia.com (10.18.16.12) by HKMAIL102.nvidia.com (10.18.16.11) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 16 Dec 2020 14:53:22 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.171) by HKMAIL103.nvidia.com (10.18.16.12) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Wed, 16 Dec 2020 14:53:21 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A62SE145rTRkh4JWK2Uhx93/3N5KaEqFzq/NJgi5JauBBE5VDQQyAh/z6J5o2KoXjbcIrDlL91R7MlAjIpU/8qrZRghxLb6yKY16x7RvHfTflLAabWgaxbXQOhHfJh003KiXRpKOoiHVYOwndoqCyO4XNxiXFBbmShE9GBBroLm59Wbd2/GeAfXzfa6fjQ1sPQ83GdVyoU7PWZzbwKG9iFD+s0bemaFmqIxnkkpmH0uP9f72hsxpnFkgssMkCCtzIS2NRzTCip57Loj/iqA/DVrZK9438LnIfgWLr0c621s0sNIjFVOARzD2IIdhKFvK7VneI+2bX634b3Ug5JN9eA== 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=4qgthEaA7oQQZDYec+yS47XoMPhsXm7FICAlzR0yiM8=; b=PnfD0Cf9j+orSA1GXT/kRNHn6ebk6vRVvZ+cyr9/i5gBnKHkuthGGPjk0rOBh2+7tScW0oxjGU69dQYXL4MD+eSgD5eOmB0eZ60LNSSRN2A1ZFqUocEHCmHOrrzlOjtFKaWLw9tNVazipCHAv+j1DH7ObmE+aYjrlpPm2aHRBk+pO5FQwj5botVmaFbwwxAHN0XXubKThIxvAwVjK45eDrAFkQlAwVR789lSFwUPMd40g2fJgEqaZ7qndsbCZDqx8JoKUPVvn4qQYSuGdBKN676qqKnyY0akotTIOBpe/3uww3djA6AcFslZL9euIuW5dKCfdo111aO407CJEkjL6g== 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 DM6PR12MB3945.namprd12.prod.outlook.com (2603:10b6:5:1c2::27) by DM6PR12MB3131.namprd12.prod.outlook.com (2603:10b6:5:11d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.17; Wed, 16 Dec 2020 14:53:18 +0000 Received: from DM6PR12MB3945.namprd12.prod.outlook.com ([fe80::fc92:3e29:29d1:27b2]) by DM6PR12MB3945.namprd12.prod.outlook.com ([fe80::fc92:3e29:29d1:27b2%6]) with mapi id 15.20.3654.025; Wed, 16 Dec 2020 14:53:18 +0000 From: Tal Shnaiderman To: "Dmitry Malloy (MESHCHANINOV)" , Stephen Hemminger CC: Dmitry Kozlyuk , Narcisa Ana Maria Vasile , Eilon Greenstein , "Omar Cardona" , Rani Sharoni , "Odi Assli" , Harini Ramakrishnan , NBU-Contact-Thomas Monjalon , "dev@dpdk.org" Thread-Topic: [EXTERNAL] Re: [dpdk-dev] Windows DPDK real-time priority threads causing thread starvation Thread-Index: AdbONYWvtK4WZhcIQAeTWkc2TKlT0AAEBP4AAAARpHABXTFFAA== Date: Wed, 16 Dec 2020 14:53:18 +0000 Message-ID: References: <20201209080858.168e4c52@hermes.local> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=66f2d9db-e244-46b6-8d79-8b008108c93d; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-12-09T16:10:56Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; authentication-results: microsoft.com; dkim=none (message not signed) header.d=none;microsoft.com; dmarc=none action=none header.from=nvidia.com; x-originating-ip: [77.137.141.17] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 26803e8a-6425-4223-c414-08d8a1d2536b x-ms-traffictypediagnostic: DM6PR12MB3131: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: u88isaIiFi5w6xJwatpwGSKEc7umcLMe1ZGcwVhKJPDHzFtrZrkyzomXjrtW1oVVe1zHGV2IQnso3JBf17GUYnObUxhAlODkhfCaciptitFsKpSyAhZLRIl/fOpen2hpZ5dLY1ojS8Mp03up9w++dzyu2PlmsW8SrmPjx2901AB3OF/B91q+D6EGrvM6ck9mAnwY1MmTqoqKcDvgoZ41MVr2LDz3yqzG5I6cdaQv2tFLDneuifXwJ9QWQrcdzpj0Caix8RlOv3eXjwVG0y9NVfUJv/XWJnp2ekCAcbDY8J1ynp9MaBOEk6l8LKL0A9/ZrYExa2bC9Na2YNAD+4+7AF6AWO8lHWUzRJVe8Acy+bmtZDSSEBKPsLrEWr+hxPXiBbyY1Z3LbfHZRkaAl2lpJw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR12MB3945.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(366004)(346002)(136003)(39860400002)(376002)(186003)(2906002)(316002)(66946007)(83380400001)(8676002)(4326008)(5660300002)(110136005)(478600001)(7696005)(8936002)(76116006)(6506007)(9686003)(26005)(45080400002)(66446008)(66556008)(54906003)(86362001)(64756008)(55016002)(33656002)(53546011)(66476007)(71200400001)(966005)(52536014); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?TmtuenZsNDllcS9UUXJ5MXVreVJKTTlCZ3lHUnp6azY0aGlEbFpYSnptZ2pG?= =?utf-8?B?YUhOczVFVW9FQnlyWjdzWjR4ZXYzWXFBQmFobU5ERml6YmFWTmZ4MGc3SzEx?= =?utf-8?B?Z3JVLzg0ZC90azIyZDhPbnBNMVhXVlZKcjJmTEh1ZG12bm1SbEhjdnhxSTJZ?= =?utf-8?B?SEt2UnFodTNvZG1GWDJJOGVlK0xCV1IxOVB0N1E0R0NyQ1B6TUVPbytwK2ZP?= =?utf-8?B?MlVoOWNFYk10bHgyczdqT1JEemlld2tHallDbEtLRlc2L2dxTzR4Z0pWZFNr?= =?utf-8?B?Rk1VUDJOSk1QYWNLeTBiMU1qWEJXL085Z0JLY3Y5UStWSWJyRnZaT2VQcng5?= =?utf-8?B?dFgvTWtVM01CWWRyTjNUdUNQSlg2ekVMVmVlYmpoWXorN2JjNEF5aXJtd3Vt?= =?utf-8?B?UW04eWhwSUEveEl2NUNWSDlMWTBnMGFJR2xTV0VsZHdyWGZUTDBNTmx5bnp0?= =?utf-8?B?WlNXcVhDMVdadG01NUhIejZ2REhIU1FKQW9seXBOdXk2RE0wUG1OVGVIcXVU?= =?utf-8?B?dGRxUkt6M1pXQUxDQkhHN3hKY2p5dVl4eEZleGUwSjl4K200ZS9oVlBNY1lj?= =?utf-8?B?Y2xPZWVId1IrWjRrTHVwOGpuNDhzeFRRLzVVSUoxdW9XQ1BscmtoK1I2RDRz?= =?utf-8?B?Q05DVW43aDMrbGNyVFdYcENEK3cwWFVzdTdWbTZVUU5KSjd2L3k0a1ZxbWMx?= =?utf-8?B?TjlMZDhwcVhCVk1tZGZWNlRlVGQ1NkQ4VFZ4aFdEeVZ2QTdpMkFrOVZYNUF1?= =?utf-8?B?YXJ0bVBZaGhlOHJJU2p6VDhMOEVTM2Nmc0E5RUtwc25KbFQ3bm5CL1dsa0Zy?= =?utf-8?B?Sy9YcENvSDdYdlVFWUw1VE82aWFORlovQ0xNM3JJV2lwUGMzRXlZSVZuU0t2?= =?utf-8?B?UXdkcm0zS1RxTkNVZFRTT0ZzQVBBYmRnMTdLTnBscHBWUUJZeFFnK2l6eTlm?= =?utf-8?B?Y3RlU0NtWWpYcm5pb3hySkYzVDVmNEJsd3NWY2wrT2tUaDFrWGpBbEl2ek54?= =?utf-8?B?V2g4MFpTM0xtM2IxQ1VPb3dXblMvWFN1NGo4cERnNkJZSG9LRmZhL1IyVlZT?= =?utf-8?B?by9GSXdqSFRZSCt1d1dVd0dEOFJORnpGWEprQkRLbFppZGJaUVlPdVlDQ29n?= =?utf-8?B?VWxwWkM1L2JvekRWWWdRQzhzbElvVDNaK3hDVFhrbmZwbGhzMDlUS0I3RUFV?= =?utf-8?B?UStoMjhtd2I0bTBUTzkxMG9kZk8wKzlCQytONW4zRHFnTENPczJsazJlZU56?= =?utf-8?B?aTgvQVNBR2JEUjZuRHl3WVdCd05GVGJCYjN2bTlPQ0pWUUZhTlAraHZvNS9N?= =?utf-8?Q?/JgQa0ggt5xcI=3D?= 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: DM6PR12MB3945.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 26803e8a-6425-4223-c414-08d8a1d2536b X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Dec 2020 14:53:18.6121 (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: KnJ8dwXfrpCiVDNspr9ofnKsbohtYGaBTkvKiB4mBf18PVdo4+PGexO4SpPsOm7/Mdm+h4fhfriy3xBYqIDvsQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3131 X-OriginatorOrg: Nvidia.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1608130405; bh=4qgthEaA7oQQZDYec+yS47XoMPhsXm7FICAlzR0yiM8=; 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:msip_labels:authentication-results: x-originating-ip:x-ms-publictraffictype: x-ms-office365-filtering-correlation-id:x-ms-traffictypediagnostic: x-ld-processed:x-ms-exchange-transport-forked: 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: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=ctLnJT+wjD7/IRvnw2Jd3lbmjmKMbBmzzuoUDUhWWTcx/DoKQ8tf9pFHLCgEXbQ6D vy5MSgOq/XdaAuzRZc+sAnvGAsgHpHEnFHJBWsSbRrMw+MXcPree8eAz6YyDSwcKp4 nIkyegOSaPfNyGL4ptabNH1BIEdCdd3DUmjGCEwt8ElNO3emwWBDK8HW3/i4cAx2Kr aQPP209eHHIRWUkaEQDy/FuorG8JKk5JTcrxwgVRQtok2m+QmQnfPzh1LjOf/hhMQl XaIiMwRcMcWDhgofrpMRYlnQ3/ATnCNxmnQP+BPL6zu7XD+hYnrmZCxbME7bSDWMeC HiTb9UczbVhyg== Subject: Re: [dpdk-dev] [EXTERNAL] Re: Windows DPDK real-time priority threads causing thread starvation 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" SXQgd2FzIHN1Z2dlc3RlZCBieSBEbWl0cnlNIGluIHRoZSBsYXN0IERQREsgV2luZG93cyBjb21t dW5pdHkgY2FsbCB0byBoYXZlIHRoZSBwcmlvcml0eSBwYXJhbWV0ZXIgY29uZmlndXJhYmxlIChh dCBsZWFzdCBmb3IgV2luZG93cykgdG8gYWxsb3cgdXNlciB0byByZWR1Y2UgdGhlIHRocmVhZCBw cmlvcml0eSBhbmQgYXZvaWQgdGhlIGlzc3VlcyBtZW50aW9uZWQgYmVsb3cuDQoNCj4gU3ViamVj dDogUkU6IFtFWFRFUk5BTF0gUmU6IFtkcGRrLWRldl0gV2luZG93cyBEUERLIHJlYWwtdGltZSBw cmlvcml0eQ0KPiB0aHJlYWRzIGNhdXNpbmcgdGhyZWFkIHN0YXJ2YXRpb24NCj4gDQo+IFRoZXJl IGlzIGEgY29uZmlndXJhdGlvbiBpbiBXaW5kb3dzIHNpbWlsYXIgdG8gTGludXggaXNvbGNwdXMg d2hlcmUgc2NoZWR1bGVyDQo+IHRyaWVzIG5vdCB0byBydW4gYW55dGhpbmcgb24gc3VjaCBjb3Jl cywgYW5kIGltcGxlbWVudGF0aW9uIGlzIGJlaW5nDQo+IGVuaGFuY2VkIGZvciB0aGUgbmV4dCBX aW5kb3dzIHJlbGVhc2Ugd2l0aCBVc2VyLW1vZGUgdm1zd2l0Y2gNCj4gZmVlZGJhY2suDQo+IA0K PiBJJ2xsIGRpZyBvdXQgdGhlIGRldGFpbHMuDQo+IA0KPiBEbWl0cnkNCj4gDQo+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFN0ZXBoZW4gSGVtbWluZ2VyIDxzdGVwaGVuQG5l dHdvcmtwbHVtYmVyLm9yZz4NCj4gU2VudDogV2VkbmVzZGF5LCBEZWNlbWJlciA5LCAyMDIwIDg6 MDkgQU0NCj4gVG86IFRhbCBTaG5haWRlcm1hbiA8dGFsc2huQG52aWRpYS5jb20+DQo+IENjOiBE bWl0cnkgS296bHl1ayA8ZG1pdHJ5LmtvemxpdWtAZ21haWwuY29tPjsgRG1pdHJ5IE1hbGxveQ0K PiAoTUVTSENIQU5JTk9WKSA8ZG1pdHJ5bUBtaWNyb3NvZnQuY29tPjsgTmFyY2lzYSBBbmEgTWFy aWEgVmFzaWxlDQo+IDxOYXJjaXNhLlZhc2lsZUBtaWNyb3NvZnQuY29tPjsgRWlsb24gR3JlZW5z dGVpbiA8ZWlsb25nQG52aWRpYS5jb20+Ow0KPiBPbWFyIENhcmRvbmEgPG9jYXJkb25hQG1pY3Jv c29mdC5jb20+OyBSYW5pIFNoYXJvbmkNCj4gPHJhbmlzaEBudmlkaWEuY29tPjsgT2RpIEFzc2xp IDxvZGlhQG52aWRpYS5jb20+OyBIYXJpbmkgUmFtYWtyaXNobmFuDQo+IDxIYXJpbmkuUmFtYWty aXNobmFuQG1pY3Jvc29mdC5jb20+OyB0aG9tYXMgPHRob21hc0Btb25qYWxvbi5uZXQ+Ow0KPiBk ZXZAZHBkay5vcmcNCj4gU3ViamVjdDogW0VYVEVSTkFMXSBSZTogW2RwZGstZGV2XSBXaW5kb3dz IERQREsgcmVhbC10aW1lIHByaW9yaXR5DQo+IHRocmVhZHMgY2F1c2luZyB0aHJlYWQgc3RhcnZh dGlvbg0KPiANCj4gT24gV2VkLCA5IERlYyAyMDIwIDE0OjE1OjMwICswMDAwDQo+IFRhbCBTaG5h aWRlcm1hbiA8dGFsc2huQG52aWRpYS5jb20+IHdyb3RlOg0KPiANCj4gPiBIaSwNCj4gPg0KPiA+ IER1cmluZyBvdXIgdmVyaWZpY2F0aW9uIHRlc3RzIG9uIFdpbmRvd3MgRFBESyB3ZSd2ZSBub3Rp Y2VkIHRoYXQgRFBESw0KPiBwb2xsaW5nIHRocmVhZHMsIHdoaWNoIHJ1biBpbiBSRUFMVElNRV9Q UklPUklUWV9DTEFTUyBhcmUgY2F1c2luZw0KPiBzdGFydmF0aW9uIHRvIG90aGVyIHRocmVhZHMg ZnJvbSB0aGUgT1Mgd2hpY2ggbmVlZCB0byBjaGFuZ2UgYWZmaW5pdHkgYW5kDQo+IHJ1biBpbiBs b3dlciBwcmlvcml0eS4NCj4gPg0KPiA+IFdoaWxlIHJ1bm5pbmcgYW4gYXBwbGljYXRpb24gZm9y IGEgd2hpbGUgd2Ugc2VlIHRoZSBPUyB0aHJlYWQgd2FpdHMgZm9yIDI6MzANCj4gbWludXRlcyBh bmQgcmFpc2VzIGEgYnVnY2hlY2ssIHNlZSBiZWxvdyBleGFtcGxlIG9mIHN1Y2ggZmxvdzoNCj4g Pg0KPiA+IDEpIERQREsgdGhyZWFkIHJ1bm5pbmcgb24gY29yZS0wIGluIHJlYWwtdGltZSBoaWdo IHByaW9yaXR5KDI0KSBwb2xsaW5nDQo+IG1vZGUuDQo+ID4gMikgVGhlIHRocmVhZCBpcyBibG9j a2luZyB0aGUgc3lzdGVtIGZ1bmN0aW9uwqBOdFNldFN5c3RlbUluZm9ybWF0aW9uDQo+ID4gKEV4 cFVwZGF0ZVRpbWVyQ29uZmlndXJhdGlvbikgaW4gYW5vdGhlciB0aHJlYWQgZnJvbQ0KPiA+IMKg IMKgc3dpdGNoaW5nIHRvIGNvcmUtMCB2aWHCoEtlU2V0U3lzdGVtR3JvdXBBZmZpbml0eVRocmVh ZCBzaW5jZSB0aGUNCj4gPiBjYWxsaW5nIHRocmVhZCBpcyBwcmlvcml0eSAxNS4NCj4gPiAzKSBO dFNldFN5c3RlbUluZm9ybWF0aW9uIGV4Y2x1c2l2ZWx5wqBhY3F1aXJlZCBzeXN0ZW0td2lkZSBs b2NrDQo+ID4gKEV4cFRpbWVSZWZyZXNoTG9jaykgaGVuY2UNCj4gPiDCoCDCoCBpdCBibG9ja3Mg b3RoZXIgdGhyZWFkcyAoZS5nLiBjYWxsaW5nwqBOdFF1ZXJ5U3lzdGVtSW5mb3JtYXRpb24pLg0K PiA+DQo+ID4gV2UndmUgc2VlbiB0aGlzIGJlaGF2aW9yIG9ubHkgd2hpbGUgcnVubmluZyBvbiBX aW5kb3dzIDIwMTkgVk1zLCBtYXliZQ0KPiBvbiBuYXRpdmUgbWFjaGluZXMgT1Mgc2NoZWR1bGlu ZyBvZiBzdWNoIGZsb3cgaXMgZG9uZSBkaWZmZXJlbnRseT8NCj4gPg0KPiA+IEJlbG93IGlzIHVz YWdlIGV4cGxhbmF0aW9uIGZyb20gdGhlIGRvY3VtZW50YXRpb24gb2YgU2V0UHJpb3JpdHlDbGFz cyBbMV06DQo+ID4NCj4gPiAtIFJFQUxUSU1FX1BSSU9SSVRZX0NMQVNTDQo+ID4gUHJvY2VzcyB0 aGF0IGhhcyB0aGUgaGlnaGVzdCBwb3NzaWJsZSBwcmlvcml0eS4gVGhlIHRocmVhZHMgb2YgdGhl IHByb2Nlc3MNCj4gcHJlZW1wdCB0aGUgdGhyZWFkcyBvZiBhbGwgb3RoZXIgcHJvY2Vzc2VzLCBp bmNsdWRpbmcgb3BlcmF0aW5nIHN5c3RlbQ0KPiBwcm9jZXNzZXMgcGVyZm9ybWluZyBpbXBvcnRh bnQgdGFza3MuIEZvciBleGFtcGxlLCBhIHJlYWwtdGltZSBwcm9jZXNzIHRoYXQNCj4gZXhlY3V0 ZXMgZm9yIG1vcmUgdGhhbiBhIHZlcnkgYnJpZWYgaW50ZXJ2YWwgY2FuIGNhdXNlIGRpc2sgY2Fj aGVzIG5vdCB0bw0KPiBmbHVzaCBvciBjYXVzZSB0aGUgbW91c2UgdG8gYmUgdW5yZXNwb25zaXZl Lg0KPiA+DQo+ID4gU28gSSBhc3N1bWUgdXNpbmcgdGhpcyBraW5kIG9mIHRocmVhZCBmb3IgYSBs b25nIHBlcmlvZCBhcyB3ZSBkbyBjYW4gY2F1c2UNCj4gdW5zdGFibGUgYmVoYXZpb3IuDQo+ID4N Cj4gPiBIb3cgZG8geW91IHRoaW5rIHdlIGNhbiByZXNvbHZlIHRoaXM/IEFyZSB0aGVyZSBzdWNo IGNhc2VzIGluIExpbnV4Pw0KPiA+DQo+ID4gWzFdIC0NCj4gPg0KPiBodHRwczovL25hbTA2LnNh ZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZkb2NzDQo+ ID4gLm1pY3Jvc29mdC5jb20lMkZlbi0NCj4gdXMlMkZ3aW5kb3dzJTJGd2luMzIlMkZhcGklMkZw cm9jZXNzdGhyZWFkc2FwaSUyRm4NCj4gPiBmLXByb2Nlc3N0aHJlYWRzYXBpLQ0KPiBzZXRwcmlv cml0eWNsYXNzJmFtcDtkYXRhPTA0JTdDMDElN0NkbWl0cnltJTQwbWljcg0KPiA+DQo+IG9zb2Z0 LmNvbSU3QzYyMzg0NGMxMmJjMjQ0MGQzYmJkMDhkODljNWNjMGYxJTdDNzJmOTg4YmY4NmYxNDFh ZjkxYQ0KPiBiMmQ3DQo+ID4NCj4gY2QwMTFkYjQ3JTdDMSU3QzAlN0M2Mzc0MzEyNjk0Nzk2NDkw NzQlN0NVbmtub3duJTdDVFdGcGJHWnNiDQo+IDNkOGV5SldJam8NCj4gPg0KPiBpTUM0d0xqQXdN REFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsxaGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzEwDQo+ IDAwJmFtcA0KPiA+DQo+IDtzZGF0YT1MU3YlMkYlMkJaTXhVa2ZnY1FWRDc3OHdMNEpiVmRsMnFZ VjF0SGRmVnJFY2s0YyUzRCZhbXA7cg0KPiBlc2VydmVkDQo+ID4gPTANCj4gPg0KPiA+IFRoYW5r cywNCj4gPg0KPiA+IFRhbC4NCj4gDQo+IFRoaXMgaXMgbm90IHVuaXF1ZSB0byBXaW5kb3dzLCBM aW51eCBoYXMgc2FtZSB0aGluZyB3aGVuIHVzaW5nDQo+IFNDSEVEX0ZJRk8uDQo+IFNldHRpbmcg UkVBTFRJTUUgaXMgbm90IGEgbWFnaWMgImdvIGZhc3QiIGZsYWcgaXQgdGVsbHMgc2NoZWR1bGVy IHRvICJydW4gdGhpcw0KPiB0aHJlYWQgYXQgaGlnaGVyIHByaW9yaXR5IHRoYW4ga2VybmVsIi4g IFNldHRpbmcgcmVhbCB0aW1lIGlzIG5vdCBjb21wYXRpYmxlDQo+IHdpdGggYXBwbGljYXRpb25z IGRvaW5nIDEwMCUgcG9sbGluZy4NCj4gDQo+IElmIHlvdSBoYXZlIHRvIHVzZSBSRUFMVElNRSB0 aGVuIGFwcGxpY2F0aW9uIG11c3QgY2hhbmdlIHRvIGRvaW5nDQo+IHNsZWVwL3dha2V1cCB0eXBl IGFyY2hpdGVjdHVyZSwgbm90IHB1cmUgcG9sbGluZy4NCj4gDQo+IFR5cGljYWwgRFBESyBzdHls ZSBhcHBsaWNhdGlvbiBpcyBpbmNvbXBhdGlibGUgd2l0aCBTQ0hFRF9GSUZPL1NDSEVEX1JSLg0K