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 8257BA0C55; Wed, 13 Oct 2021 17:05:43 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4B1CB410DA; Wed, 13 Oct 2021 17:05:43 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id C046240E64 for ; Wed, 13 Oct 2021 17:05:41 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10136"; a="250868150" X-IronPort-AV: E=Sophos;i="5.85,371,1624345200"; d="scan'208";a="250868150" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Oct 2021 08:03:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,371,1624345200"; d="scan'208";a="491498399" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga008.jf.intel.com with ESMTP; 13 Oct 2021 08:03:58 -0700 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 13 Oct 2021 08:03:58 -0700 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) by ORSMSX608.amr.corp.intel.com (10.22.229.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 13 Oct 2021 08:03:57 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Wed, 13 Oct 2021 08:03:57 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.173) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Wed, 13 Oct 2021 08:03:57 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MF8MEE9NFtDOGFEsM85cECVy6gURTShMBtyhuoGMp+QtB1fkqTquSHFbaWEtsfb/RKR5IkxG7pnsBJmf3G0TqKHUP4iG4qTaCO8c5g7O9l+W5WwDZJBjgGGhWWTdmv2o6zLC6RnErG0kDOIdOQ8E4YvzADpaummsbIAIw0wMZMRHpjbH1kC0mx8kuwo1N9ABgZo5+4cbhu/gJYuKSJ8V1bD9NWUXJyTtcge7Tsybifw0rMeA9xZcDlVw9bbIzgFDxxe5IsEkUROBQvhxvFkgRvc2Uz/AjGo295AoxIxpWR7TpuNt3iUUL7yREU+SknjM6OrO4eTm4d0G9cxYodWfjw== 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=G212pRFDz6Ob+ixAt+7IgahZ7uhqqQ4EHoEWvP2tAE0=; b=IQUvxfGjnTkjBKfDNlSFDuVWzCqcymv7054LTvPPoj6s/wXNxSBNrEbMQ8UP6qG5cZJ/vX1RJETAzVOKstGWKNGuCjOBJ/pjOvLR3rxdVygh/P2UqkVFl8MJwog2UvBySpn6JaxKQg4vgMhOHGUf+9O1xHCd1nwtUDdYugIY4/4dy6yy+swFA7KxznhHA4g7JdXKxj6tRckQNOTj13Lmjz0WDU9nkyPfFUpH2goEZNJUwR6AffXRzDpwvNIGpGnviTru8o9Uf18keS/5MQlfFbBX8JaHA7G3ZmXId4n/6AYRjHHizThE7MG61kkLBfSQ7dGfMo6MB9fRp3wQ8RDzDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=G212pRFDz6Ob+ixAt+7IgahZ7uhqqQ4EHoEWvP2tAE0=; b=IYScy6HOyy1VSHh02kCCK8Ji9Gmg5c/AQxoevYdCcFlX5UEVuVmzQ2ktEzp6qBxwSPs9BOxbZH4xWMbZ/K+5Q0feQECBQ52TsYokro1Lz1Vvlam+O8KgRXN52ucfQX3wse66jHeyfrxVqxrrDmATDFtFX9BBTMS+1Se2Dd6pdQs= Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by DM6PR11MB4426.namprd11.prod.outlook.com (2603:10b6:5:1d8::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.25; Wed, 13 Oct 2021 15:03:56 +0000 Received: from DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::740e:126e:c785:c8fd]) by DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::740e:126e:c785:c8fd%4]) with mapi id 15.20.4608.016; Wed, 13 Oct 2021 15:03:56 +0000 From: "Ananyev, Konstantin" To: Feifei Wang , Ruifeng Wang CC: "dev@dpdk.org" , nd , nd Thread-Topic: [dpdk-dev] [RFC PATCH v3 1/5] eal: add new definitions for wait scheme Thread-Index: AQHXsqBwAQapdLYqQES5YqgeHmEsl6vHwR2wgAdarYCAAgQZEA== Date: Wed, 13 Oct 2021 15:03:56 +0000 Message-ID: References: <20210902053253.3017858-1-feifei.wang2@arm.com> <20210926063302.1541193-1-feifei.wang2@arm.com> <20210926063302.1541193-2-feifei.wang2@arm.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a32c61ea-6b88-4a22-5dda-08d98e5aade0 x-ms-traffictypediagnostic: DM6PR11MB4426: 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: 9SfRHHOnL7qZTarCt/4AHwW6DtFL9rbkLiN/5YAGYAjtDxhd1MC4NoBW7bNADuU3K8lhQ0Dznz43cUlL+vsUXd/ugF2CMwvCQibHb7HQ4x+7e3KLP86XWsAjt/ctfjNAqcWC6rNVHGCQ80hrQiNmAvjMhcUaNsA1777RhrFVzCOff+xq1xx2082xlTDj0EjjF8VfTVPHKpY32jd5uN/spAntKa8mvDY55dans/xqVmJ+Y5SdIg3T78fM8P9uUYmlf9S38YfqHekUf1fPujbPWVT3DDNTLGoVM5MSmQQ1sPnqZ1hq5D1KBh6gVIX7ERfWuYwnKXC8tOnQvNXDsYfFoiEezumULL0slAEdGppMm43rv2jEv6Z+kulsIuw24PfMG8KhviXCHSdBfnZNfZlA/GtnumwLeBbBUBX1fYCUK8tqdmCHV+yujjOSaGQtFjmLu35uePshbwGRJtLEZiHkWJ+FUiHj7KhLPUEjZxsIkIpVLgYvypq4ymgsPmbj3twPQqdv01ttuVOP8cexVt5job/KCSA4upKoBrDBRFDnThu+u8SfdKOA+pNytAd2VfTte/Cxvk0maHIRVmSjspzGeZWsZg/8YhAPGrmZgk+Ublr5OKTLMtU1arHAlGv2O48lspSCHg+12mxVF7zo3f54G2Xqio/CPxCMsubz3CQu01eAQUu78awDAfQqtNoGAYwkprgdmBmjjxUpDhXkZ6dgRg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB4491.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(33656002)(186003)(2906002)(55016002)(316002)(86362001)(83380400001)(5660300002)(110136005)(54906003)(9686003)(8676002)(8936002)(71200400001)(66946007)(38070700005)(76116006)(4326008)(52536014)(82960400001)(64756008)(7696005)(6506007)(55236004)(38100700002)(122000001)(66556008)(66476007)(508600001)(66446008)(26005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WkJ0MFQ3MFVnU3NubmNtYXI0YlJVT0pvMFg1V0pMWTc1STNCdDBENElpWUF6?= =?utf-8?B?SnRlTjFBSkZBa1ZBVnVhT081R0NWRWorcTI1NktjR25mcnl2czMvZXV4aXdB?= =?utf-8?B?a3N0TDJucU12V3NDT3RTSTNneHhsZWQwS3NPMzR5eHhITUgrL1VVcEdMTExK?= =?utf-8?B?b1d0KzZTTXYyZ2VQcDB6OUlDK2l4eklmcEFhdlhGOXg4Qm80dEtEV2ZCZUN6?= =?utf-8?B?cVp1L3RDZ2ZjYzZXVDlHbDhocW9tYU9RSms0UVlhRjRZMkVTZHUwLy9RNDJh?= =?utf-8?B?bXRsN3ZiS0UrOC8rMnZUWEMraWtTb2N6V3JsOTdrbW1NTVd4bnJOQUgxM3Bq?= =?utf-8?B?c3l2Y2VaVGg2Nlk3TnFmckc1K0lIa1BqQ01LSXdiQmU1NlFwS1o4VUFKVjhq?= =?utf-8?B?OUEzZmx6ZXVFWjZzTVorSGNRdmRHeURoS04waHhwTWpDR0Q1YmZiajF2SG1D?= =?utf-8?B?b3lXVHR5Y2txczl3WkJpcGRObUduMXBSWVh3ckh2aWRVYW83Q0pOR1IwY3ZE?= =?utf-8?B?Zi9zSVdubGhWTzE4VW1mVm9nTFNaNjFFSlJHRHNmWXkzTmtId2FZY1BqRXlQ?= =?utf-8?B?TWp6MjhKMlMvb1gxODl4MlkvU3JpZ2graGEyZEh2SXN4WEhPcWVzY09hREE1?= =?utf-8?B?Qk5WellBREkvMWMzTW5wYnRZa3JSNktWZFV5MWdwNHA3cHBRc0dhSW9ULzFu?= =?utf-8?B?U0xET21QelBxTVNGZ2doMmEvS2JScitpdk93SW5QUE5tT2FSQU0zN3VML3dJ?= =?utf-8?B?S21IRVhpSkYrcll1ZHRsbUxnejNNMkZlZmYwTHVVeEw1dC9WdFRyWjJCWVRr?= =?utf-8?B?MFJoOVl1MStIRkp1d3gwM0UxZmErNG9KUThFeXRxY1lZOFhXL3ZNcW82M2RS?= =?utf-8?B?dGxsVGt0SlRQYkV3Qkh0WW9uYnBxbGJqS0pjaGw4YjBXNjZLTXRNMFJUWDBv?= =?utf-8?B?OHlkSGx6d045Yk5RT2E2MisxZ3pSRGhDRlEvTHVBNUNBNnRDckM0bkM2ZUoz?= =?utf-8?B?RnZpMXNzMDJzcjg5VmhQYjlST1JoKzFEd2p0bmJ0emF1ekNzcUVtR1hodkI5?= =?utf-8?B?VFMraHh2dEovYUhkRkRiOHUxODQ5bTdJbXJmWnRZK0R2WXgxeDVXaXlRajdi?= =?utf-8?B?TFNMMnVJR2ZPamRFMWxtVlUwdmVYV0pjYXBtV2dQMk1EL0lUVHpWOWQrT1VH?= =?utf-8?B?SDJIZks1by9HYnQzaVhidXJqZEVkc2trZGxPU3JLQjlJK01UL1NrWVRpSklq?= =?utf-8?B?MGRrQTUyTmUxYi9YR0taR2V2VnlUeDNDK3lNWW1IR280SzUyMTZwWjVXWjNm?= =?utf-8?B?cEtYWVFDZThJc1FNa0l5ZU1ML0plUFp2c3UzVi9LWE1OZVpJTkNSYlpZTkht?= =?utf-8?B?Zk55U2RLQjNYMnU5eWpWRm9CZ2x5bTJ1M0o4M3NIK1NyTjdSM0tBWGhCMFZm?= =?utf-8?B?bitKNmRONkRlL1ZBRzd2ZERUczlkbTRlck9RTGRYd0ZTMVo0T2xZcTUrakhY?= =?utf-8?B?TjREalcvaUlERDZ5VTUvRVRzRFlnbk43Q29RSkUvdXlpaHlqREh6bTNzcStj?= =?utf-8?B?VjQ4R3U1U0JzWTduL0YxZHJMNEloKzdFU0dwZVNzakNpQktUMHUvaVM2YWR2?= =?utf-8?B?ZmVPaEZSVG9wOEhwZDhpTThvWnl2K2VjVk1GU2NrMFlwMi9RRDhWK0ZyR2NZ?= =?utf-8?B?SXRhSHhmOWFzL0FKSUJpTmVKa1NrcjFFQThaOXlDUFZic0Q2R205dzVRTjNt?= =?utf-8?Q?/QaCAXjNdycGRz+qMSp/zGHrwDryceXX77uRo/1?= 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: DM6PR11MB4491.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a32c61ea-6b88-4a22-5dda-08d98e5aade0 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Oct 2021 15:03:56.4069 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: /fDS/X0Qtwgfcv5trGkSL49evI5leSjx2Z88ZzFodB3icMGhnaFUPBxtudR/IinRYeoaSxJGP9AMO2idfYYI+JwiVrk8rkuxdL6pTqpl754= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4426 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [RFC PATCH v3 1/5] eal: add new definitions for wait scheme 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" PiANCj4gW3NuaXBdDQo+IA0KPiA+ID4gZGlmZiAtLWdpdCBhL2xpYi9lYWwvaW5jbHVkZS9nZW5l cmljL3J0ZV9wYXVzZS5oDQo+ID4gPiBiL2xpYi9lYWwvaW5jbHVkZS9nZW5lcmljL3J0ZV9wYXVz ZS5oDQo+ID4gPiBpbmRleCA2NjhlZTRhMTg0Li40ZTMyMTA3ZWNhIDEwMDY0NA0KPiA+ID4gLS0t IGEvbGliL2VhbC9pbmNsdWRlL2dlbmVyaWMvcnRlX3BhdXNlLmgNCj4gPiA+ICsrKyBiL2xpYi9l YWwvaW5jbHVkZS9nZW5lcmljL3J0ZV9wYXVzZS5oDQo+ID4gPiBAQCAtMTExLDYgKzExMSw4NCBA QCBydGVfd2FpdF91bnRpbF9lcXVhbF82NCh2b2xhdGlsZSB1aW50NjRfdCAqYWRkciwNCj4gPiB1 aW50NjRfdCBleHBlY3RlZCwNCj4gPiA+ICAJd2hpbGUgKF9fYXRvbWljX2xvYWRfbihhZGRyLCBt ZW1vcmRlcikgIT0gZXhwZWN0ZWQpDQo+ID4gPiAgCQlydGVfcGF1c2UoKTsNCj4gPiA+ICB9DQo+ ID4gPiArDQo+ID4gPiArLyoNCj4gPiA+ICsgKiBXYWl0IHVudGlsIGEgMTYtYml0ICphZGRyIGJy ZWFrcyB0aGUgY29uZGl0aW9uLCB3aXRoIGEgcmVsYXhlZA0KPiA+ID4gK21lbW9yeQ0KPiA+ID4g KyAqIG9yZGVyaW5nIG1vZGVsIG1lYW5pbmcgdGhlIGxvYWRzIGFyb3VuZCB0aGlzIEFQSSBjYW4g YmUgcmVvcmRlcmVkLg0KPiA+ID4gKyAqDQo+ID4gPiArICogQHBhcmFtIGFkZHINCj4gPiA+ICsg KiAgQSBwb2ludGVyIHRvIHRoZSBtZW1vcnkgbG9jYXRpb24uDQo+ID4gPiArICogQHBhcmFtIG1h c2sNCj4gPiA+ICsgKiAgQSBtYXNrIG9mIHZhbHVlIGJpdHMgaW4gaW50ZXJlc3QNCj4gPiA+ICsg KiBAcGFyYW0gZXhwZWN0ZWQNCj4gPiA+ICsgKiAgQSAxNi1iaXQgZXhwZWN0ZWQgdmFsdWUgdG8g YmUgaW4gdGhlIG1lbW9yeSBsb2NhdGlvbi4NCj4gPiA+ICsgKiBAcGFyYW0gY29uZA0KPiA+ID4g KyAqICBBIHN5bWJvbCByZXByZXNlbnRpbmcgdGhlIGNvbmRpdGlvbiAoPT0sICE9KS4NCj4gPiA+ ICsgKiBAcGFyYW0gbWVtb3JkZXINCj4gPiA+ICsgKiAgVHdvIGRpZmZlcmVudCBtZW1vcnkgb3Jk ZXJzIHRoYXQgY2FuIGJlIHNwZWNpZmllZDoNCj4gPiA+ICsgKiAgX19BVE9NSUNfQUNRVUlSRSBh bmQgX19BVE9NSUNfUkVMQVhFRC4gVGhlc2UgbWFwIHRvDQo+ID4gPiArICogIEMrKzExIG1lbW9y eSBvcmRlcnMgd2l0aCB0aGUgc2FtZSBuYW1lcywgc2VlIHRoZSBDKysxMSBzdGFuZGFyZA0KPiA+ ID4gK29yDQo+ID4gPiArICogIHRoZSBHQ0Mgd2lraSBvbiBhdG9taWMgc3luY2hyb25pemF0aW9u IGZvciBkZXRhaWxlZCBkZWZpbml0aW9uLg0KPiA+ID4gKyAqLw0KPiA+DQo+ID4gSG1tLCBzbyBu b3cgd2UgaGF2ZSAyIEFQSXMgZG9pbmcgc2ltaWxhciB0aGluZzoNCj4gPiBydGVfd2FpdF91bnRp bF9lcXVhbF9uKCkgYW5kIHJ0ZV93YWl0X2V2ZW50X24oKS4NCj4gPiBDYW4gd2UgcHJvYmFibHkg dW5pdGUgdGhlbSBzb21laG93Pw0KPiA+IEF0IGxlYXN0IG1ha2UgcnRlX3dhaXRfdW50aWxfZXF1 YWxfbigpIHRvIHVzZSBydGVfd2FpdF9ldmVudF9uKCkgdW5kZXJuZWF0aC4NCj4gPg0KPiBZb3Ug YXJlIHJpZ2h0LiBXZSBwbGFuIHRvIGNoYW5nZSBydGVfd2FpdF91bnRpbF9lcXVhbCBBUEkgYWZ0 ZXIgdGhpcyBuZXcgc2NoZW1lDQo+IGlzIGFjaGlldmVkLiAgQW5kIHRoZW4sIHdlIHdpbGwgbWVy Z2Ugd2FpdF91bmlsIGludG8gd2FpdF9ldmVudCBkZWZpbml0aW9uIGluIHRoZSBuZXh0IG5ldw0K PiBwYXRjaCBzZXJpZXMuDQo+IA0KPiA+ID4gKyNkZWZpbmUgcnRlX3dhaXRfZXZlbnRfMTYoYWRk ciwgbWFzaywgZXhwZWN0ZWQsIGNvbmQsIG1lbW9yZGVyKQ0KPiA+IAkJICAgICAgIFwNCj4gPiA+ ICtkbyB7CQkJCQkJCQkJICAgICAgIFwNCj4gPiA+ICsJYXNzZXJ0KG1lbW9yZGVyID09IF9fQVRP TUlDX0FDUVVJUkUgfHwgbWVtb3JkZXIgPT0NCj4gPiA+ICtfX0FUT01JQ19SRUxBWEVEKTsgIFwN Cj4gPg0KPiA+IEFuZCB3aHkgdXNlciBpcyBub3QgYWxsb3dlZCB0byB1c2UgX19BVE9NSUNfU0VR X0NTVCBoZXJlPw0KPiBBY3R1YWxseSB0aGlzIGlzIGp1c3QgYSBsb2FkIG9wZXJhdGlvbiwgYW5k IGFjcXVpcmUgaGVyZSBpcyBlbm91Z2ggdG8gbWFrZSBzdXJlICdsb2FkDQo+IGFkZHIgdmFsdWUn IGNhbiBiZSBiZWZvcmUgb3RoZXIgb3BlcmF0aW9ucy4NCj4gDQo+ID4gQlRXLCBpZiB3ZSBleHBl Y3QgbWVtb3JkZXIgdG8gYWx3YXlzIGJlIGEgY29uc3RhbnQsIG1pZ2h0IGJlIGJldHRlcg0KPiA+ IEJVSUxEX0JVR19PTigpPw0KPiBJZiBJIHVuZGVyc3RhbmQgY29ycmVjdGx5LCB5b3UgbWVhbnMg d2UgY2FuIHJlcGxhY2UgJ2Fzc2VydCcgYnkgJ2J1aWxkX2J1Z19vbic6DQo+IFJURV9CVUlMRF9C VUdfT04obWVtb3JkZXIgIT0gX19BVE9NSUNfQUNRVUlSRSAmJiBtZW1vcmRlciAhPV9fQVRPTUlD X1JFTEFYRUQpOw0KDQpZZXMsIHRoYXQgd2FzIG15IHRob3VnaHQuDQpJbiB0aGF0IGNhc2UgSSB0 aGluayB3ZSBzaG91bGQgYmUgYWJsZSB0byBjYXRjaCB3cm9uZyBtZW1vcmRlciBhdCBjb21waWxh dGlvbiBzdGFnZS4NCg0KPiANCj4gPg0KPiA+ID4gKwkJCQkJCQkJCSAgICAgICBcDQo+ID4gPiAr CXdoaWxlICgoX19hdG9taWNfbG9hZF9uKGFkZHIsIG1lbW9yZGVyKSAmIG1hc2spIGNvbmQgZXhw ZWN0ZWQpDQo+ID4gCSAgICAgICBcDQo+ID4gPiArCQlydGVfcGF1c2UoKTsJCQkJCQkgICAgICAg XA0KPiA+ID4gK30gd2hpbGUgKDApDQo+ID4NCj4gPiBUd28gdGhvdWdodHMgd2l0aCB0aGVzZSBt YWNyb3M6DQo+ID4gMS4gSXQgaXMgYSBnb29mIHByYWN0aXNlIHRvIHB1dCAoKSBhcm91bmQgbWFj cm8gcGFyYW1ldGVycyBpbiB0aGUgbWFjcm8gYm9keS4NCj4gPiBXaWxsIHNhdmUgZnJvbSBhIGxv dCBvZiB1bmV4cGVjdGVkIHRyb3VibGVzLg0KPiA+IDIuIEkgdGhpbmsgdGhlc2UgMyBtYWNyb3Mg Y2FuIGJlIHVuaXRlZCBpbnRvIG9uZS4NCj4gPiBTb21ldGhpbmcgbGlrZToNCj4gPg0KPiA+ICNk ZWZpbmUgcnRlX3dhaXRfZXZlbnQoYWRkciwgbWFzaywgZXhwZWN0ZWQsIGNvbmQsIG1lbW9yZGVy KSBkbyB7XA0KPiA+ICAgICAgICAgdHlwZW9mICgqKGFkZHIpKSB2YWwgPSBfX2F0b21pY19sb2Fk X24oKGFkZHIpLCAobWVtb3JkZXIpKTsgXA0KPiA+ICAgICAgICAgaWYgKCh2YWwgJiAodHlwZW9m KHZhbCkpKG1hc2spKSBjb25kICh0eXBlb2YodmFsKSkoZXhwZWN0ZWQpKSBcDQo+ID4gICAgICAg ICAgICAgICAgIGJyZWFrOyBcDQo+ID4gICAgICAgICBydGVfcGF1c2UoKTsgXA0KPiA+IH0gd2hp bGUgKDEpOw0KPiBGb3IgdGhpcyBwb2ludCwgSSB0aGluayBpdCBpcyBkdWUgdG8gZGlmZmVyZW50 IHNpemUgbmVlZCB0byB1c2UgZGlmZmVyZW50IGFzc2VtYmx5IGluc3RydWN0aW9ucw0KPiBpbiBh cm0gYXJjaGl0ZWN0dXJlLiBGb3IgZXhhbXBsZSwNCj4gbG9hZCAxNiBiaXRzIGluc3RydWN0aW9u IGlzICJsZHhyaCAld1t0bXBdLCBbJXhbYWRkcl0iDQo+IGxvYWQgMzIgYml0cyBpbnN0cnVjdGlv biBpcyAiIGxkeHIgJXdbdG1wXSwgWyV4W2FkZHJdIg0KPiBsb2FkIDY0IGJpdHMgaW5zdHJ1Y3Rp b24gaXMgIiBsZHhyICV4W3RtcF0sIFsleFthZGRyXSAiDQoNCk9rLCBidXQgaXQgY291bGQgYmUg dGhlbiBzb21ldGhpbmcgbGlrZSB0aGF0IGZvciBhcm0gc3BlY2lmaWMgY29kZToNCmlmIChzaXpl b2YodmFsKSA9PSBzaXplb2YodWludDE2X3QpKSBcDQoJX19MT0FEX0VYQ18xNiguLi4pOyBcDQpl bHNlIGlmIChzaXplb2YodmFsKSA9PSBzaXplb2YodWludDMyX3QpKSBcCQ0KCV9fTE9BRF9FWENf MzIoLi4uKTsgXA0KZWxzZSBpZiAoc2l6ZW9mKHZhbCkgPT0gc2l6ZW9mKHVpbnQ2NF90KSkgXA0K CV9fTE9BRF9FWENfNjQoLi4uKTsgXA0KLi4uDQoNCj4gQW5kIGZvciBjb25zaXN0ZW5jeSwgd2Ug YWxzbyB1c2UgMyBBUElzIGluIGdlbmVyaWMgcGF0aC4NCkhvbmVzdGx5LCBldmVuIG9uZSBtdWx0 aS1saW5lIG1hY3JvIGRvZXNuJ3QgbG9vayBuaWNlLg0KSGF2aW5nIDMgaWRlbnRpY2FsIG9uZXMg bG9va3MgZXZlbiB3b3JzZS4NCg0K