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 4271DA0C4B; Wed, 7 Jul 2021 19:09:47 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B906F413DB; Wed, 7 Jul 2021 19:09:46 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id AAD28413B6 for ; Wed, 7 Jul 2021 19:09:45 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10037"; a="231088270" X-IronPort-AV: E=Sophos;i="5.84,220,1620716400"; d="scan'208";a="231088270" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jul 2021 10:09:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,220,1620716400"; d="scan'208";a="410940740" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by orsmga003.jf.intel.com with ESMTP; 07 Jul 2021 10:09:44 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Wed, 7 Jul 2021 10:09:43 -0700 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Wed, 7 Jul 2021 10:09:43 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10 via Frontend Transport; Wed, 7 Jul 2021 10:09:43 -0700 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.48) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Wed, 7 Jul 2021 10:09:42 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ej9hEz5IdBFvw+dQGqo67TvjjuzQeLoCPrBPYnJeu7NFRVck5MtTzi3xzPGmG/uCafP8DKpT5yg0nL3PeDMV9wNZZ947aQUaFqADo7A9so6p33kgffMAnu6TLBftjsd2Qh9tfeM0RxUZZT0Y7fmE3dmhY4weGKze2bskVanLnuR6uIKidv75txe7Kp+sENKJaQ3vEVofKyAWwzYdc1J4ahAlrkxs6MMinmZi8K5IqSI0QjzJpQoyq4xqIjfQFF8ZkCLXUZJxENzz6uoIVug4X2hfsPYO0MlvrVCW3fsitDHClKUvyfcxt/KxYgsis5EfqfrId9dDF8DlX8gEUevt4Q== 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=c1/EBJ/nFODk64KHjCp77QlYTRFiuSkYRvi6J7x3g10=; b=VjhCXz6/HvBDe9BQ81xu5j54bHy4/ZalgNFj8J1aB9b0gHY6saNrx+9+jvy0yUwQFDXqHEqJzqX719s6us5pvNZlr3rTC9vceOch5o9IXz1JTIW5Hfq3jCdThAxrb7mqHLPJ9YSKS/MDqjM+ndoPDLuQrXISR2yUIXluKnH1tMWt+aAm3+a0TC4zi00B/kVyjkaA4ysO8tt9g9R4WIyjL0P96Ya9uivGLQZgrm9I6PlIDLq/iAY72F98k7/qfOZdzTcr52GIBiPMI52EpEu74YBWwAARUrBinyrsOaS5o27uKvmMLa9XD33LYV/k9+uYPaVpS7rBoKTnsSDdcG4ATw== 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=c1/EBJ/nFODk64KHjCp77QlYTRFiuSkYRvi6J7x3g10=; b=W6GsymSA68f6qy829PH0oYo7Y3TBJuugw0KXVo4l+cIcpRZBRV6Sii7F4Cdb1/kAJj2Wg+sJuICPPsKaqoth2KZn93iOMSssdeZpN2NtZFdHBFBHJy4olQNGg/Tt1re7GdFVlY1CA7XSAX3/lf+aW0jchgG47hm4ajElZ4Bh6t8= Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by DM5PR1101MB2331.namprd11.prod.outlook.com (2603:10b6:3:a2::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.19; Wed, 7 Jul 2021 17:09:39 +0000 Received: from DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::7dc4:66b0:f76b:6d48]) by DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::7dc4:66b0:f76b:6d48%7]) with mapi id 15.20.4287.033; Wed, 7 Jul 2021 17:09:39 +0000 From: "Ananyev, Konstantin" To: "Burakov, Anatoly" , "dev@dpdk.org" , "Hunt, David" CC: "Loftus, Ciara" Thread-Topic: [PATCH v6 5/7] power: support callbacks for multiple Rx queues Thread-Index: AQHXcbGcE9tsK0WI90SZHIOtazuLp6s2R7XQgAEEi4CAAAClsIAAHVcAgAAOTvCAAB63AIAAKkFg Date: Wed, 7 Jul 2021 17:09:39 +0000 Message-ID: References: <5d3a791ba126c53f1077c5f7aaa4bb55e3d90c8a.1625498488.git.anatoly.burakov@intel.com> <3858a89d-30cd-e63e-ad85-7d1f61fc8564@intel.com> In-Reply-To: <3858a89d-30cd-e63e-ad85-7d1f61fc8564@intel.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.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5b2807db-8799-459d-9269-08d9416a019c x-ms-traffictypediagnostic: DM5PR1101MB2331: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: oSdSl/9k2o+hWlWHCg3tNfMZWjL11v644FU65qZW1w7QPi73OO+cVNkswTSzjhz/hR9NFG9CHCqK/QVeIHk6AZLqMTQhisQB2/MrSp99x7eVwbeIZw1+aC5bZNbMGaTO4NFElen/uBVxKN1z9P/zzJpcfjbA6erc43g9QxXqJSb5DNQdzaNeHSg9RRvSTeQtVVv0KeXgHGack4o+/ae483GmEpArjlniQCZbT3mfbjjLRuH+oZfx97w+T3Z5cpDEqYK1cSpqTGnzwn22gLeUQZ4jCZRk3PIE/Y+l45uiBZRuppkXR3UgVghrLf7R40yQHCZjP0kd1Sj5wKSXmgWNMPiRBwabpYQwZgFvj9Omb42q+ZkysjB79EEiqb8wMzInRpOKQA5F8IlnjNd7xUkwns1RLRDQiiOAt+t7cAamdxuQpNWg0jxSIX2RUPhNUJ+tw4XtHfxk8YngqsDYK7IreM5O68RZ3t7a8mpt0YUz+g6Ci18S607BavpER5toqgmsV4SRVLzlCpGR85i8k9uHTeD22GUS/FjXi8TmzJkZZGYgnkTA5abBvbQMXCY+7Fv1KL0azVtEIDpMHSgdBDmcnhXLl4gzLYL0xwdz3a5qNaGInQvPDHvwYw/3ioKPUnqkP8w8KsIQHT+ckJ1BK8MCvA== 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:(376002)(396003)(136003)(39860400002)(366004)(346002)(4326008)(5660300002)(186003)(8936002)(52536014)(107886003)(8676002)(6636002)(83380400001)(26005)(55236004)(86362001)(7696005)(66946007)(9686003)(2906002)(38100700002)(110136005)(478600001)(66476007)(66556008)(64756008)(55016002)(33656002)(71200400001)(6506007)(316002)(122000001)(76116006)(66446008); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?N2VHWUNiRnFSbWFXNFVQN1JVNjd4eTZhdXMwaWhyVTIrQkVvRnRSN2ZUelZX?= =?utf-8?B?OHVXRnRYRnJERVRGdlplOGhnQkhSME5NNG9jZUU4bGdnc2xDRUxiU3pjb2tT?= =?utf-8?B?NE92SkU0dmV6MGRuamNaVEpYeHk5QWV6S2hmTlZiVjR5TEhLVSt6N1E1aU51?= =?utf-8?B?bFhPQ0J1NWVrQW9OVEJUMjlWTTFsVVBKY0dtc0hYUlJlWVVGL0pyM3Buam8r?= =?utf-8?B?Ujg4UVNpUEZWS01JZHh6Z2dzcXQwaHdhRzltb3RFNWhJL2pnQVR0aGRWWHpz?= =?utf-8?B?blNFNkk5SmJVZnpCZlJNMEdRU0xydXk1N0dlKzR2clZSYit2NGhsRjVJd3hE?= =?utf-8?B?VlpwR1dpQWlmN1NnaC92ZnFsc1hlK1g2Yk1Fc3l6NExSUkFKSUhkUS8zTXMw?= =?utf-8?B?WlUvUjdDYTUvbEU5Z2N0V2hNZXFpcVpZMFBoL1IxeEsvUG5YOFlNTXhpd2c5?= =?utf-8?B?KzVNdC9TSGpvRG1vQ205bElCNlVXc2ozTHBQRUwyL09iWmVGRmZ4UTI3UnlO?= =?utf-8?B?eEoybUNqTU9JbnAxdEQzdDdDdVA2UmMzQTlqaXBMeWRNYm8rdmxqd1oxTUkr?= =?utf-8?B?MjZ4OXJoSnIyVm9wM21OZ1lqUWpqdEF6emlldVBnOG5XMzFsaXIybSt3Ykk3?= =?utf-8?B?dk1adUtFamgxdnYrMEFDdlF5OUtyOUl6NkFZZm1iYkF2TktRWi9scVhyTUZk?= =?utf-8?B?V0xNREJYTnhubHBwcWlTSHhYUWpweTRFUm1TKy9XeUZVelZ5TFBDWkRGYm1y?= =?utf-8?B?blZ3cnhmYXhsN2ZYZjJaQWpleGNGbnR1dU9NQlFMVEw4eitxOFROOTNXVFM5?= =?utf-8?B?MXlsWXo2MDlGdndhQlhDTEpSUzRXNTYyT0pwS0c5My9yK0h4NkVsQ0VQU0cz?= =?utf-8?B?RmNFRHBmcXBTSkJWYzRJSGorK0l6aE9rRXJJcS8xN2NZNFFzclE2WkQvdmsx?= =?utf-8?B?UDd1THA3WHJVOVRSZkZkUE5PZWVXQ0k1Z3lJQUptSUxMVTJ3ZGt6OW5lWklO?= =?utf-8?B?bnRSenBxb0grdWdoOG54S3JRSCt2ZEVGZ29MM0tLTS9CQ2tRS0pkVDBzQzBV?= =?utf-8?B?TnFBVVEyNjRxWWlsUTBISHhlWU1aM0QxckpuQlg5WW9TVzg5QVNkSUFXRVAv?= =?utf-8?B?bmM5bTRIUWtkNXpmR1g5SGZobUJ4Y3JJMGJ1dTZBQzhyd1NEQ1hkL1ZYdUZJ?= =?utf-8?B?NjhPRFBwUFZZRU5RNTFnOXIzbDNYUUJIdVJYZXZMSTYrcUNtS2UrNUFidldj?= =?utf-8?B?bE9zNGhkNE4yWHZDUzA1MkNkbndmUjlaaEY4bnp6dFEwR1NreTU5UWJVWXg2?= =?utf-8?B?SFBCSWZscS96ODk1T1U3VktsYTByb2NmTnE4d2c2VlNEdkt2S3BONFltTWJr?= =?utf-8?B?QWFyd3BJTnNkMlJFdmxUVkFnbEMwRmFCWlVjNGJYOHY5RFh6VHA2UHBCSlpQ?= =?utf-8?B?T3RxcVd1UTlYY1VNWjhWb3NoMGljOG9JUjl1aEdJT09pcDlLNjh3YVdGOTF2?= =?utf-8?B?TitoekZlLzRuZ0Y2WTgybG9zQ2ZLTjVwUVZKblRONFJtWTV1OS9jaFFBQTIz?= =?utf-8?B?SHRQQTJJZFUvOVdEcFBsb1pLZFR0L0tkUUdURk1IRnBYcmUwS1VpVDQwNnpS?= =?utf-8?B?bHd1ZnlLOGJrbE5LQ296eE12dlV0YXJaYTkzOWRjdHA3WGtuUmM1LzJrbmt2?= =?utf-8?B?VjV6QVBiaVFicUdZWWpsZWp5dWpCUXIxMEVZNTRtdjlJeUNiVXlNcHZZMG1L?= =?utf-8?Q?vkJfznaG/Xiywc8jfpEgkWEbRQGqFPQr8ie7qoD?= 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: 5b2807db-8799-459d-9269-08d9416a019c X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jul 2021 17:09:39.8183 (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: FHMtCv6f+3IFpsIm0O66pojcqCbM1kdh2GXp+Kc0tdHRtrIdy0EJkfSlUyMIAmQWo1vOSOlJAyT1yG9XUCy9Dg7WXxNunspviwrDvtva+E0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1101MB2331 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v6 5/7] power: support callbacks for multiple Rx queues 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" DQo+ID4+Pj4+DQo+ID4+Pj4+PiBDdXJyZW50bHksIHRoZXJlIGlzIGEgaGFyZCBsaW1pdGF0aW9u IG9uIHRoZSBQTUQgcG93ZXIgbWFuYWdlbWVudA0KPiA+Pj4+Pj4gc3VwcG9ydCB0aGF0IG9ubHkg YWxsb3dzIGl0IHRvIHN1cHBvcnQgYSBzaW5nbGUgcXVldWUgcGVyIGxjb3JlLiBUaGlzIGlzDQo+ ID4+Pj4+PiBub3QgaWRlYWwgYXMgbW9zdCBEUERLIHVzZSBjYXNlcyB3aWxsIHBvbGwgbXVsdGlw bGUgcXVldWVzIHBlciBjb3JlLg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IFRoZSBQTUQgcG93ZXIgbWFu YWdlbWVudCBtZWNoYW5pc20gcmVsaWVzIG9uIGV0aGRldiBSeCBjYWxsYmFja3MsIHNvIGl0DQo+ ID4+Pj4+PiBpcyB2ZXJ5IGRpZmZpY3VsdCB0byBpbXBsZW1lbnQgc3VjaCBzdXBwb3J0IGJlY2F1 c2UgY2FsbGJhY2tzIGFyZQ0KPiA+Pj4+Pj4gZWZmZWN0aXZlbHkgc3RhdGVsZXNzIGFuZCBoYXZl IG5vIHZpc2liaWxpdHkgaW50byB3aGF0IHRoZSBvdGhlciBldGhkZXYNCj4gPj4+Pj4+IGRldmlj ZXMgYXJlIGRvaW5nLiBUaGlzIHBsYWNlcyBsaW1pdGF0aW9ucyBvbiB3aGF0IHdlIGNhbiBkbyB3 aXRoaW4gdGhlDQo+ID4+Pj4+PiBmcmFtZXdvcmsgb2YgUnggY2FsbGJhY2tzLCBidXQgdGhlIGJh c2ljcyBvZiB0aGlzIGltcGxlbWVudGF0aW9uIGFyZSBhcw0KPiA+Pj4+Pj4gZm9sbG93czoNCj4g Pj4+Pj4+DQo+ID4+Pj4+PiAtIFJlcGxhY2UgcGVyLXF1ZXVlIHN0cnVjdHVyZXMgd2l0aCBwZXIt bGNvcmUgb25lcywgc28gdGhhdCBhbnkgZGV2aWNlDQo+ID4+Pj4+PiAgICAgIHBvbGxlZCBmcm9t IHRoZSBzYW1lIGxjb3JlIGNhbiBzaGFyZSBkYXRhDQo+ID4+Pj4+PiAtIEFueSBxdWV1ZSB0aGF0 IGlzIGdvaW5nIHRvIGJlIHBvbGxlZCBmcm9tIGEgc3BlY2lmaWMgbGNvcmUgaGFzIHRvIGJlDQo+ ID4+Pj4+PiAgICAgIGFkZGVkIHRvIHRoZSBsaXN0IG9mIHF1ZXVlcyB0byBwb2xsLCBzbyB0aGF0 IHRoZSBjYWxsYmFjayBpcyBhd2FyZSBvZg0KPiA+Pj4+Pj4gICAgICBvdGhlciBxdWV1ZXMgYmVp bmcgcG9sbGVkIGJ5IHRoZSBzYW1lIGxjb3JlDQo+ID4+Pj4+PiAtIEJvdGggdGhlIGVtcHR5IHBv bGwgY291bnRlciBhbmQgdGhlIGFjdHVhbCBwb3dlciBzYXZpbmcgbWVjaGFuaXNtIGlzDQo+ID4+ Pj4+PiAgICAgIHNoYXJlZCBiZXR3ZWVuIGFsbCBxdWV1ZXMgcG9sbGVkIG9uIGEgcGFydGljdWxh ciBsY29yZSwgYW5kIGlzIG9ubHkNCj4gPj4+Pj4+ICAgICAgYWN0aXZhdGVkIHdoZW4gYWxsIHF1 ZXVlcyBpbiB0aGUgbGlzdCB3ZXJlIHBvbGxlZCBhbmQgd2VyZSBkZXRlcm1pbmVkDQo+ID4+Pj4+ PiAgICAgIHRvIGhhdmUgbm8gdHJhZmZpYy4NCj4gPj4+Pj4+IC0gVGhlIGxpbWl0YXRpb24gb24g VU1XQUlULWJhc2VkIHBvbGxpbmcgaXMgbm90IHJlbW92ZWQgYmVjYXVzZSBVTVdBSVQNCj4gPj4+ Pj4+ICAgICAgaXMgaW5jYXBhYmxlIG9mIG1vbml0b3JpbmcgbW9yZSB0aGFuIG9uZSBhZGRyZXNz Lg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IEFsc28sIHdoaWxlIHdlJ3JlIGF0IGl0LCB1cGRhdGUgYW5k IGltcHJvdmUgdGhlIGRvY3MuDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogQW5h dG9seSBCdXJha292IDxhbmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPg0KPiA+Pj4+Pj4gLS0tDQo+ ID4+Pj4+Pg0KPiA+Pj4+Pj4gTm90ZXM6DQo+ID4+Pj4+PiAgICAgICAgdjY6DQo+ID4+Pj4+PiAg ICAgICAgLSBUcmFjayBlYWNoIGluZGl2aWR1YWwgcXVldWUgc2xlZXAgc3RhdHVzIChLb25zdGFu dGluKQ0KPiA+Pj4+Pj4gICAgICAgIC0gRml4IHNlZ2ZhdWx0IChEYXZlKQ0KPiA+Pj4+Pj4NCj4g Pj4+Pj4+ICAgICAgICB2NToNCj4gPj4+Pj4+ICAgICAgICAtIFJlbW92ZSB0aGUgInBvd2VyIHNh dmUgcXVldWUiIEFQSSBhbmQgcmVwbGFjZSBpdCB3aXRoIG1lY2hhbmlzbSBzdWdnZXN0ZWQgYnkN Cj4gPj4+Pj4+ICAgICAgICAgIEtvbnN0YW50aW4NCj4gPj4+Pj4+DQo+ID4+Pj4+PiAgICAgICAg djM6DQo+ID4+Pj4+PiAgICAgICAgLSBNb3ZlIHRoZSBsaXN0IG9mIHN1cHBvcnRlZCBOSUNzIHRv IE5JQyBmZWF0dXJlIHRhYmxlDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gICAgICAgIHYyOg0KPiA+Pj4+ Pj4gICAgICAgIC0gVXNlIGEgVEFJTFEgZm9yIHF1ZXVlcyBpbnN0ZWFkIG9mIGEgc3RhdGljIGFy cmF5DQo+ID4+Pj4+PiAgICAgICAgLSBBZGRyZXNzIGZlZWRiYWNrIGZyb20gS29uc3RhbnRpbg0K PiA+Pj4+Pj4gICAgICAgIC0gQWRkIGFkZGl0aW9uYWwgY2hlY2tzIGZvciBzdG9wcGVkIHF1ZXVl cw0KPiA+Pj4+Pj4NCj4gPj4+Pg0KPiA+Pj4+IDxzbmlwPg0KPiA+Pj4+DQo+ID4+Pj4+IC4uLi4N Cj4gPj4+Pj4+ICtzdGF0aWMgaW5saW5lIHZvaWQNCj4gPj4+Pj4+ICtxdWV1ZV9yZXNldChzdHJ1 Y3QgcG1kX2NvcmVfY2ZnICpjZmcsIHN0cnVjdCBxdWV1ZV9saXN0X2VudHJ5ICpxY2ZnKQ0KPiA+ Pj4+Pj4gK3sNCj4gPj4+Pj4+ICsgICAgIGNvbnN0IGJvb2wgaXNfcmVhZHlfdG9fc2xlZXAgPSBx Y2ZnLT5uX2VtcHR5X3BvbGxzID4gRU1QVFlQT0xMX01BWDsNCj4gPj4+Pj4+ICsNCj4gPj4+Pj4+ ICsgICAgIC8qIHJlc2V0IGVtcHR5IHBvbGwgY291bnRlciBmb3IgdGhpcyBxdWV1ZSAqLw0KPiA+ Pj4+Pj4gKyAgICAgcWNmZy0+bl9lbXB0eV9wb2xscyA9IDA7DQo+ID4+Pj4+PiArICAgICAvKiBy ZXNldCB0aGUgcXVldWUgc2xlZXAgY291bnRlciBhcyB3ZWxsICovDQo+ID4+Pj4+PiArICAgICBx Y2ZnLT5uX3NsZWVwcyA9IDA7DQo+ID4+Pj4+PiArICAgICAvKiByZW1vdmUgdGhlIHF1ZXVlIGZy b20gbGlzdCBvZiBjb3JlcyByZWFkeSB0byBzbGVlcCAqLw0KPiA+Pj4+Pj4gKyAgICAgaWYgKGlz X3JlYWR5X3RvX3NsZWVwKQ0KPiA+Pj4+Pj4gKyAgICAgICAgICAgICBjZmctPm5fcXVldWVzX3Jl YWR5X3RvX3NsZWVwLS07DQo+ID4+Pj4+PiArICAgICAvKg0KPiA+Pj4+Pj4gKyAgICAgICogbm8g bmVlZCBjaGFuZ2UgdGhlIGxjb3JlIHNsZWVwIHRhcmdldCBjb3VudGVyIGJlY2F1c2UgdGhpcyBs Y29yZSB3aWxsDQo+ID4+Pj4+PiArICAgICAgKiByZWFjaCB0aGUgbl9zbGVlcHMgYW55d2F5LCBh bmQgdGhlIG90aGVyIGNvcmVzIGFyZSBhbHJlYWR5IGNvdW50ZWQgc28NCj4gPj4+Pj4+ICsgICAg ICAqIHRoZXJlJ3Mgbm8gbmVlZCB0byBkbyBhbnl0aGluZyBlbHNlLg0KPiA+Pj4+Pj4gKyAgICAg ICovDQo+ID4+Pj4+PiArfQ0KPiA+Pj4+Pj4gKw0KPiA+Pj4+Pj4gK3N0YXRpYyBpbmxpbmUgYm9v bA0KPiA+Pj4+Pj4gK3F1ZXVlX2Nhbl9zbGVlcChzdHJ1Y3QgcG1kX2NvcmVfY2ZnICpjZmcsIHN0 cnVjdCBxdWV1ZV9saXN0X2VudHJ5ICpxY2ZnKQ0KPiA+Pj4+Pj4gK3sNCj4gPj4+Pj4+ICsgICAg IC8qIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIC0gdGhhdCBtZWFucyB3ZSBoYXZlIGFuIGVtcHR5 IHBvbGwgKi8NCj4gPj4+Pj4+ICsgICAgIHFjZmctPm5fZW1wdHlfcG9sbHMrKzsNCj4gPj4+Pj4+ ICsNCj4gPj4+Pj4+ICsgICAgIC8qIGlmIHdlIGhhdmVuJ3QgcmVhY2hlZCB0aHJlc2hvbGQgZm9y IGVtcHR5IHBvbGxzLCB3ZSBjYW4ndCBzbGVlcCAqLw0KPiA+Pj4+Pj4gKyAgICAgaWYgKHFjZmct Pm5fZW1wdHlfcG9sbHMgPD0gRU1QVFlQT0xMX01BWCkNCj4gPj4+Pj4+ICsgICAgICAgICAgICAg cmV0dXJuIGZhbHNlOw0KPiA+Pj4+Pj4gKw0KPiA+Pj4+Pj4gKyAgICAgLyoNCj4gPj4+Pj4+ICsg ICAgICAqIHdlJ3ZlIHJlYWNoZWQgYSBwb2ludCB3aGVyZSB3ZSBhcmUgYWJsZSB0byBzbGVlcCwg YnV0IHdlIHN0aWxsIG5lZWQNCj4gPj4+Pj4+ICsgICAgICAqIHRvIGNoZWNrIGlmIHRoaXMgcXVl dWUgaGFzIGFscmVhZHkgYmVlbiBtYXJrZWQgZm9yIHNsZWVwaW5nLg0KPiA+Pj4+Pj4gKyAgICAg ICovDQo+ID4+Pj4+PiArICAgICBpZiAocWNmZy0+bl9zbGVlcHMgPT0gY2ZnLT5zbGVlcF90YXJn ZXQpDQo+ID4+Pj4+PiArICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KPiA+Pj4+Pj4gKw0KPiA+ Pj4+Pj4gKyAgICAgLyogbWFyayB0aGlzIHF1ZXVlIGFzIHJlYWR5IGZvciBzbGVlcCAqLw0KPiA+ Pj4+Pj4gKyAgICAgcWNmZy0+bl9zbGVlcHMgPSBjZmctPnNsZWVwX3RhcmdldDsNCj4gPj4+Pj4+ ICsgICAgIGNmZy0+bl9xdWV1ZXNfcmVhZHlfdG9fc2xlZXArKzsNCj4gPj4+Pj4NCj4gPj4+Pj4g U28sIGFzc3VtaW5nIHRoZXJlIGlzIG5vIGluY29taW5nIHRyYWZmaWMsIHNob3VsZCBpdCBiZToN Cj4gPj4+Pj4gMSkgcG9sbF9hbGxfcXVldWVzKHRpbWVzPUVNUFRZUE9MTF9NQVgpOyBzbGVlcDsg cG9sbF9hbGxfcXVldWVzKHRpbWVzPTEpOyBzbGVlcDsgcG9sbF9hbGxfcXVldWVzKHRpbWVzPTEp OyBzbGVlcDsgLi4uDQo+ID4+Pj4+IE9SDQo+ID4+Pj4+IDIpIHBvbGxfYWxsX3F1ZXVlcyh0aW1l cz1FTVBUWVBPTExfTUFYKTsgc2xlZXA7IHBvbGxfYWxsX3F1ZXVlcyh0aW1lcz0gRU1QVFlQT0xM X01BWCk7IHNsZWVwOyBwb2xsX2FsbF9xdWV1ZXModGltZXM9DQo+ID4+Pj4gRU1QVFlQT0xMX01B WCk7IHNsZWVwOyAuLi4NCj4gPj4+Pj4gPw0KPiA+Pj4+Pg0KPiA+Pj4+PiBNeSBpbml0aWFsIHRo b3VnaHQgd2FzIDIpIGJ1dCBtaWdodCBiZSB0aGUgaW50ZW50aW9uIGlzIDEpPw0KPiA+Pj4+DQo+ ID4+Pj4NCj4gPj4+PiBUaGUgaW50ZW50IGlzIDEpLCBub3QgMikuIFRoZXJlJ3Mgbm8gbmVlZCB0 byB3YWl0IGZvciBtb3JlIGVtcHR5IHBvbGxzDQo+ID4+Pj4gb25jZSB3ZSBwYXNzIHRoZSB0aHJl c2hvbGQgLSB3ZSBrZWVwIHNsZWVwaW5nIHVudGlsIHRoZXJlJ3MgdHJhZmZpYy4NCj4gPj4+Pg0K PiA+Pj4NCj4gPj4+IE9rLCB0aGVuOg0KPiA+Pj4gQWNrZWQtYnk6IEtvbnN0YW50aW4gQW5hbnll diA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4NCj4gPj4+DQo+ID4+PiBQcm9iYWJseSB3 b3J0aCB0byBwdXQgZXh0cmEgZXhwbGFuYXRpb24gaGVyZSBvbiBpbiB0aGUgZG9jLA0KPiA+Pj4g dG8gaGVscCBwZW9wbGUgYXZvaWQgd3JvbmcgYXNzdW1wdGlvbnPwn5iJDQo+ID4+Pg0KPiA+Pg0K PiA+PiBJIGRvbid0IHNlZSB2YWx1ZSBpbiBnb2luZyBpbnRvIHN1Y2ggZGV0YWlscy4gV2hhdCB3 b3VsZCBiZSB0aGUgcG9pbnQ/DQo+ID4+IExpa2UsIHdoYXQgZGlmZmVyZW5jZSB3b3VsZCB0aGlz IGluZm9ybWF0aW9uIG1ha2UgdG8gYW55b25lPw0KPiA+DQo+ID4gSSB0aG91Z2h0IGl0IGlzIG9i dmlvdXM6IGlmIHlvdSBwdXQgZXh0cmEgZXhwbGFuYXRpb24gaW50byB0aGUgY29kZSwNCj4gPiB0 aGVuIGl0IHdvdWxkIGJlIGVhc2llciBmb3IgYW55b25lIHdobyByZWFkcyBpdCAocmV2aWV3ZXJz L21haW50YWluZXJzL3VzZXJzKQ0KPiA+IHRvIHVuZGVyc3RhbmQgd2hhdCBpdCBzdXBwb3NlZCB0 byBkby4NCj4gPg0KPiANCj4gWW91J3JlIHN1Z2dlc3RpbmcgdG8gcHV0IHRoaXMgKmluIHRoZSBk b2MqLCB3aGljaCBpbXBsaWVzIHRoYXQgKnRoZQ0KPiB1c2VyKiB3aWxsIGZpbmQgdGhpcyBpbmZv cm1hdGlvbiB1c2VmdWwuIEknbSBPSyB3aXRoIGFkZGluZyB0aGlzIGluZm8gYXMNCj4gYSBjb21t ZW50IHNvbWV3aGVyZSBwZXJoYXBzLCBidXQgd2h5IHB1dCBpdCBpbiB0aGUgZG9jPw0KDQpJIGRv bid0IHJlYWxseSBtaW5kIHdoZXJlIHlvdSdsbCBwdXQgaXQsIGVpdGhlciBleHRyYSBjb21tZW50 cyBpbiB0aGF0IGZpbGUsDQpvciBmZXcgbGluZXMgaW4gdGhlIGRvYyAtIGJvdGggYXJlIG9rIHRv IG1lLg0KDQoNCg0K