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 6D36B42ADA; Fri, 12 May 2023 03:52:35 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4D38B406B7; Fri, 12 May 2023 03:52:35 +0200 (CEST) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2044.outbound.protection.outlook.com [40.107.7.44]) by mails.dpdk.org (Postfix) with ESMTP id 6686F40223 for ; Fri, 12 May 2023 03:52:34 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QbB5nLN1zojzcV8KLPIV68pneS+q4nRI5ocpZeeZA5M=; b=RdJLBcDFEmha+sSLrLFJRshSKVcXNt3XdZhur4kjX7PAqMrHXTvMCB7PSLTBpXjeUFzc0r6Uv8JmZgb5OqBcbF07ozxkS3JXWgdLNsKSoR4OsfRbV3HOOv8rDWEVPf7dDKieqTIgoaVGCdXFmp3n1L03kbyccP38GCyMGGx6nqg= Received: from AM6P194CA0038.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:84::15) by DU2PR08MB7344.eurprd08.prod.outlook.com (2603:10a6:10:2f3::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.22; Fri, 12 May 2023 01:52:31 +0000 Received: from AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:84:cafe::1a) by AM6P194CA0038.outlook.office365.com (2603:10a6:209:84::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.24 via Frontend Transport; Fri, 12 May 2023 01:52:31 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT046.mail.protection.outlook.com (100.127.140.78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.23 via Frontend Transport; Fri, 12 May 2023 01:52:31 +0000 Received: ("Tessian outbound 8b05220b4215:v136"); Fri, 12 May 2023 01:52:31 +0000 X-CR-MTA-TID: 64aa7808 Received: from ac01bb35ea8e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id CE8188F6-5204-41EB-B919-997AE0501D89.1; Fri, 12 May 2023 01:52:24 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ac01bb35ea8e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 12 May 2023 01:52:24 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VxXixTmVld3yazkEyz7GZYBO6En3bhG03fmxS2QnC1/cgcDigQaJY3zP8rHqbewxGhvtD6xwkh5ljjz0wQBuwTQXt8aa3ucBgEnRFnsqMHAu1iMcLFqeQc2i7yp9y+syZ7TlSTZanjbc9pCJk9uLNKkHYNw5mqGDxTO6lyoUg4yNxVCO05UHyLj4m1xYV9cKwNb6xXXkvgCj20V8x+k0vazumjIXDb0DLy2J7G9bCj2hsd+RNIwggzvEUEaZTlS9hYE57Oo1iufzATkdDUSHiWjf4TA4qlEWJAhktYJk/eHnXIBSUYdc0ASbmxSu5I5MMB6YDd1l2Fo9KE7F2LffiA== 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=QbB5nLN1zojzcV8KLPIV68pneS+q4nRI5ocpZeeZA5M=; b=k2VDjVDcPhHVYbXdwn0NLnpWGSyCWRlzhlrfwIxD3H6P668rN5n6glkoA9NjtbTmZycfeKIRzjZUrNVLTO0NzY3v9ZSgUsPAdtXWwFTxXlBTWA9mE/FxJBK0yH0P7QNZPbZOCrskKSF2YHQm3Pvi0TzQCJQg/HUgXbSqeRD7eBy/QgP4tC4r+qNq5Kg1LY2B7Ru/rK1Pg2DxOde972xt5XmvquaDlcf4JZo42x0I95uFDziOOmZIlCMA+hoL96Bvdel671d5AMr8OEkSmXRBALWPGMoG+FSbQpUm9GFumJVVP5JrlsAwCssihI6rAo6tez/YQ4z/vxy/EHLF50+c4A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QbB5nLN1zojzcV8KLPIV68pneS+q4nRI5ocpZeeZA5M=; b=RdJLBcDFEmha+sSLrLFJRshSKVcXNt3XdZhur4kjX7PAqMrHXTvMCB7PSLTBpXjeUFzc0r6Uv8JmZgb5OqBcbF07ozxkS3JXWgdLNsKSoR4OsfRbV3HOOv8rDWEVPf7dDKieqTIgoaVGCdXFmp3n1L03kbyccP38GCyMGGx6nqg= Received: from AS8PR08MB7718.eurprd08.prod.outlook.com (2603:10a6:20b:50a::22) by AS8PR08MB6039.eurprd08.prod.outlook.com (2603:10a6:20b:23c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.23; Fri, 12 May 2023 01:52:19 +0000 Received: from AS8PR08MB7718.eurprd08.prod.outlook.com ([fe80::7878:ff5f:b10:d4a6]) by AS8PR08MB7718.eurprd08.prod.outlook.com ([fe80::7878:ff5f:b10:d4a6%7]) with mapi id 15.20.6387.023; Fri, 12 May 2023 01:52:19 +0000 From: Feifei Wang To: Honnappa Nagarahalli , Jerin Jacob CC: "dev@dpdk.org" , nd , Lijian Zhang , Ruifeng Wang , nd , nd Subject: RE: [PATCH] examples/l3fwd: add hard code to collect empty poll and NIC counters Thread-Topic: [PATCH] examples/l3fwd: add hard code to collect empty poll and NIC counters Thread-Index: AQHZg+Iv6SQeHrYwPkOO6Q/0wSR4Kq9Uw7cAgABOeICAAM5HMA== Date: Fri, 12 May 2023 01:52:19 +0000 Message-ID: References: <20230511082519.4168523-1-feifei.wang2@arm.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 6879B038027E6C4697353BEAAB4692F1.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7718:EE_|AS8PR08MB6039:EE_|AM7EUR03FT046:EE_|DU2PR08MB7344:EE_ X-MS-Office365-Filtering-Correlation-Id: 3621d828-0268-4bcc-f90f-08db528b8c7c x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 8v7urZd0CLUI4vc4XwlJ8Y5NXcKVCq/KrFQMYUwSw8VfskPTpHJELjcBK0yHzYt3cvKaFmLS3AzpM+/w4mXBdeNsWWTQOp4Qq4/68s+wWSx9Q2iWCnG3sjuvAmHXx4PqYesefvXmNX9rXfn/JEQ1OafEFoDQcQsY/88i7tLAZt1WwUH8UusNJodC3jooaZ6HcW5NfLAl0o3IEXypCqQEjQBBKuFGjTLUBC7iqpEqAaDpIduz2CTWmRkkXwAH6MXU7MzB8tMrsWkjn+7LXaKb7Ts92OYRCQfbNXRpiqzpe+XwyFEt69dCB03SRBtyayWGnlYsKhcI4bfBAeLn8d0QkZN821OFtNrX7giVif29vUDlAsl33+9STBUihThXpetjEivLhOAlI8/JMZRaSxdaEPTH2b+V8oF+yCB1xmK1eMCHhgKeTV//2jBph3tGXRrkLfNepYdiUEU62/nhTGrs8KpvraB3g8pMBujRdO2C6O2HkzEVL7J8taPPQpA7Wd9nrvMnqG9nwDHP5fZoC8bMzPXOIF1fbuLcp0/m5Sx/2P30HQGRZCRcCU7+wmR1A7oX34zI5dilKwUutC7b6gGXUaCPVw/jPaOIZJO7UNhlfaXUXq53hSdH9/KhSx5QSWNW X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB7718.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(366004)(136003)(346002)(376002)(396003)(39860400002)(451199021)(4326008)(76116006)(66556008)(66476007)(66446008)(64756008)(66946007)(478600001)(7696005)(316002)(110136005)(54906003)(33656002)(86362001)(83380400001)(26005)(186003)(53546011)(9686003)(6506007)(52536014)(8936002)(8676002)(5660300002)(2906002)(71200400001)(41300700001)(55016003)(38070700005)(122000001)(38100700002); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6039 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5cc81be0-713a-4961-0cfd-08db528b8534 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TXjF5tUcBydaxCPfekYdgYxEkPrkEOIv6aoDP6crB7fI7Zv3FpaJauwH8hfaIIjvf31vD9XFwLAKyMliFvIFc8qZAOsXHyOyKC20g10C6Ly9qBgQhbR0xl/suawWHKWtv0P5P4nJkhp/FoozLTzriM2psuN5RAzcWsTZGe/4cm8zx4kaDY2Df/zE1+WbWnwWRjd6ehU/J9rbidO/glDM50aqEvr7HNfNq0RNcoj9tpTbG5Gi+44RGRkaWu27gCWlxaxXAMFKU1gR3DJL4GRmi4xPWHt5TnGEC1jfozuJL5jJ8okNzYTLghiJqpsG1iFmEKqXqoFANLvs8qQlxjO0t01pje4vcQibZrLqSqiHr+oSIKGXk6n5fhWEjGuolrrw4ENHd7/4H4xyJ4+HX5QK4Sm3lgSMhl4jbm/LztT/N4cJOW+1HF6IbjsJDBA13kS3ekuktvcRmm52bwfDxHX7KmmTVWqGOsznI14fanbEPLQjhJpQMVBt9qWmbhX0mg/OIxQWNWVegC2Wm/6KbVCLEwA3lOIhpVePpPkGoM2Lvu5AKxHDMBCRUNZkfsZBwvM0yjfPmSoKs57yKx5+Crne2dDTKaFwCe7yYSXgY0HOuMRpJoWQLQgUfSttGl8rymkIBU/HhX43mSMGH3I9jHtTd0rQFe3dIWreOJR06bL0snld7ZhrKDsBALMYXbVhA/FfusDxSOj+zaVjMrWSElFIUw== X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(346002)(451199021)(46966006)(40470700004)(36840700001)(6506007)(33656002)(2906002)(5660300002)(83380400001)(9686003)(8936002)(47076005)(336012)(53546011)(26005)(36860700001)(81166007)(356005)(186003)(82740400003)(86362001)(7696005)(40480700001)(110136005)(40460700003)(82310400005)(8676002)(316002)(4326008)(478600001)(70206006)(54906003)(70586007)(55016003)(52536014)(41300700001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 May 2023 01:52:31.3208 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3621d828-0268-4bcc-f90f-08db528b8c7c X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB7344 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSG9ubmFwcGEgTmFnYXJh aGFsbGkgPEhvbm5hcHBhLk5hZ2FyYWhhbGxpQGFybS5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBN YXkgMTEsIDIwMjMgOTozMiBQTQ0KPiBUbzogSmVyaW4gSmFjb2IgPGplcmluamFjb2JrQGdtYWls LmNvbT47IEZlaWZlaSBXYW5nDQo+IDxGZWlmZWkuV2FuZzJAYXJtLmNvbT4NCj4gQ2M6IGRldkBk cGRrLm9yZzsgbmQgPG5kQGFybS5jb20+OyBMaWppYW4gWmhhbmcNCj4gPExpamlhbi5aaGFuZ0Bh cm0uY29tPjsgUnVpZmVuZyBXYW5nIDxSdWlmZW5nLldhbmdAYXJtLmNvbT47IG5kDQo+IDxuZEBh cm0uY29tPg0KPiBTdWJqZWN0OiBSRTogW1BBVENIXSBleGFtcGxlcy9sM2Z3ZDogYWRkIGhhcmQg Y29kZSB0byBjb2xsZWN0IGVtcHR5IHBvbGwgYW5kDQo+IE5JQyBjb3VudGVycw0KPiANCj4gPHNu aXA+DQo+IA0KPiA+DQo+ID4gT24gVGh1LCBNYXkgMTEsIDIwMjMgYXQgMTo1NeKAr1BNIEZlaWZl aSBXYW5nIDxmZWlmZWkud2FuZzJAYXJtLmNvbT4NCj4gPiB3cm90ZToNCj4gPiA+DQo+ID4gPiBU aGlzIHBhdGNoIGlzIHRvIGNvbGxlY3QgZW1wdHkgcG9sbCBvZiAncnRlX2V0aF9yeF9idXJzdCcg ZnVuY3Rpb25zDQo+ID4gPiBpbiBkcGRrIGwzZndkIGFwcGxpY2F0aW9uLiBFbXB0eSBwb2xsIG1l YW5zIFJ4IGJ1cnN0IGZ1bmN0aW9uDQo+ID4gPiByZWNlaXZlcyBubyBwa3RzIGluIG9uZSBsb29w Lg0KPiA+ID4NCj4gPiA+IEZ1cnRoZXJtb3JlLCB3ZSBhbHNvIGFkZCAnbmljX3hzdGF0c19kaXNw bGF5JyBBUEkgdG8gc2hvdyBOSUMgY291bnRlcnMuDQo+ID4gPg0KPiA+ID4gVXNhZ2U6DQo+ID4g PiBXaXRoIHRoaXMgcGF0Y2gsIG5vIHNwZWNpYWwgc2V0dGluZ3MsIGp1c3QgcnVuIGwzZndkLCBh bmQgd2hlbiB5b3UNCj4gPiA+IHN0b3BpbmcgbDNmd2QsIHRocmVhZCB3aWxsIHByaW50IHRoZSBp bmZvIGFib3ZlLg0KPiA+ID4NCj4gPiA+IE5vdGU6DQo+ID4gPiBUaGlzIHBhdGNoIGhhcyBqdXN0 IGEgc2xpZ2h0IGltcGFjdCBvbiBwZXJmb3JtYW5jZSBhbmQgY2FuIGJlIGlnbm9yZWQuDQo+IEhv dyBtdWNoIGlzIHRoZSByZWdyZXNzaW9uPw0KDQpbRmVpZmVpXSBJdCBpcyBhYm91dCAxJSB+IDIl Lg0KCQ0KPiANCj4gPg0KPiA+IElNTywgV2Ugc2hvdWxkIG5vdCBpbnRyb2R1Y2UgcmVncmVzc2lv biBhcyBsM2Z3ZCBraW5kIG9mIHVzZXMgYXMNCj4gPiByZWZlcmVuY2UgYXBwbGljYXRpb24uDQo+ ID4gSSB0aGluaywgbDNmd2Qgc2hvdWxkIGxpbWl0IHRvIHN0YXRzIGV4cG9zZWQgYnkgZXRoZGV2 KGkuZSBkaXJlY3RseQ0KPiA+IGZyb20gTklDLCB3aXRob3V0IHBlcmZvcm1hbmNlIHJlZ3Jlc3Np b24pLg0KPiBBZ3JlZSBMM2Z3ZCBpcyB0aGUgcmVmZXJlbmNlIGFwcC4gVW5mb3J0dW5hdGVseSwg aXQgaXMgbm90IGluIGEgc3RhdGUgdG8gZGVidWcNCj4gYW55IHByb2JsZW1zLiBNYXkgYmUgbWFu eSBhcmUganVzdCBiZWxpZXZpbmcgdGhlIG51bWJlcnMgd2l0aG91dA0KPiB1bmRlcnN0YW5kaW5n IHRoYXQgdGhlcmUgYXJlIHByb2JsZW1zLg0KPiBDYW4gd2UgcGxhY2UgdGhlc2Ugc3RhdHMgdW5k ZXIgYSBydW4gdGltZSBmbGFnIGFuZCByZWR1Y2UgdGhlIGltcGFjdCBmdXJ0aGVyPw0KPiANCj4g Pg0KPiA+DQo+ID4NCj4gPiA+DQo+ID4gPiBkcGRrIHZlcnNpb246MjMuMDMNCj4gPiA+DQo+ID4g PiBTdWdnZXN0ZWQtYnk6IExpamlhbiBaaGFuZyA8bGlqaWFuLnpoYW5nQGFybS5jb20+DQo+ID4g PiBTaWduZWQtb2ZmLWJ5OiBGZWlmZWkgV2FuZyA8ZmVpZmVpLndhbmcyQGFybS5jb20+DQo+ID4g PiBSZXZpZXdlZC1ieTogUnVpZmVuZyBXYW5nIDxydWlmZW5nLndhbmdAYXJtLmNvbT4NCj4gPiA+ IFJldmlld2VkLWJ5OiBIb25uYXBwYSBOYWdhcmFoYWxsaSA8aG9ubmFwcGEubmFnYXJhaGFsbGlA YXJtLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gIGV4YW1wbGVzL2wzZndkL2wzZndkLmggICAgIHwg NjgNCj4gPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ID4gIGV4 YW1wbGVzL2wzZndkL2wzZndkX2xwbS5jIHwgMjYgKysrKysrKysrKysrKy0tDQo+ID4gPiAgZXhh bXBsZXMvbDNmd2QvbWFpbi5jICAgICAgfCAyMiArKysrKysrKysrKysNCj4gPiA+ICAzIGZpbGVz IGNoYW5nZWQsIDExNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiA+ IGRpZmYgLS1naXQgYS9leGFtcGxlcy9sM2Z3ZC9sM2Z3ZC5oIGIvZXhhbXBsZXMvbDNmd2QvbDNm d2QuaCBpbmRleA0KPiA+ID4gYjU1ODU1YzkzMi4uMmIzZmNhNjJmMyAxMDA2NDQNCj4gPiA+IC0t LSBhL2V4YW1wbGVzL2wzZndkL2wzZndkLmgNCj4gPiA+ICsrKyBiL2V4YW1wbGVzL2wzZndkL2wz ZndkLmgNCj4gPiA+IEBAIC01Niw2ICs1NiwxNyBAQA0KPiA+ID4gICNkZWZpbmUgTDNGV0RfSEFT SF9FTlRSSUVTICAgICAgICAgICAgICgxMDI0KjEwMjQqMSkNCj4gPiA+ICAjZW5kaWYNCj4gPiA+ DQo+ID4gPiArc3RydWN0IGxjb3JlX3N0YXRzIHsNCj4gPiA+ICsgICAgdWludDMyX3QgbmJfcnhf cGt0c1sxNl07DQo+ID4gPiArICAgIHVpbnQzMl90IG51bV9sb29wWzE2XTsNCj4gPiA+ICsgICAg dWludDMyX3Qgbm9uZV9sb29wWzE2XTsNCj4gPiA+ICsgICAgdWludDMyX3Qgbm9fZnVsbF9sb29w WzE2XTsNCj4gPiA+ICsgICAgZmxvYXQgIG5vbmVfbG9vcF9wZXJbMTZdOw0KPiA+ID4gKyAgICBm bG9hdCBub19mdWxsX2xvb3BfcGVyWzE2XTsNCj4gPiA+ICt9IF9fcnRlX2NhY2hlX2FsaWduZWQ7 DQo+ID4gPiArDQo+ID4gPiArZXh0ZXJuIHN0cnVjdCBsY29yZV9zdGF0cyBzdGF0c1tSVEVfTUFY X0xDT1JFXTsNCj4gPiA+ICsNCj4gPiA+ICBzdHJ1Y3QgcGFybV9jZmcgew0KPiA+ID4gICAgICAg ICBjb25zdCBjaGFyICpydWxlX2lwdjRfbmFtZTsNCj4gPiA+ICAgICAgICAgY29uc3QgY2hhciAq cnVsZV9pcHY2X25hbWU7DQo+ID4gPiBAQCAtMTE1LDYgKzEyNiw2MyBAQCBleHRlcm4gc3RydWN0 IGFjbF9hbGdvcml0aG1zIGFjbF9hbGdbXTsNCj4gPiA+DQo+ID4gPiAgZXh0ZXJuIHVpbnQzMl90 IG1heF9wa3RfbGVuOw0KPiA+ID4NCj4gPiA+ICtzdGF0aWMgaW5saW5lIHZvaWQNCj4gPiA+ICtu aWNfeHN0YXRzX2Rpc3BsYXkodWludDMyX3QgcG9ydF9pZCkgew0KPiA+ID4gKyAgICAgICAgc3Ry dWN0IHJ0ZV9ldGhfeHN0YXQgKnhzdGF0czsNCj4gPiA+ICsgICAgICAgIGludCBjbnRfeHN0YXRz LCBpZHhfeHN0YXQ7DQo+ID4gPiArICAgICAgICBzdHJ1Y3QgcnRlX2V0aF94c3RhdF9uYW1lICp4 c3RhdHNfbmFtZXM7DQo+ID4gPiArDQo+ID4gPiArICAgICAgICBwcmludGYoIiMjIyMjIyBOSUMg ZXh0ZW5kZWQgc3RhdGlzdGljcyBmb3IgcG9ydCAlLTJkXG4iLCBwb3J0X2lkKTsNCj4gPiA+ICsg ICAgICAgIGlmICghcnRlX2V0aF9kZXZfaXNfdmFsaWRfcG9ydChwb3J0X2lkKSkgew0KPiA+ID4g KyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yOiBJbnZhbGlkIHBvcnQgbnVt YmVyICVpXG4iLCBwb3J0X2lkKTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgcmV0dXJuOw0KPiA+ ID4gKyAgICAgICAgfQ0KPiA+ID4gKw0KPiA+ID4gKyAgICAgICAgLyogR2V0IGNvdW50ICovDQo+ ID4gPiArICAgICAgICBjbnRfeHN0YXRzID0gcnRlX2V0aF94c3RhdHNfZ2V0X25hbWVzKHBvcnRf aWQsIE5VTEwsIDApOw0KPiA+ID4gKyAgICAgICAgaWYgKGNudF94c3RhdHMgIDwgMCkgew0KPiA+ ID4gKyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVycm9yOiBDYW5ub3QgZ2V0IGNv dW50IG9mIHhzdGF0c1xuIik7DQo+ID4gPiArICAgICAgICAgICAgICAgIHJldHVybjsNCj4gPiA+ ICsgICAgICAgIH0NCj4gPiA+ICsNCj4gPiA+ICsgICAgICAgIC8qIEdldCBpZC1uYW1lIGxvb2t1 cCB0YWJsZSAqLw0KPiA+ID4gKyAgICAgICAgeHN0YXRzX25hbWVzID0gbWFsbG9jKHNpemVvZihz dHJ1Y3QgcnRlX2V0aF94c3RhdF9uYW1lKSAqDQo+IGNudF94c3RhdHMpOw0KPiA+ID4gKyAgICAg ICAgaWYgKHhzdGF0c19uYW1lcyA9PSBOVUxMKSB7DQo+ID4gPiArICAgICAgICAgICAgICAgIGZw cmludGYoc3RkZXJyLCAiQ2Fubm90IGFsbG9jYXRlIG1lbW9yeSBmb3IgeHN0YXRzIGxvb2t1cFxu Iik7DQo+ID4gPiArICAgICAgICAgICAgICAgIHJldHVybjsNCj4gPiA+ICsgICAgICAgIH0NCj4g PiA+ICsgICAgICAgIGlmIChjbnRfeHN0YXRzICE9IHJ0ZV9ldGhfeHN0YXRzX2dldF9uYW1lcygN Cj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBwb3J0X2lkLCB4c3RhdHNfbmFtZXMsIGNu dF94c3RhdHMpKSB7DQo+ID4gPiArICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJy b3I6IENhbm5vdCBnZXQgeHN0YXRzIGxvb2t1cFxuIik7DQo+ID4gPiArICAgICAgICAgICAgICAg IGZyZWUoeHN0YXRzX25hbWVzKTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgcmV0dXJuOw0KPiA+ ID4gKyAgICAgICAgfQ0KPiA+ID4gKw0KPiA+ID4gKyAgICAgICAgLyogR2V0IHN0YXRzIHRoZW1z ZWx2ZXMgKi8NCj4gPiA+ICsgICAgICAgIHhzdGF0cyA9IG1hbGxvYyhzaXplb2Yoc3RydWN0IHJ0 ZV9ldGhfeHN0YXQpICogY250X3hzdGF0cyk7DQo+ID4gPiArICAgICAgICBpZiAoeHN0YXRzID09 IE5VTEwpIHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJDYW5ub3Qg YWxsb2NhdGUgbWVtb3J5IGZvciB4c3RhdHNcbiIpOw0KPiA+ID4gKyAgICAgICAgICAgICAgICBm cmVlKHhzdGF0c19uYW1lcyk7DQo+ID4gPiArICAgICAgICAgICAgICAgIHJldHVybjsNCj4gPiA+ ICsgICAgICAgIH0NCj4gPiA+ICsgICAgICAgIGlmIChjbnRfeHN0YXRzICE9IHJ0ZV9ldGhfeHN0 YXRzX2dldChwb3J0X2lkLCB4c3RhdHMsIGNudF94c3RhdHMpKSB7DQo+ID4gPiArICAgICAgICAg ICAgICAgIGZwcmludGYoc3RkZXJyLCAiRXJyb3I6IFVuYWJsZSB0byBnZXQgeHN0YXRzXG4iKTsN Cj4gPiA+ICsgICAgICAgICAgICAgICAgZnJlZSh4c3RhdHNfbmFtZXMpOw0KPiA+ID4gKyAgICAg ICAgICAgICAgICBmcmVlKHhzdGF0cyk7DQo+ID4gPiArICAgICAgICAgICAgICAgIHJldHVybjsN Cj4gPiA+ICsgICAgICAgIH0NCj4gPiA+ICsNCj4gPiA+ICsgICAgICAgIC8qIERpc3BsYXkgeHN0 YXRzICovDQo+ID4gPiArICAgICAgICBmb3IgKGlkeF94c3RhdCA9IDA7IGlkeF94c3RhdCA8IGNu dF94c3RhdHM7IGlkeF94c3RhdCsrKSB7DQo+ID4gPiArICAgICAgICAgICAgICAgIHByaW50Zigi JXM6ICUiUFJJdTY0IlxuIiwNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICB4c3RhdHNf bmFtZXNbaWR4X3hzdGF0XS5uYW1lLA0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIHhz dGF0c1tpZHhfeHN0YXRdLnZhbHVlKTsNCj4gPiA+ICsgICAgICAgIH0NCj4gPiA+ICsgICAgICAg IGZyZWUoeHN0YXRzX25hbWVzKTsNCj4gPiA+ICsgICAgICAgIGZyZWUoeHN0YXRzKTsNCj4gPiA+ ICt9DQo+ID4gPiArDQo+ID4gPiAgLyogU2VuZCBidXJzdCBvZiBwYWNrZXRzIG9uIGFuIG91dHB1 dCBpbnRlcmZhY2UgKi8gIHN0YXRpYyBpbmxpbmUNCj4gPiA+IGludCBzZW5kX2J1cnN0KHN0cnVj dCBsY29yZV9jb25mICpxY29uZiwgdWludDE2X3QgbiwgdWludDE2X3QgcG9ydCkNCj4gPiA+IGRp ZmYgLS1naXQgYS9leGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9scG0uYyBiL2V4YW1wbGVzL2wzZndkL2wz ZndkX2xwbS5jDQo+ID4gPiBpbmRleA0KPiA+ID4gNGFjMTkyNWM4NC4uOWUyN2U5NTRiOSAxMDA2 NDQNCj4gPiA+IC0tLSBhL2V4YW1wbGVzL2wzZndkL2wzZndkX2xwbS5jDQo+ID4gPiArKysgYi9l eGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9scG0uYw0KPiA+ID4gQEAgLTQxLDYgKzQxLDggQEANCj4gPiA+ ICBzdGF0aWMgc3RydWN0IHJ0ZV9scG0gKmlwdjRfbDNmd2RfbHBtX2xvb2t1cF9zdHJ1Y3RbTkJf U09DS0VUU107DQo+ID4gPiAgc3RhdGljIHN0cnVjdCBydGVfbHBtNiAqaXB2Nl9sM2Z3ZF9scG1f bG9va3VwX3N0cnVjdFtOQl9TT0NLRVRTXTsNCj4gPiA+DQo+ID4gPiArZXh0ZXJuIHN0cnVjdCBs Y29yZV9zdGF0cyBzdGF0c1tSVEVfTUFYX0xDT1JFXTsNCj4gPiA+ICsNCj4gPiA+ICAvKiBQZXJm b3JtaW5nIExQTS1iYXNlZCBsb29rdXBzLiA4PCAqLyAgc3RhdGljIGlubGluZSB1aW50MTZfdA0K PiA+ID4gbHBtX2dldF9pcHY0X2RzdF9wb3J0KGNvbnN0IHN0cnVjdCBydGVfaXB2NF9oZHIgKmlw djRfaGRyLCBAQCAtMTUzLDYNCj4gPiA+ICsxNTUsNyBAQCBscG1fbWFpbl9sb29wKF9fcnRlX3Vu dXNlZCB2b2lkICpkdW1teSkNCj4gPiA+ICAgICAgICAgc3RydWN0IGxjb3JlX2NvbmYgKnFjb25m Ow0KPiA+ID4gICAgICAgICBjb25zdCB1aW50NjRfdCBkcmFpbl90c2MgPSAocnRlX2dldF90c2Nf aHooKSArIFVTX1BFUl9TIC0gMSkgLw0KPiA+ID4gICAgICAgICAgICAgICAgIFVTX1BFUl9TICog QlVSU1RfVFhfRFJBSU5fVVM7DQo+ID4gPiArICAgICAgIGJvb2wgc3RhcnRfY291bnQgPSAwOw0K PiA+ID4NCj4gPiA+ICAgICAgICAgbGNvcmVfaWQgPSBydGVfbGNvcmVfaWQoKTsNCj4gPiA+ICAg ICAgICAgcWNvbmYgPSAmbGNvcmVfY29uZltsY29yZV9pZF07IEBAIC0yMDcsOCArMjEwLDIyIEBA DQo+ID4gPiBscG1fbWFpbl9sb29wKF9fcnRlX3VudXNlZCB2b2lkICpkdW1teSkNCj4gPiA+ICAg ICAgICAgICAgICAgICAgICAgICAgIHF1ZXVlaWQgPSBxY29uZi0+cnhfcXVldWVfbGlzdFtpXS5x dWV1ZV9pZDsNCj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgIG5iX3J4ID0gcnRlX2V0aF9y eF9idXJzdChwb3J0aWQsIHF1ZXVlaWQsIHBrdHNfYnVyc3QsDQo+ID4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE1BWF9QS1RfQlVSU1QpOw0KPiA+ID4gLSAgICAgICAgICAgICAg ICAgICAgICAgaWYgKG5iX3J4ID09IDApDQo+ID4gPiAtICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnRpbnVlOw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXJ0 X2NvdW50ID09IDApIHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYg KG5iX3J4ICE9IDApDQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3RhcnRfY291bnQgPSAxOw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ ID4gKw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXJ0X2NvdW50ID09IDEp IHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHNbbGNvcmVfaWRd Lm5iX3J4X3BrdHNbaV0gKz0gbmJfcng7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0YXRzW2xjb3JlX2lkXS5udW1fbG9vcFtpXSsrOw0KPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpZiAobmJfcnggPCBNQVhfUEtUX0JVUlNUICYmIG5iX3J4ID4N Cj4gPiA+ICsgMCkNCj4gPiA+ICsNCj4gPiA+ICsgc3RhdHNbbGNvcmVfaWRdLm5vX2Z1bGxfbG9v cFtpXSsrOw0KPiA+ID4gKw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp ZiAobmJfcnggPT0gMCkgew0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0YXRzW2xjb3JlX2lkXS5ub25lX2xvb3BbaV0rKzsNCj4gPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsNCj4gPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgfQ0K PiA+ID4NCj4gPiA+ICAjaWYgZGVmaW5lZCBSVEVfQVJDSF9YODYgfHwgZGVmaW5lZCBfX0FSTV9O RU9OIFwNCj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBkZWZpbmVkIFJURV9BUkNI X1BQQ182NCBAQCAtMjIzLDYNCj4gPiA+ICsyNDAsMTEgQEAgbHBtX21haW5fbG9vcChfX3J0ZV91 bnVzZWQgdm9pZCAqZHVtbXkpDQo+ID4gPiAgICAgICAgICAgICAgICAgY3VyX3RzYyA9IHJ0ZV9y ZHRzYygpOw0KPiA+ID4gICAgICAgICB9DQo+ID4gPg0KPiA+ID4gKyAgICAgICBmb3IgKGkgPSAw OyBpIDwgbl9yeF9xOyArK2kpIHsNCj4gPiA+ICsgICAgICAgICAgICAgICBzdGF0c1tsY29yZV9p ZF0ubm9uZV9sb29wX3BlcltpXSA9DQo+ID4gKGZsb2F0KXN0YXRzW2xjb3JlX2lkXS5ub25lX2xv b3BbaV0vc3RhdHNbbGNvcmVfaWRdLm51bV9sb29wW2ldKjEwMDsNCj4gPiA+ICsgICAgICAgICAg ICAgICBzdGF0c1tsY29yZV9pZF0ubm9fZnVsbF9sb29wX3BlcltpXSA9DQo+ID4gKGZsb2F0KXN0 YXRzW2xjb3JlX2lkXS5ub19mdWxsX2xvb3BbaV0vc3RhdHNbbGNvcmVfaWRdLm51bV9sb29wW2ld KjEwMA0KPiA+IDsNCj4gPiA+ICsgICAgICAgfQ0KPiA+ID4gKw0KPiA+ID4gICAgICAgICByZXR1 cm4gMDsNCj4gPiA+ICB9DQo+ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBhL2V4YW1wbGVzL2wzZndk L21haW4uYyBiL2V4YW1wbGVzL2wzZndkL21haW4uYyBpbmRleA0KPiA+ID4gYTRmMDYxNTM3ZS4u NDcyNzIxNWVhZSAxMDA2NDQNCj4gPiA+IC0tLSBhL2V4YW1wbGVzL2wzZndkL21haW4uYw0KPiA+ ID4gKysrIGIvZXhhbXBsZXMvbDNmd2QvbWFpbi5jDQo+ID4gPiBAQCAtNTMsNiArNTMsOCBAQA0K PiA+ID4NCj4gPiA+ICAjZGVmaW5lIE1BWF9MQ09SRV9QQVJBTVMgMTAyNA0KPiA+ID4NCj4gPiA+ ICtzdHJ1Y3QgbGNvcmVfc3RhdHMgc3RhdHNbUlRFX01BWF9MQ09SRV07DQo+ID4gPiArDQo+ID4g PiAgdWludDE2X3QgbmJfcnhkID0gUlhfREVTQ19ERUZBVUxUOw0KPiA+ID4gIHVpbnQxNl90IG5i X3R4ZCA9IFRYX0RFU0NfREVGQVVMVDsNCj4gPiA+DQo+ID4gPiBAQCAtMTU5Miw2ICsxNTk0LDI2 IEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0KPiA+ID4gICAgICAgICB9IGVsc2Ugew0K PiA+ID4gICAgICAgICAgICAgICAgIHJ0ZV9lYWxfbXBfd2FpdF9sY29yZSgpOw0KPiA+ID4NCj4g PiA+ICsgICAgICAgICAgICAgICBmb3IgKGxjb3JlX2lkID0gMDsgbGNvcmVfaWQgPCBSVEVfTUFY X0xDT1JFOyBsY29yZV9pZCsrKSB7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICBpZiAo cnRlX2xjb3JlX2lzX2VuYWJsZWQobGNvcmVfaWQpID09IDApDQo+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgcWNvbmYgPSAmbGNvcmVfY29uZltsY29yZV9pZF07DQo+ID4gPiArICAgICAgICAgICAgICAg ICAgICAgICBmb3IgKHF1ZXVlID0gMDsgcXVldWUgPCBxY29uZi0+bl9yeF9xdWV1ZTsgKytxdWV1 ZSkgew0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludGYoIlxubGNv cmUgaWQ6JWRcbiIsIGxjb3JlX2lkKTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcHJpbnRmKCJxdWV1ZV9pZDolZFxuIixxdWV1ZSk7DQo+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHByaW50ZigiUnggcGt0ICVkXG4iLCBzdGF0c1tsY29yZV9pZF0u bmJfcnhfcGt0c1txdWV1ZV0pOw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBwcmludGYoImxvb3AgbnVtYmVyOiAlZCwgMCBwa3RzDQo+ID4gPiArIGxvb3A6JWQsIDwzMiBw a3RzDQo+ID4gbG9vcDolZFxuIiwNCj4gPiA+ICsNCj4gPiA+ICsgc3RhdHNbbGNvcmVfaWRdLm51 bV9sb29wW3F1ZXVlXSwNCj4gPiBzdGF0c1tsY29yZV9pZF0ubm9uZV9sb29wW3F1ZXVlXSwNCj4g PiBzdGF0c1tsY29yZV9pZF0ubm9fZnVsbF9sb29wW3F1ZXVlXSk7DQo+ID4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHByaW50ZigiMCBwa3RzIGxvb3ANCj4gPiA+ICsgcGVyY2Vu dGFnZTolLjJmJSUsIDwzMiBwa3RzIGxvb3ANCj4gPiBwZXJjZW50YWdlOiUuMmYlJVxuIiwNCj4g PiA+ICsNCj4gPiA+ICsgc3RhdHNbbGNvcmVfaWRdLm5vbmVfbG9vcF9wZXJbcXVldWVdLA0KPiA+ IHN0YXRzW2xjb3JlX2lkXS5ub19mdWxsX2xvb3BfcGVyW3F1ZXVlXSk7DQo+ID4gPiArDQo+ID4g PiArIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiIpOw0K PiA+ID4gKw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ID4gKyAgICAgICAg ICAgICAgIH0NCj4gPiA+ICsNCj4gPiA+ICsgICAgICAgICAgICAgICBuaWNfeHN0YXRzX2Rpc3Bs YXkoMCk7DQo+ID4gPiArICAgICAgICAgICAgICAgbmljX3hzdGF0c19kaXNwbGF5KDEpOw0KPiA+ ID4gKw0KPiA+ID4gICAgICAgICAgICAgICAgIFJURV9FVEhfRk9SRUFDSF9ERVYocG9ydGlkKSB7 DQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoKGVuYWJsZWRfcG9ydF9tYXNrICYg KDEgPDwgcG9ydGlkKSkgPT0gMCkNCj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29udGludWU7DQo+ID4gPiAtLQ0KPiA+ID4gMi4yNS4xDQo+ID4gPg0KDQo=