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 929FF44108; Thu, 30 May 2024 02:56:43 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6452140687; Thu, 30 May 2024 02:56:43 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by mails.dpdk.org (Postfix) with ESMTP id 0F8E6402CD for ; Thu, 30 May 2024 02:56:38 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1717030599; x=1748566599; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=esudLR8wsSCwhOeBjDA6XnRcndL8hMEzneGb9emVrDc=; b=LJOlAc7LgdVTsWMaL0IJypmPVsdH6rCv7jzPtJnAaF1ZmHhT5I6RpPWd h3DOeGIxHkxQh5Na+bzRO1fcvrsZR6Y2wIrAglk/3QDwxGr8I4EZevny2 GPz8RWTjPd9ggLPi8DzO9Thyv7EXel9VdpvDls8bgxgRDNTgxoBfVx4FR B80tXf5n0mQCazEuAtE4eepZ9cFCCSOfQUxaczksInobfYj4hAZ3o51hi QE8za4R84SiK7rogkBZPbjb92C9qIFHlqcEeu9GoZOscSkZwL4U7VRxPY zCeGvPA0rKY+6midezSY256rHyM0Z9ZTwlVBteXVL0hhTGDqesv2S3hpR g==; X-CSE-ConnectionGUID: pmykm7lDTGy+R6+uWevPgg== X-CSE-MsgGUID: CpdvWe0OSXaqtIt77sPwbw== X-IronPort-AV: E=McAfee;i="6600,9927,11087"; a="30979855" X-IronPort-AV: E=Sophos;i="6.08,199,1712646000"; d="scan'208";a="30979855" Received: from fmviesa003.fm.intel.com ([10.60.135.143]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 May 2024 17:56:37 -0700 X-CSE-ConnectionGUID: nqDzC8O5SzOKH+nXHO/b/g== X-CSE-MsgGUID: 2ZC6F6UoT3qcepkuSZZuug== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,199,1712646000"; d="scan'208";a="40095667" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmviesa003.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 29 May 2024 17:56:38 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 29 May 2024 17:56:37 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 29 May 2024 17:56:36 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Wed, 29 May 2024 17:56:36 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.168) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Wed, 29 May 2024 17:56:36 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aijf69B6x0WN8AzgiaSQTMMqlRh9E7Wj9JlF1O2LHadRFjXNXyUP81S0dq3HUf4X2SVyHUYdG8jNOCjg58mfG/Of9HRLEqeD8KsO9mUlmGNAdjBokqHqfxNOjOIH/UKjuvszCpCFUdH/6RbnlMi/je6UXLayjPtulRKj3lDc+2LxMM7ZH39DBNjq+6QZYqbI+VgPP6VXH6hXxhmZAmJziv1axFNEq4qy9x6Lp1PnOf81u1DYNqTxMBt8Y+F4/AZcvgmWmspu299UCdg7SftEB4XNFMjjxY9MfxFpKFNg/s3Wh79hV3zrNAlp91QrE/9KDgNqQh26vH/ItKw55B4MjQ== 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=esudLR8wsSCwhOeBjDA6XnRcndL8hMEzneGb9emVrDc=; b=jBDjc1RKNIioYUcAMh4uL4tk9aF7YIlSj/PlnP/mSdS9zJ93R2LQDhEJkoVyZ/DKAH7sC3IyukJBQBIm9cVidSeTf9DwiGoUfWCV21WIKYZuAUXiOsyMie52Ln98GEqvVxkOiGA/M2l5ZBf5DvU4A6nczblN9Dh5GV6Fwmak0f+ldJEhHXXdQlRzgNxFXnanLSDe2KaAt0qSsiZaCEMU8vAmTx/9mvaEY+2lbRA3nQAS9RxcaG6mTAiDN5y0w83cICgQrpC7t8Lm5glCek6EpRn6/vMXzaZxWT0cCgHAdBHiA3QjU1lCa8zr+CeASYs2FsE4IVv7bs9Lvv8oB+1XBw== 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 PH0PR11MB4775.namprd11.prod.outlook.com (2603:10b6:510:34::22) by DM4PR11MB8159.namprd11.prod.outlook.com (2603:10b6:8:17d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.30; Thu, 30 May 2024 00:56:29 +0000 Received: from PH0PR11MB4775.namprd11.prod.outlook.com ([fe80::a8f9:b889:964f:c495]) by PH0PR11MB4775.namprd11.prod.outlook.com ([fe80::a8f9:b889:964f:c495%7]) with mapi id 15.20.7633.018; Thu, 30 May 2024 00:56:29 +0000 From: "Du, Frank" To: Paul Szczepanek , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , "dev@dpdk.org" CC: "nd@arm.com" , Ferruh Yigit , "Andrew Rybchenko" , "Burakov, Anatoly" , "Loftus, Ciara" Subject: RE: [PATCH v12 2/6] mempool: add functions to get extra mempool info Thread-Topic: [PATCH v12 2/6] mempool: add functions to get extra mempool info Thread-Index: AQHasbJKYlzCu5T7bEqdM0ceDh+L/LGuPH0AgAAnuwCAAJA2cA== Date: Thu, 30 May 2024 00:56:29 +0000 Message-ID: References: <20230927150854.3670391-2-paul.szczepanek@arm.com> <20240529102242.1137076-1-paul.szczepanek@arm.com> <20240529102242.1137076-3-paul.szczepanek@arm.com> <98CBD80474FA8B44BF855DF32C47DC35E9F4CA@smartserver.smartshare.dk> <9e668808-f76e-4ea0-8147-8df1efb102f2@arm.com> In-Reply-To: <9e668808-f76e-4ea0-8147-8df1efb102f2@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR11MB4775:EE_|DM4PR11MB8159:EE_ x-ms-office365-filtering-correlation-id: a93314dc-4d0b-4b7a-042e-08dc80435778 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|1800799015|376005|366007|38070700009; x-microsoft-antispam-message-info: =?utf-8?B?RmwyTFdHQUtDYzcxclR6ejdZblVnNU50dUdMSHkycnJFSUtFY0tmcGVEdi9j?= =?utf-8?B?cXkxYjZNYllFaXhLUWg1MDFibEpXaHdTdDZaNEZ1dVZHbDQ2dVdVQVdlQ0My?= =?utf-8?B?YW91czh2Tjd0TXBnSHI4eE1VdVF3djZKdWtTUE1NOWl0TWZvR0xzc0dPMWNN?= =?utf-8?B?WDViWkhCaTdkeGI1NFY1bC9VdDFLV3RVeHJyY0RmT0xWaVRPakh2aDFyNGRv?= =?utf-8?B?YmFiMzRCZFZvaFRTTFhGdUY4QUFqUGhXUXhrbnowV2pDeC9pc3JlMDk4b00v?= =?utf-8?B?ZENadWRPTURXS2VEVnROcVQ0a1Z6ZnBCTW5BR1VLQjRIYzRTZ1hWdTcxWUNX?= =?utf-8?B?MmZjS1NnTW5pandZK1VIWnVONndRRUhDN1BJcERGZFhuZ3NpSE9ZRHVZMVh1?= =?utf-8?B?SWNVVC91clBLUnVRaUl1dWd6QmVlcnpyT1d0NE9MMXFFcWNyQ2JQZldkaDV4?= =?utf-8?B?QVFFcHJieWxHSlJGNThEZHZjZWRCdXlvdlZYUkhpWk5oaXcxczZvdHBaZkd0?= =?utf-8?B?Ymp6aWtpWS9LTDBiRnFTd2tFcGtaNlY1VDRtcVhzeURvcWJObGcwTk5ZVm92?= =?utf-8?B?VVNNYUZQUEpBTkdHZ3QyMGswd2NDVmtiQlJZYzI1dzRTeHJZdUtZVEN3YVBq?= =?utf-8?B?alVGaXZobFVlZjF3SVppR0hmNlU4RG0vU25QQ2p6ODF4RENTK0xkVWQxOVJz?= =?utf-8?B?TmJNNk82Y25ublZqd1ZiOTd1Tk81UWxXejhLd0poZGcwMzhhcmFJbUJZTjEy?= =?utf-8?B?RS9OQklSNWJQU1Exanl6SWdGeEo0dHovOTdBcGk4UDJVRFZiV0I5Z0NQL1dN?= =?utf-8?B?VGN5dW16UG5MTVFFVkxSU0h3cjlLdHQvYkE0VWpwNU9jSFZocFdxRlA5ZHFk?= =?utf-8?B?bi9aMTlFbFo3YytVNDRpV2ZPa3E4emFLSzU1UTJYSzFTRnJJMDVTc2xlcHVV?= =?utf-8?B?Wm92anVlWFJNajRhWnNXZldUZThoWHgrWXlSQXZzQjJXY3BZQnMvV05NRDZP?= =?utf-8?B?ZmYrYkFwUTlvTEJOL2EvczNuYmt5U0kzU2htb1ZrOHhRelJXSEllWWpCeU1r?= =?utf-8?B?UVA1aFhCQzkvRTNBSVZ2YUJaV0pZNnFjK1YxSDFWZWYySWhWVTZnNkQ4MUVs?= =?utf-8?B?SnNoeUVwN2hFVmV4dHd4c0piQ1F0K3NENi95bVorcmg1ak4weXdpWEhRSG80?= =?utf-8?B?bERmS29pYkRUaWFNNkREK2Rtd3U4MVFSaTM4S2lqYXA4aXBud0NHMlFJUE1K?= =?utf-8?B?dkxwcXV2Rmp6YWxjNkhjYk5FNlN3YUE2YTdNdmtJeitYZ0RWZ0d2Q29SdnVF?= =?utf-8?B?WXFFZUYxZ3dBRWhWTG5VUWRFbHF2R1g0cVo0TldnSkhvSWd6ZlFnQi9PeE1E?= =?utf-8?B?c3loYjJRRDBFaFVIMThsTlI1K0pFaWFvaFlGc2hSMFlSQi9GcjBlK0RwdUtD?= =?utf-8?B?TEc0WWJLanJaU051MFNNaTdKTm8wdmJwSDVKTldlKzYwQWhtNTIrbXpjOW8r?= =?utf-8?B?RThCaUFjb2dNV25BNytaNTJkY09aZk5BWCtvNkpVMVlVNzQwZ2FERkN6V3Vk?= =?utf-8?B?ZFNDeHNhQUZUT1hoQ1F1NFVJbS9iM3ZSc3J6cmdsSjZzTml2QmFRUDNsM3p3?= =?utf-8?B?TVgwUnF1UGVnWTBBWkF6SDI0SnpyRkhYNmZxRGRjQ0xwZzNpdXcxdDZMSFkw?= =?utf-8?B?aVFUOUJHRjZQYzgyeWRwZzFQNzRmZ0szWGdpSlRWeUMwR1J6OU92Ylp3PT0=?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR11MB4775.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(376005)(366007)(38070700009); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WEw1NnNtZGRjcStsdFJUNDJVZzVpRHFkMjU3ZXVZSUFLUUlCM2pwa2krQ3pY?= =?utf-8?B?c0hkckp3MDMzdDJsRUNYWldiR2FuOGpHWU5WYmRmQS9VeC90eURRYVhCNWFq?= =?utf-8?B?SisvWVNFVzRHcW5DaGt5QVJYKzdablZGamRYV1Btb3BETFNQQkYrVGFOQzlP?= =?utf-8?B?MDMvL2ZBZUV5KzA0UXFUV2FqVnhKTEpUSFdFOFhEYWxpS3prNEVqMzRTbWFz?= =?utf-8?B?Y3BycFU2VS9malpSaktUTzRWd1FYcXlIa1BQanV4Wm9kekhqK3U5OVIwZVVR?= =?utf-8?B?dXFLc1VGeldXN0ZZT0EwTUVFZDhrdWEvK0R2b016emlSTTFjWlFGbUtsRlRJ?= =?utf-8?B?SU1Cd2VxcW1LZnZsNjdNMC9DUUUySTRWeTBRNk5aa1NqZDlpVzNDMTdONGg2?= =?utf-8?B?bUtqZnkxQ1lDWVdJVDd0czJoUWMxSXNscFEwWVFzM0lBQVZ3d3EvYjRrMmpN?= =?utf-8?B?SFBiU3U1clpiZmNDNktlLzV6V1VHcTd6TTY3ODFzZHBoSmd5MVRsLzMyN3Zl?= =?utf-8?B?clZyWkp0ZEh3NjJPK3AxU3BCQzY0SUFEaVQxcXpZM0R5TVEzYlN2blVVcWpi?= =?utf-8?B?SU5yZmVjSmFEeUFOeGx6TElwZEtDeDllcW95SzBqMmlGcHF3bGdrSmlWeWZx?= =?utf-8?B?L3JMaG9NNmszdHZBaUt4ZGNqanFWdXFmS3JGK0E5ODJJOFpWeWcrYStmVVhE?= =?utf-8?B?VnJBQk5vNEpGU2tBdzBDZ3YvZEs1NnVNS2cwdlBrSVNmL0J1K0oyaHZNeEMr?= =?utf-8?B?UU1sdjBUNmdhSmR1THNnRGtFcGNJQ3FxaGprdWtUa25hWE1ZZWVmWW9RUi80?= =?utf-8?B?UmxyRDFuU3l6RWpVSzIzSWh4QnRFOWZ1b3Z3QzRsSFhTWkhFTDc2R05ncWdC?= =?utf-8?B?VFVPZ3FzMXdVNFA3K2NuMlltOWRZVFhtVGJBUnlYVVAxam5Iay9tRm52WkNr?= =?utf-8?B?N0hqRWhzd0o5cWhJTHFWdlZsY0RZWHppNWpESVNqc2hiUHRuSjN2eEEwQmYv?= =?utf-8?B?V0dSOEI3cFlRUS9ZbWdMT1YyM2xuRGFYSGZkdVZDNHNEMVcrT21DTTRJU3Z0?= =?utf-8?B?aitiQWxiUzdBQUhMSFAvZ3R4WHEvY24rZFQrSlR2YjF4OW0xMnEzOWNlZlFj?= =?utf-8?B?Rm9xUWVYcVdlOEcrVTloQ2hlbzNkVjZsbzBtUWk2amdidjUzdDU5VEVBVDB5?= =?utf-8?B?elhTVHMrejRycFo5NC93RHhha3pENWtBL3p4MWpnTnFrS0xVQysvc1pTZ2Jm?= =?utf-8?B?NS9UVmJVTWE2ajZNNlgwaXQrZDlmNkFCa05Felk4d2t4NFNqaW94RWtBL2gw?= =?utf-8?B?OTdsNlBDT2VrOUR3NGdyZFhsZnN5d0VNZzdyWVY5eXlxdHAza3dzNVkvLzdZ?= =?utf-8?B?c1NmMXNHUnBWMlFEL2hoY05yQVZHL2VFZVpjZCtKRUUxeFN3NmJscUJJVDFH?= =?utf-8?B?SEtLeW1LR3RuN3R6KzVQSEJKU1JVNisrS09DQThxMHB2MTU2ZGJiTXh0bldz?= =?utf-8?B?dHZrVVhTdGVqSUJoemJnTk40cHY0RFI3Z0dlRmR3TXV2cEk1S2ZBZXBScSsx?= =?utf-8?B?TlEzaGxRVFhWNXM5b1BSai9ETXdKd3FDTENhNnBhNXNnYkxDVnMxUEUxZ2h0?= =?utf-8?B?UHlTZ1E5N09GVmkxYWpCc1VyOUl5dXRUMktlZlQvTis2YlcrM25zNWFsa2pG?= =?utf-8?B?MmdkRU9UQzFMUWNMaVVncGIrK0Zzeno4Y3IyVXBvN3gxMHdsc2MyTFdIZkJt?= =?utf-8?B?UFJUNDViTlRXN3RwV0JFY3hqblJLenRTYmg2SEtSYW1uNFVsMXAyYjk2am4v?= =?utf-8?B?Z09LaXJCUzNpZWlWdm50VS8zeXE1NHNHaGNHRC9iY2g5ekc4cWVtTERpMjBp?= =?utf-8?B?Ui9jL2JwTFdqcURzS0d3eFc1dm5nMW5ERlRoU0ZvYnZZMTlmQjVsMjFkcDhp?= =?utf-8?B?U0kxREhyNWMvNCtFK0NTbGNEdnVEM01kQ1U1UjJOckFWSlNnT1NFY2M5NW1s?= =?utf-8?B?RlhVbFlmL2t2K1o0dUhVeVp5T1hjSlpGSC84WDdWdVNTOGxxbm9WRUd4RHNB?= =?utf-8?B?UkxKbFZVVy9kaWdrRDh6VzZaSzBJMWVxNWdJSmhZaU9QdE8zNmY2YnlValRH?= =?utf-8?Q?iXIY=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: PH0PR11MB4775.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a93314dc-4d0b-4b7a-042e-08dc80435778 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 May 2024 00:56:29.8151 (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: XeMS7opV1R4KNRXIb75/hQa/tJIEBp9PeDfp393l3G6nz8Xc2r0V5B+4QIg8SOzMY533TL3duhcTW21S0X1z4w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB8159 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 PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBQYXVsIFN6Y3plcGFuZWsgPHBh dWwuc3pjemVwYW5la0Bhcm0uY29tPg0KPiBTZW50OiBUaHVyc2RheSwgTWF5IDMwLCAyMDI0IDEy OjE4IEFNDQo+IFRvOiBNb3J0ZW4gQnLDuHJ1cCA8bWJAc21hcnRzaGFyZXN5c3RlbXMuY29tPjsg ZGV2QGRwZGsub3JnOyBEdSwgRnJhbmsNCj4gPGZyYW5rLmR1QGludGVsLmNvbT4NCj4gQ2M6IG5k QGFybS5jb207IEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+OyBBbmRyZXcgUnli Y2hlbmtvDQo+IDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IEJ1cmFrb3YsIEFuYXRv bHkNCj4gPGFuYXRvbHkuYnVyYWtvdkBpbnRlbC5jb20+OyBMb2Z0dXMsIENpYXJhIDxjaWFyYS5s b2Z0dXNAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHYxMiAyLzZdIG1lbXBvb2w6 IGFkZCBmdW5jdGlvbnMgdG8gZ2V0IGV4dHJhIG1lbXBvb2wgaW5mbw0KPiANCj4gDQo+IA0KPiBP biAyOS8wNS8yMDI0IDE0OjU2LCBNb3J0ZW4gQnLDuHJ1cCB3cm90ZToNCj4gPj4gRnJvbTogUGF1 bCBTemN6ZXBhbmVrIFttYWlsdG86cGF1bC5zemN6ZXBhbmVrQGFybS5jb21dDQo+ID4+IFNlbnQ6 IFdlZG5lc2RheSwgMjkgTWF5IDIwMjQgMTIuMjMNCj4gPj4NCj4gPj4gQWRkIHR3byBmdW5jdGlv bnM6DQo+ID4+IC0gcnRlX21lbXBvb2xfZ2V0X21lbV9yYW5nZSAtIGdldCB2aXJ0dWFsIG1lbW9y eSByYW5nZSBvZiB0aGUgb2JqZWN0cw0KPiA+PiBpbiB0aGUgbWVtcG9vbCwNCj4gPj4gLSBydGVf bWVtcG9vbF9nZXRfb2JqX2FsaWdubWVudCAtIGdldCBhbGlnbm1lbnQgb2Ygb2JqZWN0cyBpbiB0 aGUNCj4gPj4gbWVtcG9vbC4NCj4gPj4NCj4gPj4gQWRkIHR3byB0ZXN0cyB0aGF0IHRlc3QgdGhl c2UgbmV3IGZ1bmN0aW9ucy4NCj4gPj4NCj4gPj4gU2lnbmVkLW9mZi1ieTogUGF1bCBTemN6ZXBh bmVrIDxwYXVsLnN6Y3plcGFuZWtAYXJtLmNvbT4NCj4gPj4gUmV2aWV3ZWQtYnk6IEphY2sgQm9u ZC1QcmVzdG9uIDxqYWNrLmJvbmQtcHJlc3RvbkBmb3NzLmFybS5jb20+DQo+ID4+IFJldmlld2Vk LWJ5OiBOYXRoYW4gQnJvd24gPG5hdGhhbi5icm93bkBhcm0uY29tPg0KPiA+PiAtLS0NCj4gPj4N Cj4gPj4gKy8qKg0KPiA+PiArICogQHdhcm5pbmcNCj4gPj4gKyAqIEBiIEVYUEVSSU1FTlRBTDog dGhpcyBBUEkgbWF5IGNoYW5nZSB3aXRob3V0IHByaW9yIG5vdGljZS4NCj4gPj4gKyAqDQo+ID4+ ICsgKiBHZXQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG1lbW9yeSByYW5nZSB1c2VkIGJ5IHRoZSBt ZW1wb29sLg0KPiA+PiArICoNCj4gPj4gKyAqIEBwYXJhbVtpbl0gbXANCj4gPj4gKyAqICAgUG9p bnRlciB0byBhbiBpbml0aWFsaXplZCBtZW1wb29sLg0KPiA+PiArICogQHBhcmFtW291dF0gbWVt X3JhbmdlX3N0YXJ0DQo+ID4+ICsgKiAgIFJldHVybnMgbG93ZXN0IGFkZHJlc3MgaW4gbWVtcG9v bC4NCj4gPj4gKyAqIEBwYXJhbVtvdXRdIG1lbV9yYW5nZV9sZW5ndGgNCj4gPj4gKyAqICAgUmV0 dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSBtZW1vcnkgcmFuZ2UgY29udGFpbmluZyBhbGwgdGhlIGFk ZHJlc3Nlcw0KPiA+PiArICogICBpbiB0aGUgbWVtb3J5IHBvb2wuDQo+ID4+ICsgKiBAcmV0dXJu DQo+ID4+ICsgKiAgIDAgb24gc3VjY2VzcywgLUVJTlZBTCBpZiBhcmd1bWVudHMgYXJlIG5vdCB2 YWxpZC4NCj4gPj4gKyAqDQo+ID4+ICsgKiovDQo+ID4+ICtfX3J0ZV9leHBlcmltZW50YWwNCj4g Pj4gK2ludCBydGVfbWVtcG9vbF9nZXRfbWVtX3JhbmdlKHN0cnVjdCBydGVfbWVtcG9vbCAqbXAs DQo+ID4+ICsJCXZvaWQgKiptZW1fcmFuZ2Vfc3RhcnQsIHNpemVfdCAqbWVtX3JhbmdlX2xlbmd0 aCk7DQo+ID4NCj4gPiBQYXVsLA0KPiA+DQo+ID4gQ291bGQgeW91IHBsZWFzZSBhZGQgb25lIG1v cmUgb3V0cHV0IHBhcmFtZXRlciAiYm9vbA0KPiAqbWVtX3JhbmdlX2NvbnRpZ3VvdXMiIHRvIHRo aXMgZnVuY3Rpb24sIHJldHVybmluZyB0cnVlIGlmIHRoZSBtZW1vcnkgY2h1bmtzDQo+IGFyZSBj b250aWd1b3VzLg0KPiA+DQo+ID4gSXQgd2lsbCBiZSB1c2VmdWwgaW5zdGVhZCBvZiBpbXBsZW1l bnRpbmcgZ2V0X21lbWhkcl9pbmZvKCkgbG9jYWxseSBpbiB0aGlzIG90aGVyDQo+IHBhdGNoIHNl cmllczoNCj4gPg0KPiBodHRwczovL2luYm94LmRwZGsub3JnL2Rldi9NVzRQUjExTUI1ODcyNEFD ODJBMzRBM0VFRkVGNzhFODk4RUYyMkANCj4gTVc0UA0KPiA+IFIxMU1CNTg3Mi5uYW1wcmQxMS5w cm9kLm91dGxvb2suY29tLw0KPiA+DQo+ID4gUGxlYXNlIGNvb3JkaW5hdGUgdGhpcyBjaGFuZ2Ug ZGlyZWN0bHkgd2l0aCBGcmFuayBEdSA8ZnJhbmsuZHVAaW50ZWwuY29tPi4NCj4gPg0KPiA+IC1N b3J0ZW4NCj4gPg0KPiANCj4gRG9lcyB0aGlzIHdvcmsgZm9yIHlvdT8NCj4gDQo+IGludCBydGVf bWVtcG9vbF9nZXRfbWVtX3JhbmdlKHN0cnVjdCBydGVfbWVtcG9vbCAqbXAsDQo+IAkJdm9pZCAq Km1lbV9yYW5nZV9zdGFydCwgc2l6ZV90ICptZW1fcmFuZ2VfbGVuZ3RoLA0KPiAJCWJvb2wgKmNv bnRpZ3VvdXMpDQo+IHsNCj4gCWlmIChtcCA9PSBOVUxMKQ0KPiAJCXJldHVybiAtRUlOVkFMOw0K PiANCj4gCXZvaWQgKmFkZHJlc3NfbG93ID0gKHZvaWQgKilVSU5UUFRSX01BWDsNCj4gCXZvaWQg KmFkZHJlc3NfaGlnaCA9IDA7DQo+IAlzaXplX3QgYWRkcmVzc19kaWZmID0gMDsNCj4gCXNpemVf dCBtZW1fdG90YWxfc2l6ZSA9IDA7DQo+IAlzdHJ1Y3QgcnRlX21lbXBvb2xfbWVtaGRyICpoZHI7 DQo+IA0KPiAJLyogZ28gdGhyb3VnaCBtZW1vcnkgY2h1bmtzIGFuZCBmaW5kIHRoZSBsb3dlc3Qg YW5kIGhpZ2hlc3QgYWRkcmVzc2VzDQo+ICovDQo+IAlTVEFJTFFfRk9SRUFDSChoZHIsICZtcC0+ bWVtX2xpc3QsIG5leHQpIHsNCj4gCQlpZiAoYWRkcmVzc19sb3cgPiBoZHItPmFkZHIpDQo+IAkJ CWFkZHJlc3NfbG93ID0gaGRyLT5hZGRyOw0KPiAJCWlmIChhZGRyZXNzX2hpZ2ggPCBSVEVfUFRS X0FERChoZHItPmFkZHIsIGhkci0+bGVuKSkNCj4gCQkJYWRkcmVzc19oaWdoID0gUlRFX1BUUl9B REQoaGRyLT5hZGRyLCBoZHItPmxlbik7DQo+IAkJbWVtX3RvdGFsX3NpemUgKz0gaGRyLT5sZW47 DQo+IAl9DQo+IA0KPiAJLyogY2hlY2sgaWYgbWVtcG9vbCB3YXMgbm90IHBvcHVsYXRlZCB5ZXQg KG5vIG1lbW9yeSBjaHVua3MpICovDQo+IAlpZiAoYWRkcmVzc19sb3cgPT0gKHZvaWQgKilVSU5U UFRSX01BWCkNCj4gCQlyZXR1cm4gLUVJTlZBTDsNCj4gDQo+IAlhZGRyZXNzX2RpZmYgPSAoc2l6 ZV90KVJURV9QVFJfRElGRihhZGRyZXNzX2hpZ2gsIGFkZHJlc3NfbG93KTsNCj4gCWlmIChtZW1f cmFuZ2Vfc3RhcnQgIT0gTlVMTCkNCj4gCQkqbWVtX3JhbmdlX3N0YXJ0ID0gYWRkcmVzc19sb3c7 DQo+IAlpZiAobWVtX3JhbmdlX2xlbmd0aCAhPSBOVUxMKQ0KPiAJCSptZW1fcmFuZ2VfbGVuZ3Ro ID0gYWRkcmVzc19kaWZmOw0KPiAJaWYgKGNvbnRpZ3VvdXMgIT0gTlVMTCkNCj4gCQkqY29udGln dW91cyA9IChtZW1fdG90YWxfc2l6ZSA9PSBhZGRyZXNzX2RpZmYpID8gdHJ1ZSA6IGZhbHNlOw0K PiANCj4gCXJldHVybiAwOw0KPiB9DQoNClRoYW5rcy4gSXQgbG9va3MgZ3JlYXQuIEkgd2lsbCBy ZWJhc2UgdGhlIFhEUCBwYXRjaCB0byB1c2UgdGhlIG5ldyBBUEkgb25jZSBpdCBnZXQgbWVyZ2Vk Lg0K