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 40784A034C; Sun, 27 Mar 2022 16:49:11 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CFA90406A2; Sun, 27 Mar 2022 16:49:10 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id A9FEB40151 for ; Sun, 27 Mar 2022 16:49:08 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1648392548; x=1679928548; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=GZu1gt49hoWDV0QrZTlxqcPXBPZbmGk6cY+p+u5KMlI=; b=isYusYPDu6m+jg9FuhjodlxAMBv+no57WaUlrqZGRAfGu0rg9xV8Hqbo ecMnA507ROWnI0ce1P1dB0uHvIlgMyouxmt6se0G3gytXeuaS1sZgl6dW VLSnCKaF300ULI5vu60IbGCJSUwPrmC4RoGPtsQ3sJqpap8mx3Y43/mvd 2OW1wQYFy8KI7b1UoSI4lE2ZDlc3XWHscqQ0XDsA/2FNX0t93egEeOCQz 1bhWkEMOM0ewqJZBIzqrfWi9Z9nRrKj7WQBS9Dv8vv+5ZgofFwn17+vRg SZ7+/GuZloelMpW+2QUcPX4OAh1EZ8KZaWOP3BnLetbn12fgPtwpAbldf Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10299"; a="257685366" X-IronPort-AV: E=Sophos;i="5.90,215,1643702400"; d="scan'208";a="257685366" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Mar 2022 07:49:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,215,1643702400"; d="scan'208";a="545640009" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga007.jf.intel.com with ESMTP; 27 Mar 2022 07:49:06 -0700 Received: from fmsmsx605.amr.corp.intel.com (10.18.126.85) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Sun, 27 Mar 2022 07:49:06 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Sun, 27 Mar 2022 07:49:06 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.171) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.21; Sun, 27 Mar 2022 07:49:05 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oAl3W270qi4haQVS9CF6omz8NpDtOTWJtmU3KWXKoB28eBjoW3p655HM2LxeWHM23G9vF2Ndfl5qiVzRJ7vxiCBzIC53nRUlhR7gsgzWBB+xw/tWpZF4lfM2iq6kJUybAqbXh5PFbTfEdGk0csaOWgh9Q1xDvj5PHv1HG4XELdLPDPwd7FgKhYVn6KWPo/zauI4D6fbbS4nxSWuTwNyulSMEEllxmjtmIu/4g9gnSkWrvJ3BTAB/2000wUTHHDK2A69o6TZW7LRuQYk8XDRhLlv8Kjjtzq+gcnjE48rxpEp21h6eC2H4JjeHgH1skIUQxX7XEj90jhHo3YqOiOmn4Q== 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=GZu1gt49hoWDV0QrZTlxqcPXBPZbmGk6cY+p+u5KMlI=; b=FDgAQSg5ss9VIDIdoAFSrN92YWdsZCPbdA4/83BfxVbblsOttu1qzYiJfoyaXpbuV7pXMVWq+NjdOXv5XKuaII3azqW6FhHaP9tOao9ZcSbeQ6ivYSS8FebyRj+/i4qGAhJDelXQ5FsWfOyA4vbKdCVhGT8AUCiSfOqhyRcTWsUZVK+8QBJXWivXJP6L36lkiFgqMWwKKKQSv6ZN2Gvm7bItB2jCRocRYhDKfmPektQxefpkvzNMutaUkZBDQMsXCdg0BBvEAvYDTDnqM6IbXX+NSmnxetF68Ff4uzC44W+NsNEFvboYpTgrfKD8yrdwLxJC6iDLJzX1VtOxFR65mg== 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 Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by BYAPR11MB3304.namprd11.prod.outlook.com (2603:10b6:a03:7a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.19; Sun, 27 Mar 2022 14:49:03 +0000 Received: from DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::ad2b:63fd:4cdd:130d]) by DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::ad2b:63fd:4cdd:130d%4]) with mapi id 15.20.5102.022; Sun, 27 Mar 2022 14:49:02 +0000 From: "Ananyev, Konstantin" To: mattias.ronnblom , "dev@dpdk.org" CC: Thomas Monjalon , David Marchand , "Olsen, Onar" , "Honnappa.Nagarahalli@arm.com" , "nd@arm.com" , "mb@smartsharesystems.com" , "stephen@networkplumber.org" , mattias.ronnblom , Ola Liljedahl Subject: RE: [RFC] eal: add seqlock Thread-Topic: [RFC] eal: add seqlock Thread-Index: AQHYQIaKHXaPgtdbSEGn3Z4qILHbfKzTTrBw Date: Sun, 27 Mar 2022 14:49:02 +0000 Message-ID: References: <20220325202428.94628-1-mattias.ronnblom@ericsson.com> In-Reply-To: <20220325202428.94628-1-mattias.ronnblom@ericsson.com> 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.401.20 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9f69223d-8259-4f45-078b-08da1000ef74 x-ms-traffictypediagnostic: BYAPR11MB3304:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Ol1747dWRLFajd1OXXDsbM9sVhYZQ+poCRnBG3/9KA9Qb7/LptCmiWrdr42xkcWL19IuI0/05sgMkgJXbZygx9a+8SIvvdIeUclWMIetsZoWG0XCnPzFTBqWwN4rK9OaPqYbagllpW2HVsUAJDrFThQywqiVO8FkAcy6dRDfk+zHsL0u4Uh/J+ZZrvhXZweYiX9rZB12/Yw/zNBws2kZkKkRov713belRLpX5EDlbiinYOZJDyJahDjm64NNiSG2VD1PAEI0zWlAHDe9vg6mwKM5N7OdFVUhJrDsGz2M7s2mAS8uV7LGR3txdZ4y7MhxybcbJ6yGZgS5NCxL2IopLKvgH10rlAFc6uTBbJ9lkJacd51WIb26KQehR5TegYTpYmNqrehVEZRNc1kVuW8k7gppajYnfqm9KIEF+nM8dr0gyNJy4iFtEt20b6oso5vk1Jx4gShe1wSCuUMVWZ9P2+N39AOB4SXt05jn0V29CQLM4B7UrVDVpNvj8PYgE52maVx4zHjRqlBy3TPeqBdd2Abr21QNzpMKEku4YaIWp+fnEAA0y+l4N6YFBFEcXa4fdc7ntJgM2GvkrfKznG3mQnOWatO22xAGXxfXP4GzdQ0FOPAfnNKTvnwMFFit7BUNWAtSh7qSRrqYflCmVVn4vBiX177WsoLYpIvTMjohBNb145fbqqsXZkzQFY0QCkbd7mKRPRRm1eqpmz0BJfesO9cKOFJpjTMSdcO5Cfma09zLwDHT4xtRjboBKBouJt5F 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:(13230001)(366004)(26005)(186003)(83380400001)(86362001)(82960400001)(316002)(122000001)(6506007)(9686003)(7696005)(38070700005)(38100700002)(66446008)(2906002)(66476007)(33656002)(64756008)(66556008)(110136005)(66946007)(8676002)(76116006)(52536014)(4326008)(55016003)(5660300002)(7416002)(8936002)(54906003)(71200400001)(508600001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?c2w0RFFoUzZPbU1JYVA2TG5GUmtPUUViRDY5UlRDWXd4U3RnMDVjVDNRZTA0?= =?utf-8?B?d2l0RE9QQ3k5c3kwUk16V29sc2Q4QTZzOUFvOWxPbktYb254ckY2ZGxieU5Y?= =?utf-8?B?ZURZMmxRbGNhUU9BVWQ4azZCT3NMcXdTUFJ4alpCR0N1MzhmREd5eitoTklu?= =?utf-8?B?R3VvT2FpNVgzc0FjZmdVQ09nSzdhSnJ4RVlES0kwbVp1d2ZYWkt3QlJySFNX?= =?utf-8?B?R2xnRGZnMTNTWVQxNm9rakYvZnl3bVJiSVBRTmpMK0ZNa3FKMXFDYXg5VmV0?= =?utf-8?B?OG53cG00MHkyL0J4RnJ4WGRicmk1RzJFRkZQeWVJVy9yN3J0MzFEQVN6SEhG?= =?utf-8?B?VHpIbWtWOHFEOTZzMEJDOUJSQlJaaEg0M3ZMbDVSME04dEkyM0lBTVIvWFk4?= =?utf-8?B?SEdDWG9ZNW1COFRuQTZhdko4NXJoUWY4dHg3ODRNWFh6NkwyVndLbm9SaEtI?= =?utf-8?B?WlRJdDg5YWdOLzhZVFFDOGtDeEJscFJSR3F4K2NRSitySThpWTdZajI5bTFI?= =?utf-8?B?ZVFEYU5NK0JNTldwQ2JkajlRNnN3NDRoUHFPRlh3a0hxcEhXVHowMytsZXla?= =?utf-8?B?cmxWZk5vSW1GN0k5d0ZNMitQcFljMWFvRUtXRkwxUytSdHVwSFl3eFFhVDNj?= =?utf-8?B?cTRqUXBnVzIvRlRoT1I5V25RUkQ1cnQySnhwNnVpWWZvQjZHUllOYjNRbDJY?= =?utf-8?B?b0VuL0svR1Q2azVVaWZOTW42ZlFBbXgrLzFuYUR2T0NXcjFpODhnRktqdHZR?= =?utf-8?B?YTUraUxOckZrdEs2bnpIMEd6VW85NmY2dWJnWHR3cmx4WUdsYklhKzZEbUdr?= =?utf-8?B?SEJaQkRFRXBCZDgvUEVDU0lDSU5FMkFxL1VRZW1BN3NZSVFHS0pjLzhxbHFl?= =?utf-8?B?SThsN2JjcDdZdXJkaGVlcTZTbmdHaXpTTlo2TCsvM2p2QVZYU0pOMzJDMGpi?= =?utf-8?B?QWZPZDZEMlpzRmZycjVCY1ZiWjI3b0p0L0lzTFNHWDNQSUx0aHZqQjlJU1JT?= =?utf-8?B?aUNOc2FUKzBSb2htN0pIS1Q4YUxFRlk5Q2hpZjZnZW5XeTFxOHFuZ0ZDREhr?= =?utf-8?B?bnZ0Wk1uczdtREhnRVNmT1Uwelh2b2RGVlVNWm5sbW5HVnRVNm5WSEpDcWdE?= =?utf-8?B?Sk9nbGxuZ2d6SmFYQmxxc29teGNjd1YvRFBGekdDU1k5MHpnQkNaYUR4alhN?= =?utf-8?B?eDI2S1FGUlhUS0JQUHppSVh0RUJVTE5rZktydnZjWlp1WkdDaXZsV1hYODVi?= =?utf-8?B?TjJETnRIc21LVFB0ZXpoaGZ3WUgwYlhWb253ZlcrTFBqVnE2eXdHQzU3SnJj?= =?utf-8?B?SzRKcXYvaUpIUVBWWTY4Tyt0UktVTi8xNEk3a2x3dVlGVUt1K25Vc0UvQ3Ro?= =?utf-8?B?citLVU1MaU5rRTB4aFY1enJScEt1YUJiZnFobUt5WUFONUJ3OENqYUd5WVlL?= =?utf-8?B?N1psMkxSWTgyTHA2VFhkSGJvaTF5SUVXRi9DdWxSVHpSOEgwRjAxY24vRVVu?= =?utf-8?B?L1ZsdndwaUx0M0VEWDRSdVMzZnQyci9Sa3F4T1E5WkxJZ0NjNXUrRjViaHdk?= =?utf-8?B?U3dlZFdQaGo1RWlFa3p5MDBWUzI2U1F5REZLem9EaW1PRVhZcHd1QkNuRGNE?= =?utf-8?B?dE92ZTMzaldrdFAvYUpqS3kxR1N4RHdrR2dpK0RaODNjeDRHRjdZTzBOV1kr?= =?utf-8?B?S2RzczZvc3pmVXh3VGU4LzBlRjJjdCtKbTFDUUV1YytsQzc1Tjg5UEtQUlNO?= =?utf-8?B?VHNBN3llbStIc0MzVDVWSDRwMkVHa0tyUTNZb241ZjA0QzBaV2s3STNaaUpS?= =?utf-8?B?ZEdsRnJFN0Q2TzQxUnB1MFJOSnlmU2ZOVGZNRDZYOUV1SG56ZDdYN3lXQ2RP?= =?utf-8?B?YVNjY1BjTzhzYmtGYUhoUXhUNzFwZkJ4TkhzaVBqeFpwVWZHSEhkU0gxb3pB?= =?utf-8?B?bzJ0WUlhZ3JkcWNaOUdLZkVvc0V1R29pOTJWcXJjTElYdzdJdndJU1FuZ0M1?= =?utf-8?B?QlJxMEhsdHhJUEMyM0dVa3E4T05xZGwzS0krb2FPWVRJdjJJRjJIK3kvWUs3?= =?utf-8?B?a3FuaVhpa0VRNGhybjBOMndRbFowUG1oZTVja0FUMnNOSjdNT0s0RW9ueGNs?= =?utf-8?B?SC9QNVRUM2FYUmFiTlE2dXcyWm92WWQ0NkdWYVFYNTdYbkxWU2xjMEFzVkdp?= =?utf-8?B?UGVyMTRFMnBHSE9UZWM1U0ZVTDFHeWRYUi93WWF1YnNCUnFKM0Uzdmdpdkht?= =?utf-8?B?bDIwVCtnQlI1aGJzM3dDZ3FETnJXM25IbWdTVnM4NmIxQnVOZHgzOWgyN2hT?= =?utf-8?B?RHZEMVNLZVYyamVwYXlteTR2ZzJESklpMVZ2UHdCYkVaT0MzWUtGSnRPK09S?= =?utf-8?Q?O5lXlHeJ+a0i4XE8=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: DM6PR11MB4491.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9f69223d-8259-4f45-078b-08da1000ef74 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Mar 2022 14:49:02.8343 (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: 0BeNJb91dOrZ/pBoKE8OFXzN2nL5Anytp85jABlUv3Wnlw+i3VHqAhvkesan5rbBIFLUbNP/RuL2YLKMnyOGCCDrp3gzUmhBK8zAZ1lMj9M= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB3304 X-OriginatorOrg: intel.com 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 PiBkaWZmIC0tZ2l0IGEvbGliL2VhbC9pbmNsdWRlL21lc29uLmJ1aWxkIGIvbGliL2VhbC9pbmNs dWRlL21lc29uLmJ1aWxkDQo+IGluZGV4IDk3MDA0OTQ4MTYuLjQ4ZGY1ZjFhMjEgMTAwNjQ0DQo+ IC0tLSBhL2xpYi9lYWwvaW5jbHVkZS9tZXNvbi5idWlsZA0KPiArKysgYi9saWIvZWFsL2luY2x1 ZGUvbWVzb24uYnVpbGQNCj4gQEAgLTM2LDYgKzM2LDcgQEAgaGVhZGVycyArPSBmaWxlcygNCj4g ICAgICAgICAgJ3J0ZV9wZXJfbGNvcmUuaCcsDQo+ICAgICAgICAgICdydGVfcmFuZG9tLmgnLA0K PiAgICAgICAgICAncnRlX3JlY2lwcm9jYWwuaCcsDQo+ICsgICAgICAgICdydGVfc2VxbG9jay5o JywNCj4gICAgICAgICAgJ3J0ZV9zZXJ2aWNlLmgnLA0KPiAgICAgICAgICAncnRlX3NlcnZpY2Vf Y29tcG9uZW50LmgnLA0KPiAgICAgICAgICAncnRlX3N0cmluZ19mbnMuaCcsDQo+IGRpZmYgLS1n aXQgYS9saWIvZWFsL2luY2x1ZGUvcnRlX3NlcWxvY2suaCBiL2xpYi9lYWwvaW5jbHVkZS9ydGVf c2VxbG9jay5oDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAuLmI5 NzVjYTg0OGENCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9saWIvZWFsL2luY2x1ZGUvcnRlX3Nl cWxvY2suaA0KPiBAQCAtMCwwICsxLDg0IEBADQo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmll cjogQlNELTMtQ2xhdXNlDQo+ICsgKiBDb3B5cmlnaHQoYykgMjAyMiBFcmljc3NvbiBBQg0KPiAr ICovDQo+ICsNCj4gKyNpZm5kZWYgX1JURV9TRVFMT0NLX0hfDQo+ICsjZGVmaW5lIF9SVEVfU0VR TE9DS19IXw0KPiArDQo+ICsjaW5jbHVkZSA8c3RkYm9vbC5oPg0KPiArI2luY2x1ZGUgPHN0ZGlu dC5oPg0KPiArDQo+ICsjaW5jbHVkZSA8cnRlX2F0b21pYy5oPg0KPiArI2luY2x1ZGUgPHJ0ZV9i cmFuY2hfcHJlZGljdGlvbi5oPg0KPiArI2luY2x1ZGUgPHJ0ZV9zcGlubG9jay5oPg0KPiArDQo+ ICtzdHJ1Y3QgcnRlX3NlcWxvY2sgew0KPiArCXVpbnQ2NF90IHNuOw0KPiArCXJ0ZV9zcGlubG9j a190IGxvY2s7DQo+ICt9Ow0KPiArDQo+ICt0eXBlZGVmIHN0cnVjdCBydGVfc2VxbG9jayBydGVf c2VxbG9ja190Ow0KPiArDQo+ICtfX3J0ZV9leHBlcmltZW50YWwNCj4gK3ZvaWQNCj4gK3J0ZV9z ZXFsb2NrX2luaXQocnRlX3NlcWxvY2tfdCAqc2VxbG9jayk7DQoNClByb2JhYmx5IHdvcnRoIHRv IGhhdmUgc3RhdGljIGluaXRpYWxpemVyIHRvby4NCg0KDQo+ICsNCj4gK19fcnRlX2V4cGVyaW1l bnRhbA0KPiArc3RhdGljIGlubGluZSB1aW50NjRfdA0KPiArcnRlX3NlcWxvY2tfcmVhZF9iZWdp bihjb25zdCBydGVfc2VxbG9ja190ICpzZXFsb2NrKQ0KPiArew0KPiArCS8qIF9fQVRPTUlDX0FD UVVJUkUgdG8gcHJldmVudCBsb2FkcyBhZnRlciAoaW4gcHJvZ3JhbSBvcmRlcikNCj4gKwkgKiBm cm9tIGhhcHBlbmluZyBiZWZvcmUgdGhlIHNuIGxvYWQuIFN5bmNyb25pemVzLXdpdGggdGhlDQo+ ICsJICogc3RvcmUgcmVsZWFzZSBpbiBydGVfc2VxbG9ja19lbmQoKS4NCj4gKwkgKi8NCj4gKwly ZXR1cm4gX19hdG9taWNfbG9hZF9uKCZzZXFsb2NrLT5zbiwgX19BVE9NSUNfQUNRVUlSRSk7DQo+ ICt9DQo+ICsNCj4gK19fcnRlX2V4cGVyaW1lbnRhbA0KPiArc3RhdGljIGlubGluZSBib29sDQo+ ICtydGVfc2VxbG9ja19yZWFkX3JldHJ5KGNvbnN0IHJ0ZV9zZXFsb2NrX3QgKnNlcWxvY2ssIHVp bnQ2NF90IGJlZ2luX3NuKQ0KPiArew0KPiArCXVpbnQ2NF90IGVuZF9zbjsNCj4gKw0KPiArCS8q IG1ha2Ugc3VyZSB0aGUgZGF0YSBsb2FkcyBoYXBwZW5zIGJlZm9yZSB0aGUgc24gbG9hZCAqLw0K PiArCXJ0ZV9hdG9taWNfdGhyZWFkX2ZlbmNlKF9fQVRPTUlDX0FDUVVJUkUpOw0KDQpUaGF0J3Mg c29ydCBvZiAncmVhZF9lbmQnIGNvcnJlY3Q/DQpJZiBzbywgc2hvdWxkbid0IGl0IGJlICdfX0FU T01JQ19SRUxFQVNFJyBpbnN0ZWFkIGhlcmUsDQphbmQNCmVuZF9zbiA9IF9fYXRvbWljX2xvYWRf biguLi4sIChfX0FUT01JQ19BQ1FVSVJFKQ0Kb24gdGhlIGxpbmUgYmVsb3c/IA0KDQo+ICsNCj4g KwllbmRfc24gPSBfX2F0b21pY19sb2FkX24oJnNlcWxvY2stPnNuLCBfX0FUT01JQ19SRUxBWEVE KTsNCj4gKw0KPiArCXJldHVybiB1bmxpa2VseShiZWdpbl9zbiAmIDEgfHwgYmVnaW5fc24gIT0g ZW5kX3NuKTsNCj4gK30NCj4gKw0KPiArX19ydGVfZXhwZXJpbWVudGFsDQo+ICtzdGF0aWMgaW5s aW5lIHZvaWQNCj4gK3J0ZV9zZXFsb2NrX3dyaXRlX2JlZ2luKHJ0ZV9zZXFsb2NrX3QgKnNlcWxv Y2spDQo+ICt7DQo+ICsJdWludDY0X3Qgc247DQo+ICsNCj4gKwkvKiB0byBzeW5jaHJvbml6ZSB3 aXRoIG90aGVyIHdyaXRlcnMgKi8NCj4gKwlydGVfc3BpbmxvY2tfbG9jaygmc2VxbG9jay0+bG9j ayk7DQo+ICsNCj4gKwlzbiA9IHNlcWxvY2stPnNuICsgMTsNCj4gKw0KPiArCV9fYXRvbWljX3N0 b3JlX24oJnNlcWxvY2stPnNuLCBzbiwgX19BVE9NSUNfUkVMQVhFRCk7DQo+ICsNCj4gKwkvKiBf X0FUT01JQ19SRUxFQVNFIHRvIHByZXZlbnQgc3RvcmVzIGFmdGVyIChpbiBwcm9ncmFtIG9yZGVy KQ0KPiArCSAqIGZyb20gaGFwcGVuaW5nIGJlZm9yZSB0aGUgc24gc3RvcmUuDQo+ICsJICovDQo+ ICsJcnRlX2F0b21pY190aHJlYWRfZmVuY2UoX19BVE9NSUNfUkVMRUFTRSk7DQoNCkkgdGhpbmsg aXQgbmVlZHMgdG8gYmUgJ19fQVRPTUlDX0FDUVVJUkUnIGhlcmUgaW5zdGVhZCBvZiAnX19BVE9N SUNfUkVMRUFTRScuDQoNCj4gK30NCj4gKw0KPiArX19ydGVfZXhwZXJpbWVudGFsDQo+ICtzdGF0 aWMgaW5saW5lIHZvaWQNCj4gK3J0ZV9zZXFsb2NrX3dyaXRlX2VuZChydGVfc2VxbG9ja190ICpz ZXFsb2NrKQ0KPiArew0KPiArCXVpbnQ2NF90IHNuOw0KPiArDQo+ICsJc24gPSBzZXFsb2NrLT5z biArIDE7DQo+ICsNCj4gKwkvKiBzeW5jaHJvbml6ZXMtd2l0aCB0aGUgbG9hZCBhY3F1aXJlIGlu IHJ0ZV9zZXFsb2NrX2JlZ2luKCkgKi8NCj4gKwlfX2F0b21pY19zdG9yZV9uKCZzZXFsb2NrLT5z biwgc24sIF9fQVRPTUlDX1JFTEVBU0UpOw0KPiArDQo+ICsJcnRlX3NwaW5sb2NrX3VubG9jaygm c2VxbG9jay0+bG9jayk7DQo+ICt9DQo+ICsNCg0K