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 B8603A054F; Tue, 16 Mar 2021 10:13:32 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 380262428A0; Tue, 16 Mar 2021 10:13:32 +0100 (CET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mails.dpdk.org (Postfix) with ESMTP id B183240F35; Tue, 16 Mar 2021 10:13:30 +0100 (CET) IronPort-SDR: /2jue86P0oN3m8nAaLEvUOFIjRXYMlvT5sJUk6vEkMWUXKkLyTcJRWMpHJDERTptexPbNB5rdH 8OBwSiRrmgkg== X-IronPort-AV: E=McAfee;i="6000,8403,9924"; a="188586861" X-IronPort-AV: E=Sophos;i="5.81,251,1610438400"; d="scan'208";a="188586861" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Mar 2021 02:13:29 -0700 IronPort-SDR: h66zi92gAHYmrt9YEa6CFAZLFWfdefpAVnOLPQLR96j5OB4wcns49TIFZa5HZGAWCbVBY4KHcY wzald7uxG0bQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,251,1610438400"; d="scan'208";a="440030811" Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85]) by FMSMGA003.fm.intel.com with ESMTP; 16 Mar 2021 02:13:29 -0700 Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) 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.2106.2; Tue, 16 Mar 2021 02:13:28 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Tue, 16 Mar 2021 02:13:28 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.172) 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.2106.2; Tue, 16 Mar 2021 02:13:28 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Vj/6AV4LQWnd6VuTpRvq+nI3OVTgCUER9YC3EV66HKxwsZMyZv8PlA/RDpGBawFK4B4zShxhDlnzlddnkTuUaR1Hgv9zGNab7/P3yH8OwwTqXHi4IGcrr4ZBigOyYq3nvWc4G6r5+PKuVo+XGs/jdpCCbWH/r6YStKkqvfP6zlYj5FxTBYzGIVU1ie3Oboui6ArR3MW0AOTL4o9e66iI95CrZ14IdiFbeq88U68PknOamL/Unk1vB41UjkzgRBpq5NF7faiXZCBJoaBoZQ9qMax22jdyFLAIsczJwg63c0jmhCtvOz2Sd3R/dHXLrL53fCBZRR/9Nnql/XVrWsG70A== 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=vIe5JbzVFRHKkX36YFahS37uw4PP6kzOj34RwzmbecU=; b=FpmDoAhZ/NenicfPh9FwIA0mI+Jt5aio6YR35j5ZN8cZg8ljOz1QBEpvMda1zeX+nPYHmZGzEBpsYoFlkJFIfElkLRJXe27PH5BID1bYNYnCHsInGFp+0IbqhhoyYLaDpNhslfO4eTBUzBuTzzfngNhsVLTAB1gL0ibudnyPi/bQ9/AdT9XLPIHAcKZtClqOquhWzSp85pRH2uvZJoDGY8jnXv9oYr0jcIX4vdn92ZlCt/94+yah/bNAIxT64AZ9nzaKSkpeqJMFzAVcFzdV0ZaIgGJmfI267g4p3NuTfwZdzqeB1G5HnKmyKUjuv/h+QrbR/OfdOT3/vGsq+9Xq5A== 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=vIe5JbzVFRHKkX36YFahS37uw4PP6kzOj34RwzmbecU=; b=AniSuSPBXPGKfbcE6nveZtus/HyxhZh2VUKuN+r5zmnH/3798ZKx3PXr+188LuFhQIw8nCO1Alot+P0cNTb14JxYJtTCv9AKc8/Z2GIPWOZaVz3PGLEGgVE4U+p4ivxd7KQo2/ibLQDoeZs99FAy3c7obOLMO23JuiWk3ApCklQ= Received: from BN8PR11MB3795.namprd11.prod.outlook.com (2603:10b6:408:82::31) by BN6PR11MB1715.namprd11.prod.outlook.com (2603:10b6:404:49::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3933.32; Tue, 16 Mar 2021 09:13:26 +0000 Received: from BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::ec6a:25a8:8c59:89e]) by BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::ec6a:25a8:8c59:89e%2]) with mapi id 15.20.3933.032; Tue, 16 Mar 2021 09:13:26 +0000 From: "Wang, Xiao W" To: "Ananyev, Konstantin" , David Marchand CC: "Xia, Chenbo" , Maxime Coquelin , "Liu, Yong" , dev , dpdk stable Thread-Topic: [dpdk-stable] [PATCH v2] vhost: add header check in dequeue offload Thread-Index: AQHXGbM47D77WEf5QkWyjpznCcAaT6qFOeQAgAArogCAAOnZcA== Date: Tue, 16 Mar 2021 09:13:25 +0000 Message-ID: References: <20210311063827.55394-1-xiao.w.wang@intel.com> <20210315153255.113442-1-xiao.w.wang@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.5.1.3 dlp-product: dlpe-windows authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.51] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3ca9b249-9a36-4ebe-4f61-08d8e85bc194 x-ms-traffictypediagnostic: BN6PR11MB1715: 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:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xanhtNOW5TdQe/NpxZzID5JIKkGUtENuImSTMf65RljpU0xQ8n0xFKyjULKFuJPxK3BlRuNWOnD2SnjGDFAXybiE+bkhimWRkxlmAX2QGlah95N23R0dzlIP1bp+GEcjR7RLds1/uwiQkEwRnLNm9S2rRtcIKtRQgfm/Y9DQGpFo8u08blG9CPzPYniyIw4y0yMGzlpIO361OSBrWcDcaj2BZF5hieqvwS7ryjBn6vfoBagvJU0j7rYwHxQuP2WtlPE68cerbmAtsaDugdj/ys458+HEAFo8Ztu5uiAddS0vsj1hSuCsA7EVBd4YS5z3kxWT+5maMDi9a3n34/NKjo3hbEeU1H+mjMI2v43p014oRKU/xDzTXceNSTlBp+09V32gVKFu45TUZdQ5pbzN6WljtXn6LyQ6qfsThnyI8RVndUyUG8XPzg1+lI0byyo4d0vsC/u6z6ol9k7kcy6u0HAqoUQODeHGxwYkTCi8a5xLZPxF0vDW86cMBkQEJvZES4MuknBrKMJu067F5D+xXZW461gi1t5SeyzFzRbOih0wBiT4uMBNm8bhVufFxJUb x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN8PR11MB3795.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(136003)(376002)(396003)(366004)(39860400002)(346002)(66946007)(316002)(478600001)(64756008)(66446008)(4326008)(5660300002)(7696005)(26005)(71200400001)(66476007)(66556008)(76116006)(53546011)(2906002)(33656002)(6506007)(86362001)(55016002)(110136005)(9686003)(186003)(54906003)(8676002)(83380400001)(52536014)(8936002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?YXhtOXhPSVc0RzN5OGw5a0VBSDJJWG9Ec1VCbGxkL0RRaktaZ2VlUER4eGxh?= =?utf-8?B?S3lyQ2dpN2docnhYdUViTytYdUxlRUdaMGtTTkpvTHFNQ1d0bUl1dlQ0M3Y4?= =?utf-8?B?T1B5V25BNmJGR1hjakNaNGpkanF4aTYzbEVsZjcyNUYzS0Q0WDNGM2hvVVBp?= =?utf-8?B?Y3VYYUJkNHhEQnd2d2xtNVJkK1VCOWkrOUIySTRuYVhHc3gvdHdodHFPeHNP?= =?utf-8?B?bnJKNmljMmdRTzZJaW1PRFc4Y1VZTUtCL2podE0yckpYRndFek1jR0JKSWs1?= =?utf-8?B?LzIxYXRtR0xjcE45YU5tZHVvdU55NFNUbnBYQlBEdzM5Sks0dlJZUjJDb1ZE?= =?utf-8?B?Y29mUExCeHN3RjV2bzd3WjdPZVF3SmlWZzlSM3dpTS8xMTBxRjVBNWljR0xv?= =?utf-8?B?dFUydjc0eHdMOEY5dkttbWJHRTRLZXJWclBJSkVWbG8xU3VGVGd6a0kzSHJn?= =?utf-8?B?K0NnRFBSMWpObGtRcm40bW56c2FveE5qdEpzckdrRTFNanhqZjhJNTRJNlRY?= =?utf-8?B?dGJiMkdyd2Q0QlJ2dUN1TGVUaEZqNlBlWWQvYXJjTC83cjl0VFZtbzJDcnUz?= =?utf-8?B?MmM3WXNaa2k5S3N3RDRMUUF5WlZ5dzlpa1VOUERvV0loZlhUcDVDd3BaakZ0?= =?utf-8?B?czEveHgvU0pnamZvS3RBTkNYeVRXNXcvdDZnOW5ZRzhHMExpS2wzUEF1alZC?= =?utf-8?B?eVlCd2xTQzdCOWgwcFhBaUd1NzhGaFRKMGFZNEpSdTR5QkFEQ1UvaTFKSGZj?= =?utf-8?B?ekpaRExkL2lOQytOMUpYemZzWDJJQ2ZWRXlNak1iNU5FSHdlTmJZZERhdUVY?= =?utf-8?B?ZGU5c0Z1d2JkYUMzTko5Tmx5UDVkS3RpV0RuMm9IZHFwblYydnZTRDYwUmp5?= =?utf-8?B?aWVhYzVudUFFRjNCUTV4TEU5djM4RXBYbkZYM2krZmdQSGZYWTBOS01NNXVy?= =?utf-8?B?cElHM1RtOU1udFBsaEZuVTFPTVkyWmtxVkV6SHc2Rk9JWFFSS2F3ejlLNFVM?= =?utf-8?B?bWt0dDFQK1NyR3Q1Wk9uQ2ZSUjRldXpMR1ZRWjhNK3VjQlVQRU5Wck5qcVRM?= =?utf-8?B?U0l5OHUzVWZFb0kydVNpTDBQekp4MFArRXNvU0tWakQ2YTFtSm5xUXIwOU5C?= =?utf-8?B?ZExjNDNFOHZYK1o4bFROTXFGeGFreTFvRVdZU3lPaEpnYUVqVmJMNndsVDJs?= =?utf-8?B?ZVE2cnNjck9ST1lYZ2NZd2pxdzgwNVRGZUwrVVV4ZTBHL0oya2pFcG1vdVZx?= =?utf-8?B?dDFOOVd1Q2dMczAwL3pQZXNJTzlpZlZGZyttRWNxTTNCWnJuVllPcmd5U3NT?= =?utf-8?B?M3hHS1NoeC9KUmltTU8rdW5yb1RnMzRtZzhwYzF0YStoWmF5cHh3alRJR00v?= =?utf-8?B?N1ptL0EvZVk2Ukk5a1VMRWxkZ0RXWTMxdy9tbjMrNEh4eVZWWGdOQ0RjYkg3?= =?utf-8?B?cWUyanhORUkrQXlVdnlHaUw2eVhuZVlObjh0ZTkyT2V3RGg4UmJJOTEvRFU4?= =?utf-8?B?b0ZvLzJlVjN1cjNJdzN2M1NFTk8wMXllcnBOUjBHek16bzFiUHYyajl0di9n?= =?utf-8?B?R24zMi91aE1HS1NIT05iZFBmakhndm5pZVloRXNma1lIeEgvc0ZSQ0tTRERH?= =?utf-8?B?Q21RSG41R0RFLzFEVXc5bVpwRmRJUWdsU1JReGRhcHBLNnkrUW9KS0c2OXU3?= =?utf-8?B?c2YyUUJWVjQybXdUbS9va1I1VXV1RXAzNlRLU0drZFlweXl6c1BzdFoyWTF0?= =?utf-8?Q?IR1KQ07ZB27QbXT/aRo0jWGeGdBG8OJykh1uBBV?= 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: BN8PR11MB3795.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3ca9b249-9a36-4ebe-4f61-08d8e85bc194 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Mar 2021 09:13:25.8626 (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: TLZ7q2b2o4y4AvNodw5+VO7i0HaGxGB21mjCPd0dTlovUD99JWpjbpFI5VXKbQOO4xmqVIu+smFE7rZLv9i0tA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR11MB1715 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH v2] vhost: add header check in dequeue offload 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" SGksDQoNCkNvbW1lbnRzIGlubGluZS4NCg0KQlJzLA0KWGlhbw0KDQo+IC0tLS0tT3JpZ2luYWwg TWVzc2FnZS0tLS0tDQo+IEZyb206IEFuYW55ZXYsIEtvbnN0YW50aW4gPGtvbnN0YW50aW4uYW5h bnlldkBpbnRlbC5jb20+DQo+IFNlbnQ6IFR1ZXNkYXksIE1hcmNoIDE2LCAyMDIxIDI6NTMgQU0N Cj4gVG86IERhdmlkIE1hcmNoYW5kIDxkYXZpZC5tYXJjaGFuZEByZWRoYXQuY29tPjsgV2FuZywg WGlhbyBXDQo+IDx4aWFvLncud2FuZ0BpbnRlbC5jb20+DQo+IENjOiBYaWEsIENoZW5ibyA8Y2hl bmJvLnhpYUBpbnRlbC5jb20+OyBNYXhpbWUgQ29xdWVsaW4NCj4gPG1heGltZS5jb3F1ZWxpbkBy ZWRoYXQuY29tPjsgTGl1LCBZb25nIDx5b25nLmxpdUBpbnRlbC5jb20+OyBkZXYNCj4gPGRldkBk cGRrLm9yZz47IGRwZGsgc3RhYmxlIDxzdGFibGVAZHBkay5vcmc+DQo+IFN1YmplY3Q6IFJFOiBb ZHBkay1zdGFibGVdIFtQQVRDSCB2Ml0gdmhvc3Q6IGFkZCBoZWFkZXIgY2hlY2sgaW4gZGVxdWV1 ZQ0KPiBvZmZsb2FkDQo+IA0KPiANCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPiBGcm9tOiBEYXZpZCBNYXJjaGFuZCA8ZGF2aWQubWFyY2hhbmRAcmVkaGF0LmNvbT4NCj4g PiBTZW50OiBNb25kYXksIE1hcmNoIDE1LCAyMDIxIDQ6MTcgUE0NCj4gPiBUbzogV2FuZywgWGlh byBXIDx4aWFvLncud2FuZ0BpbnRlbC5jb20+DQo+ID4gQ2M6IFhpYSwgQ2hlbmJvIDxjaGVuYm8u eGlhQGludGVsLmNvbT47IE1heGltZSBDb3F1ZWxpbg0KPiA8bWF4aW1lLmNvcXVlbGluQHJlZGhh dC5jb20+OyBMaXUsIFlvbmcgPHlvbmcubGl1QGludGVsLmNvbT47IGRldg0KPiA+IDxkZXZAZHBk ay5vcmc+OyBBbmFueWV2LCBLb25zdGFudGluIDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29t PjsNCj4gZHBkayBzdGFibGUgPHN0YWJsZUBkcGRrLm9yZz4NCj4gPiBTdWJqZWN0OiBSZTogW2Rw ZGstc3RhYmxlXSBbUEFUQ0ggdjJdIHZob3N0OiBhZGQgaGVhZGVyIGNoZWNrIGluIGRlcXVldWUN Cj4gb2ZmbG9hZA0KPiA+DQo+ID4gT24gTW9uLCBNYXIgMTUsIDIwMjEgYXQgNDo1MiBQTSBYaWFv IFdhbmcgPHhpYW8udy53YW5nQGludGVsLmNvbT4NCj4gd3JvdGU6DQo+ID4gPg0KPiA+ID4gV2hl biBwYXJzaW5nIHRoZSB2aXJ0aW8gbmV0IGhlYWRlciBhbmQgcGFja2V0IGhlYWRlciBmb3IgZGVx dWV1ZQ0KPiBvZmZsb2FkLA0KPiA+ID4gd2UgbmVlZCB0byBwZXJmb3JtIHNhbml0eSBjaGVjayBv biB0aGUgcGFja2V0IGhlYWRlciB0byBlbnN1cmU6DQo+ID4gPiAgIC0gTm8gb3V0LW9mLWJvdW5k YXJ5IG1lbW9yeSBhY2Nlc3MuDQo+ID4gPiAgIC0gVGhlIHBhY2tldCBoZWFkZXIgYW5kIHZpcnRp b19uZXQgaGVhZGVyIGFyZSB2YWxpZCBhbmQgYWxpZ25lZC4NCj4gPiA+DQo+ID4gPiBGaXhlczog ZDBjZjkxMzAzZDczICgidmhvc3Q6IGFkZCBUeCBvZmZsb2FkIGNhcGFiaWxpdGllcyIpDQo+ID4g PiBDYzogc3RhYmxlQGRwZGsub3JnDQo+ID4gPg0KPiA+ID4gU2lnbmVkLW9mZi1ieTogWGlhbyBX YW5nIDx4aWFvLncud2FuZ0BpbnRlbC5jb20+DQo+ID4gPiAtLS0NCj4gPiA+IHYyOg0KPiA+ID4g QWxsb3cgZW1wdHkgTDQgcGF5bG9hZCBmb3IgY2tzdW0gb2ZmbG9hZC4NCj4gPiA+IC0tLQ0KPiA+ ID4gIGxpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jIHwgNDkNCj4gKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQ0KPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCA0MyBp bnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9s aWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYyBiL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jDQo+ID4gPiBpbmRleCA1ODNiZjM3OWM2Li41M2E4ZmYyODk4IDEwMDY0NA0KPiA+ID4gLS0t IGEvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmMNCj4gPiA+ICsrKyBiL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jDQo+ID4gPiBAQCAtMTgyMSw0NCArMTgyMSw2NCBAQCB2aXJ0aW9f bmV0X3dpdGhfaG9zdF9vZmZsb2FkKHN0cnVjdA0KPiB2aXJ0aW9fbmV0ICpkZXYpDQo+ID4gPiAg ICAgICAgIHJldHVybiBmYWxzZTsNCj4gPiA+ICB9DQo+ID4gPg0KPiA+ID4gLXN0YXRpYyB2b2lk DQo+ID4gPiAtcGFyc2VfZXRoZXJuZXQoc3RydWN0IHJ0ZV9tYnVmICptLCB1aW50MTZfdCAqbDRf cHJvdG8sIHZvaWQNCj4gKipsNF9oZHIpDQo+ID4gPiArc3RhdGljIGludA0KPiA+ID4gK3BhcnNl X2V0aGVybmV0KHN0cnVjdCBydGVfbWJ1ZiAqbSwgdWludDE2X3QgKmw0X3Byb3RvLCB2b2lkDQo+ ICoqbDRfaGRyLA0KPiA+ID4gKyAgICAgICAgICAgICAgIHVpbnQxNl90ICpsZW4pDQo+ID4gPiAg ew0KPiA+ID4gICAgICAgICBzdHJ1Y3QgcnRlX2lwdjRfaGRyICppcHY0X2hkcjsNCj4gPiA+ICAg ICAgICAgc3RydWN0IHJ0ZV9pcHY2X2hkciAqaXB2Nl9oZHI7DQo+ID4gPiAgICAgICAgIHZvaWQg KmwzX2hkciA9IE5VTEw7DQo+ID4gPiAgICAgICAgIHN0cnVjdCBydGVfZXRoZXJfaGRyICpldGhf aGRyOw0KPiA+ID4gICAgICAgICB1aW50MTZfdCBldGhlcnR5cGU7DQo+ID4gPiArICAgICAgIHVp bnQxNl90IGRhdGFfbGVuID0gbS0+ZGF0YV9sZW47DQo+ID4NCj4gPiA+DQo+ID4gPiAgICAgICAg IGV0aF9oZHIgPSBydGVfcGt0bWJ1Zl9tdG9kKG0sIHN0cnVjdCBydGVfZXRoZXJfaGRyICopOw0K PiA+ID4NCj4gPiA+ICsgICAgICAgaWYgKGRhdGFfbGVuIDw9IHNpemVvZihzdHJ1Y3QgcnRlX2V0 aGVyX2hkcikpDQo+ID4gPiArICAgICAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7DQo+ID4NCj4g PiBPbiBwcmluY2lwbGUsIHRoZSBjaGVjayBzaG91bGQgaGFwcGVuIGJlZm9yZSBjYWxsaW5nIHJ0 ZV9wa3RtYnVmX210b2QsDQo+ID4gbGlrZSB3aGF0IHJ0ZV9wa3RtYnVmX3JlYWQgZG9lcy4NCg0K WWVzLCBJIGFncmVlLiBXaWxsIGZpeCBpdCBpbiB2My4NCg0KPiA+DQo+ID4gTG9va2luZyBhdCB0 aGUgcmVzdCBvZiB0aGUgcGF0Y2gsIGRvZXMgdGhpcyBoZWxwZXIgZnVuY3Rpb24gb25seQ0KPiA+ IGhhbmRsZSBtb25vIHNlZ21lbnQgbWJ1ZnM/DQo+ID4gTXkgcmVhZGluZyBvZiBjb3B5X2Rlc2Nf dG9fbWJ1ZigpIHdhcyB0aGF0IGl0IGNvdWxkIGdlbmVyYXRlIG11bHRpDQo+ID4gc2VnbWVudHMg bWJ1ZnMuLi4NCg0KY29weV9kZXNjX3RvX21idWYoKSBjb3VsZCBnZW5lcmF0ZSBtdWx0aSBzZWcg bWJ1ZnMsIGFuZCB0aGUgd2hvbGUgcGFja2V0IHdvdWxkIGJlIGNvcGllZCBpbnRvIHRoZXNlIG11 bHRpLW1idWZzIHdoZW4gcGFja2V0IHNpemUgaXMgbGFyZ2VyIHRoYW4gbWJ1ZidzIGNhcGFjaXR5 Lg0KQW55d2F5LCBvbmUgbWJ1ZidzIGNhcGFjaXR5IGlzIGJpZyBlbm91Z2ggZm9yIGhvbGRpbmcg dGhlIEwyL0wzL0w0IGhlYWRlci4NCg0KPiA+DQo+ID4NCj4gPiBbc25pcF0NCj4gPg0KPiA+ID4g ICAgICAgICBjYXNlIFJURV9FVEhFUl9UWVBFX0lQVjQ6DQo+ID4gPiArICAgICAgICAgICAgICAg aWYgKGRhdGFfbGVuIDw9IHNpemVvZihzdHJ1Y3QgcnRlX2lwdjRfaGRyKSkNCj4gPiA+ICsgICAg ICAgICAgICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOw0KPiA+ID4gICAgICAgICAgICAgICAg IGlwdjRfaGRyID0gbDNfaGRyOw0KPiA+ID4gICAgICAgICAgICAgICAgICpsNF9wcm90byA9IGlw djRfaGRyLT5uZXh0X3Byb3RvX2lkOw0KPiA+ID4gICAgICAgICAgICAgICAgIG0tPmwzX2xlbiA9 IHJ0ZV9pcHY0X2hkcl9sZW4oaXB2NF9oZHIpOw0KPiA+ID4gKyAgICAgICAgICAgICAgIGlmIChk YXRhX2xlbiA8PSBtLT5sM19sZW4pIHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIG0t PmwzX2xlbiA9IDA7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVJTlZB TDsNCj4gPiA+ICsgICAgICAgICAgICAgICB9DQo+ID4NCj4gPiAuLi4gc28gaGVyZSwgY29tcGFy aW5nIGwzIGxlbmd0aCB0byBvbmx5IHRoZSBmaXJzdCBzZWdtZW50IGxlbmd0aA0KPiA+IChkYXRh X2xlbikgd291bGQgYmUgaW52YWxpZC4NCj4gPg0KPiA+IElmIHRoaXMgaGVscGVyIG11c3QgZGVh bCB3aXRoIG11bHRpIHNlZ21lbnRzLCB3aHkgbm90IHVzZQ0KPiBydGVfcGt0bWJ1Zl9yZWFkPw0K PiA+IFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhY2Nlc3MgdG8gbWJ1ZiBkYXRhIGFmdGVyIGNoZWNr aW5nIG9mZnNldCBhbmQNCj4gPiBsZW5ndGggYXJlIGNvbnRpZ3VvdXMsIGVsc2UgY29weSB0aGUg bmVlZGVkIGRhdGEgaW4gYSBwYXNzZWQgYnVmZmVyLg0KPiANCj4gRnJvbSBteSB1bmRlcnN0YW5k aW5nLCB5ZXMgbXVsdGktc2VnIGlzIGFsbG93ZWQsIGJ1dCBhbiBleHBlY3RhdGlvbg0KPiBJcyB0 aGF0IGF0IGxlYXN0IHBhY2tldCBoZWFkZXIgKGwyL2wzL2w0Pykgd2lsbCBhbHdheXMgcmVzaWRl IGluIGZpcnN0IHNlZ21lbnQuDQoNClllYWgsIEkgdGhpbmsgc28uDQoNClRoYW5rcyBmb3IgYWxs IHRoZSBjb21tZW50cywNCi1YaWFvDQoNCj4gDQo+ID4NCj4gPg0KPiA+ID4gICAgICAgICAgICAg ICAgICpsNF9oZHIgPSAoY2hhciAqKWwzX2hkciArIG0tPmwzX2xlbjsNCj4gPiA+ICAgICAgICAg ICAgICAgICBtLT5vbF9mbGFncyB8PSBQS1RfVFhfSVBWNDsNCj4gPiA+ICsgICAgICAgICAgICAg ICBkYXRhX2xlbiAtPSBtLT5sM19sZW47DQo+ID4gPiAgICAgICAgICAgICAgICAgYnJlYWs7DQo+ ID4NCj4gPg0KPiA+IC0tDQo+ID4gRGF2aWQgTWFyY2hhbmQNCg0K