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 58689A0C4B; Fri, 19 Nov 2021 07:31:16 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DD9F340143; Fri, 19 Nov 2021 07:31:15 +0100 (CET) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id F103740140 for ; Fri, 19 Nov 2021 07:31:13 +0100 (CET) X-IronPort-AV: E=McAfee;i="6200,9189,10172"; a="234313709" X-IronPort-AV: E=Sophos;i="5.87,246,1631602800"; d="scan'208";a="234313709" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Nov 2021 22:30:32 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,246,1631602800"; d="scan'208";a="455664665" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga006.jf.intel.com with ESMTP; 18 Nov 2021 22:30:32 -0800 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) 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.2242.12; Thu, 18 Nov 2021 22:30:32 -0800 Received: from fmsmsx605.amr.corp.intel.com (10.18.126.85) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Thu, 18 Nov 2021 22:30:31 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.2242.12 via Frontend Transport; Thu, 18 Nov 2021 22:30:31 -0800 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.42) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Thu, 18 Nov 2021 22:30:31 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nbKCZDBK06wtrsPbc0zCPgcxizc/dAIwcCPwT4Izf11j1cuIBXK7DX0MwqKgLcN/shIKxweporYqf/VjhitWneRSA49y0AdbXqDFq7aAO7j5Tzq2048dUfeUrZObENHsjuBy79nzhK4LtuxvW7MLeN2LqkvTTtlOzWN/KU6h9FTuAoRrjmhva+hsZbrFf+6Ww69NPwAWaWaT9pZwI1Q4ePicW960zgkGa51a1Rz1okFDAM5SevUmqWHIaTD0O8VQRs9nWxWMa5iZ8IejwJ/J3HRQGjZiHYTFjmz0SCLY5Ax/u8ZavmmhaxVAj0CuJ6K17oH3jyP21TGDSxHDGGy14w== 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=kW6zvyDop20oNWGK2K16OHg2xKL7XjlD0zN9KkUmYAQ=; b=Xs3ByjGpbZHWjjvasHoHfwQ60hdf0CgXB4+2PJAuYLJzMxgNE3+/C9ygRo6ehFWz6gBudoJb+8eYIqnxuGkO8fs93MvivCMhx6QFOqASF66aGYlWrE1scaPXqjoZvoq7s+xCTcU44fLjzyhxXk6l9msxqEbdAh7uR8aiZKVyP6jd+oBaKaGByd8e5TXwm46SZXXLqDwIZgUWQGhXLkGBqFLVWbEIDMzJKIh7rU3HyXjtod48BBSB9JY6MLd6FBLP9a+b1UmnEIWE/EdCM/ynRf+XifW5pim+sY/4r0MNiGy2QQ8npNbvwRVGs0UErSxNepCROxQN1vJ70F5BAT5qTQ== 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=kW6zvyDop20oNWGK2K16OHg2xKL7XjlD0zN9KkUmYAQ=; b=UZFv9RKKdZeM+aM9XHWxIwWtbi1wF/qDL/3Gudw9H8BsTetQqHDYFDH+ZRkfp/tHMgWFoiaS/YsO5aX88EVKGD5QQuCuc4xFIB4ajO3+V4X94AAvjHNdbGBdPGF6yXc0o0g+dOQ+iLWhuEkWK9IBzk8kXP8hjEGqvSCpaIkFQMI= Received: from CO1PR11MB4900.namprd11.prod.outlook.com (2603:10b6:303:9e::8) by CO1PR11MB5201.namprd11.prod.outlook.com (2603:10b6:303:95::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.16; Fri, 19 Nov 2021 06:30:30 +0000 Received: from CO1PR11MB4900.namprd11.prod.outlook.com ([fe80::5c01:2d9:5955:cbd4]) by CO1PR11MB4900.namprd11.prod.outlook.com ([fe80::5c01:2d9:5955:cbd4%9]) with mapi id 15.20.4713.022; Fri, 19 Nov 2021 06:30:30 +0000 From: "Li, Miao" To: Maxime Coquelin , "dev@dpdk.org" CC: "Xia, Chenbo" Subject: RE: [PATCH v1] net/vhost: add queue status check Thread-Topic: [PATCH v1] net/vhost: add queue status check Thread-Index: AQHX2sW/EpcLxkqT30GUMEZw69TZqawF5KcAgAAAoACABHpxUA== Date: Fri, 19 Nov 2021 06:30:30 +0000 Message-ID: References: <20211116164446.149453-1-miao.li@intel.com> <3076b24c-0347-c0cf-3384-aecf4f76773b@redhat.com> <3b828df5-d2ee-44dd-0347-3ef975e2dd21@redhat.com> In-Reply-To: <3b828df5-d2ee-44dd-0347-3ef975e2dd21@redhat.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-office365-filtering-correlation-id: a93c1471-8d4c-48b3-9e45-08d9ab261596 x-ms-traffictypediagnostic: CO1PR11MB5201: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mZkMX/IKYk1PadVdaYUNt5JIXLWD4JT9EZ5McKzM+NyFMtV9XiLdVkbemE/wcjBEotD4kqufUFYBxBWoWW7RnMSmyBXO5tbYmZ2AFGBIhCAA1KDuvP6yRbpPYodXk0GzF2GxtKupMKo3wZiyeufPv9OLVHqESxKZyp/FF3bYdivPr73qciuYC+0MELRkuEwd5egA7vzL9LawKgaKhi6Vc0tVv7R0g48co3ZH3n/NRM1021eF1X3qjkuky+6PISTDNCMktPoqQhSknXKBFh9HREDAYkMtTjtdcxh1IqqYfuRqFAdDgnKOpYkNalO2oH8DNNNzPNtolah68bqQvfAn0OHfGro0TCqtNnlVinG+oc3BJ8A1MVYuZoCMak19iMj80pMT5lSCl4Cecgc4oPKRBIlU3oUWDlyU1qm3YLqCY5TJsZVWoDSFnFGgW1ByoozCTd0olY+r4X2mfzVb7ndUtMU4utXmJLo5f0dDl+wx6JYzya3cIKy3H3Nmi9C2nfXLwGz48ilda4/2J1vGYHkHFTx7dBEkBBzDHYdcOTarhk3aITYW1krNUjzoNSmtE/JzeKtnVAvCJDdIBxceMldCqFXB4vthX8i9ECTCuAfwEbFkjELVE5hdYyBIAp1HGPxlBEmDCfF6pfwOPrhsMF74DIhsmXMAeMM3Z2qq/gjJ0sIip7uirMSz4aJVPhGnJA/6gQ1Ark9bYywqSqdcCwL0TQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CO1PR11MB4900.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(86362001)(5660300002)(186003)(6506007)(26005)(53546011)(316002)(107886003)(7696005)(38070700005)(4326008)(83380400001)(110136005)(2906002)(52536014)(33656002)(8936002)(66446008)(508600001)(66946007)(9686003)(71200400001)(55016002)(8676002)(122000001)(38100700002)(66556008)(82960400001)(76116006)(66476007)(64756008); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NDdOZEVwcUxTTHRQNVYvOVphTW1hckNHekpZMWlZbmxuazJKOXVuNU1aR3hz?= =?utf-8?B?MXFhWVB2UWhoY2x2Qnk1ZjdtY2puMkJVLy9QVEpNQWs3cUJLZ2xjb084RDZY?= =?utf-8?B?ZG83di9hcDhqdEpDZVU5NjdWeVVvOVo3VFJwdkFzMGpXcHFxTlQzbEdqVFRB?= =?utf-8?B?Y0xzeHhueW9xOVFZK2grUlNWU2Z5MzY0ZFIveWlXVUppM3dJeGpvcktNeGZQ?= =?utf-8?B?MnpEbzY2ZEZzNzlYVnhiUHBKOXNUOU5UVCt6WUo5OElmZ3VreTZCVGRKMFV3?= =?utf-8?B?TnVFMGNtSXJRZFplaURzV20wUEZQSTBjKzBJQVlaeE8wSXFhRXEwd2VkNTda?= =?utf-8?B?NXR0V2t1emE3bmNTSmVXb3Bmb2xGNjhUWmNOamlIR2ZpYlhXa3c0Q1FWSTV5?= =?utf-8?B?SDZpSTVCWGZhK09oeStDY0E5MEhhWTNERTYydzhibXRaN0FnZFQ0OWZZWVAw?= =?utf-8?B?eXBRSHZJQjRYcTIwaUlVZXdYVFZzR1F1UnRhdm5YKzhjSlIrclc5T2hKdUtt?= =?utf-8?B?SkVKcHYzcWxaZU1wRWprdjdwS3JzV0JpUVNGb3ErUW11Y2NLYmJ1R2p0MEQy?= =?utf-8?B?eE9HWXRtN1BhMnZhamp0L1lHS29RbkYrWXlPZWZOZDdWKzZteVZWc053NHJs?= =?utf-8?B?QldHZkRVcWlzbjIreUh3TzlzRThhWGdvMVdqRUlsbUJqRzhPYlZsaWlqY2k5?= =?utf-8?B?ajl5Y0ZsN01sdGNLdHdiaXJVM1Y3ckpOY0VOK1RmbEFPMGFHQm9UdUtwOEFv?= =?utf-8?B?TnYxazR2UzhEeWoya0x3S05jWnk1SDdrRzZTWVlzMmFXLzFzNW9ZQTlSdzAv?= =?utf-8?B?SmhQMnRVdHlYRFVra3dVenU3bGNWSkZpcVZhUCtDWXhWMk9UUmNpNXhLU0Fw?= =?utf-8?B?VnJoVDVnSVhWRnp2aUJ3RHVBOFY0UWVDNDloVkNSVEY0aTdOaEhya2ttNlU5?= =?utf-8?B?NGpnTjdqd0FCbVdJVklPb2prbWx1UUh6TWZ2UTVUTStKTmR1OVJudzZpdnM4?= =?utf-8?B?ZUY0amFCZlNMM0VsMk5qTGxwc0s4SFludkFBbEwySUwwVzN1TWJFWHdQZlE5?= =?utf-8?B?aGFZb3lvdGk4d0k3cVdiRGZtUFZkZTNGTXJtYWxTY2lGb1ZVZnIyZjNLLzdz?= =?utf-8?B?bCtQWWZlcWlXR2Y2Szd5c1NrVVQvaksvTWJlU2paRlJhZHd5WWlacVBkU245?= =?utf-8?B?MWROOWNXVS9vREFSOGRPVTB0U2loTzROU0o0N1dEcWRqRlJ1d0tyRnZGUlVh?= =?utf-8?B?ZndaU1JzV0FzbVZmb25SMlU5OEM1em5GblpNbW1FcVlZa1hkRXdITHhjZGpY?= =?utf-8?B?Ui94enlOS0M1YzR3a0VsaU1jWlJJL3dVZ0JjSWtKODJVNi90TFZxakdxTy82?= =?utf-8?B?ZXBSVFY1U1BkTVp1U0JoUGlFcWk5UWUxRFdJK1grSzNKdVl6Q0QzWC9zMTVw?= =?utf-8?B?MTNhbGhKSWRua0Rlc3BDMURmZ01NNFBtVXRVblhSRXR1RzdCSFJ6UTYvTDBK?= =?utf-8?B?Y3dmWWVNdTc5aVViYWVFUE9CUGdadFRNcHZBL2tScVJGYUtvZXRGOXNGc2Rr?= =?utf-8?B?NThOUEdtWFVrVzN1NXZBU3Yxa0RZcm1heHNleTZGOWhsYkRZUTEwdmU3QVNK?= =?utf-8?B?SmFad1gzQm9YWHBXalEyZmZzbVg1SzlwVGRvNVc2cHFTK1c0MjVVc0VVQm5k?= =?utf-8?B?ZmlBQXE1Z2ZrcEVBYlZxY1IraXZsU2l0UGJvUC9wdXlNTjAvY2tudENpOVAy?= =?utf-8?B?M1pmTWcvUTQxamZKQ0s2RFl5ZGVYSGZPZzY4NjUyVUdzcnY5NVoyempQcXZX?= =?utf-8?B?WGFDOW5mS1U2NEJyb0d4eVVtZTRzVkxESVdDUHgzakhhQ292b1ZBc2dOb29Z?= =?utf-8?B?YUZvNHl6RXNzZDRQeFUrZ1ZlVUh6Qk5QbHBObXZ0U1F6UnQ4bXdRT2k0eWNs?= =?utf-8?B?OEd6cjRtY2RFaFR3ZTJwSUdFNG1XSm9xQlQ1eVVwMUJuQW9GL25tWG9xdEEv?= =?utf-8?B?ZWJobmtwMUkzVXRmZmpVTytCWVgyeXlYSTBaMHdOMGdWRXV5UTlaeXBMYXFC?= =?utf-8?B?SitvTkU2bW5xUUtFR1J5Q3gzanZCTGkzSHgwVlZyZVE0KzZ6a3BJUThvU01I?= =?utf-8?B?NVcwRVpPaUZZbjhkNnZmK21SeDNOeU5qYm9uUk1NbzlQNGdBV2lacExLbzBl?= =?utf-8?B?SHc9PQ==?= 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: CO1PR11MB4900.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a93c1471-8d4c-48b3-9e45-08d9ab261596 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Nov 2021 06:30:30.8188 (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: lGudAJjagUnFFSB1FKHYHVP5F/dtGnsjCWArfzTlPLS/59riC56ePEdsu5lvqdhyCbnXlhAIUm4H4pTurJ54vw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5201 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 SGkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBNYXhpbWUgQ29xdWVs aW4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTZW50OiBUdWVzZGF5LCBOb3ZlbWJl ciAxNiwgMjAyMSA1OjM2IFBNDQo+IFRvOiBMaSwgTWlhbyA8bWlhby5saUBpbnRlbC5jb20+OyBk ZXZAZHBkay5vcmcNCj4gQ2M6IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4NCj4g U3ViamVjdDogUmU6IFtQQVRDSCB2MV0gbmV0L3Zob3N0OiBhZGQgcXVldWUgc3RhdHVzIGNoZWNr DQo+IA0KPiANCj4gDQo+IE9uIDExLzE2LzIxIDEwOjM0LCBNYXhpbWUgQ29xdWVsaW4gd3JvdGU6 DQo+ID4NCj4gPg0KPiA+IE9uIDExLzE2LzIxIDE3OjQ0LCBNaWFvIExpIHdyb3RlOg0KPiA+PiBU aGlzIHBhdGNoIGFkZHMgcXVldWUgc3RhdHVzIGNoZWNrIHRvIG1ha2Ugc3VyZSB0aGF0IHZob3N0 IG1vbml0b3INCj4gPj4gYWRkcmVzcyB3aWxsIG5vdCBiZSBnb3QgdW50aWwgdGhlIGxpbmsgYmV0 d2VlbiBiYWNrZW5kIGFuZCBmcm9udGVuZA0KPiA+IHMvZ290L2dvbmUvPw0KPiA+PiB1cCBhbmQg dGhlIHBhY2tldHMgYXJlIGFsbG93ZWQgdG8gYmUgcXVldWVkLg0KPiA+DQo+ID4gSXQgbmVlZHMg YSBmaXhlcyB0YWcuDQoNCklmIHdlIGRvbid0IGFkZCB0aGlzIGNoZWNrLCBydGVfdmhvc3RfZ2V0 X21vbml0b3JfYWRkciB3aWxsIHJldHVybiAtRUlOVkFMIHdoZW4gY2hlY2sgaWYgZGV2IGlzIG51 bGwuIEJ1dCBiZWZvcmUgcmV0dXJuLCBnZXRfZGV2aWNlKCkgd2lsbCBiZSBjYWxsZWQgYW5kIHBy aW50IGVycm9yIGxvZyAiZGV2aWNlIG5vdCBmb3VuZCIuIFNvIHdlIHdhbnQgdG8gYWRkIHRoaXMg Y2hlY2sgYW5kIHJldHVybiAtRUlOVkFMIGJlZm9yZSBjYWxsIHJ0ZV92aG9zdF9nZXRfbW9uaXRv cl9hZGRyLiBJZiB3ZSBkb24ndCBhZGQgdGhpcyBjaGVjaywgdGhlIHZob3N0IG1vbml0b3IgYWRk cmVzcyB3aWxsIGFsc28gbm90IGJlIGdvdCBidXQgdmhvc3Qgd2lsbCBwcmludCBlcnJvciBsb2cg Y29udGludW91c2x5LiBJdCBoYXZlIG5vIGZ1bmN0aW9uIGltcGFjdCwgc28gSSB0aGluayBpdCBp cyBub3QgYSBmaXguIA0KDQo+ID4NCj4gPj4gU2lnbmVkLW9mZi1ieTogTWlhbyBMaSA8bWlhby5s aUBpbnRlbC5jb20+DQo+ID4+IC0tLQ0KPiA+PiDCoCBkcml2ZXJzL25ldC92aG9zdC9ydGVfZXRo X3Zob3N0LmMgfCAyICsrDQo+ID4+IMKgIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKykN Cj4gPj4NCj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3Qu Yw0KPiA+PiBiL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYw0KPiA+PiBpbmRleCAw NzBmMGU2ZGZkLi45ZDYwMDA1NGQ4IDEwMDY0NA0KPiA+PiAtLS0gYS9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmMNCj4gPj4gKysrIGIvZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92 aG9zdC5jDQo+ID4+IEBAIC0xNDE1LDYgKzE0MTUsOCBAQCB2aG9zdF9nZXRfbW9uaXRvcl9hZGRy KHZvaWQgKnJ4X3F1ZXVlLCBzdHJ1Y3QNCj4gPj4gcnRlX3Bvd2VyX21vbml0b3JfY29uZCAqcG1j KQ0KPiA+PiDCoMKgwqDCoMKgIGludCByZXQ7DQo+ID4+IMKgwqDCoMKgwqAgaWYgKHZxID09IE5V TEwpDQo+ID4+IMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gLUVJTlZBTDsNCj4gPj4gK8KgwqDC oCBpZiAodW5saWtlbHkocnRlX2F0b21pYzMyX3JlYWQoJnZxLT5hbGxvd19xdWV1aW5nKSA9PSAw KSkNCj4gPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiAtRUlOVkFMOw0KPiANCj4gQWxzbywgRUlO VkFMIG1pZ2h0IG5vdCBiZSB0aGUgcmlnaHQgcmV0dXJuIHZhbHVlIGhlcmUuDQoNCkkgZG9uJ3Qg a25vdyB3aGljaCByZXR1cm4gdmFsdWUgd2lsbCBiZSBiZXR0ZXIuIERvIHlvdSBoYXZlIGFueSBz dWdnZXN0aW9ucz8gVGhhbmtzIQ0KDQo+IA0KPiA+IEhvdyBkb2VzIGl0IGhlbHA/DQo+ID4gV2hh dCBkb2VzIHByZXZlbnQgYWxsb3dfcXVldWluZyB0byBiZWNvbWUgemVybyBiZXR3ZWVuIHRoZSBj aGVjayBhbmQgdGhlDQo+ID4gY2FsbCB0byBydGVfdmhvc3RfZ2V0X21vbml0b3JfYWRkcj8NCg0K VGhpcyBjaGVjayB3aWxsIHByZXZlbnQgdmhvc3QgdG8gcHJpbnQgZXJyb3IgbG9nIGNvbnRpbnVv dXNseS4NCg0KPiA+DQo+ID4gSSB0aGluayB5b3UgbmVlZCB0byBpbXBsZW1lbnQgdGhlIHNhbWUg bG9naWMgYXMgaW4gZXRoX3Zob3N0X3J4KCksIGkuZS4NCj4gPiBjaGVjayBhbGxvd19xdWV1ZWlu Zywgc2V0IHdoaWxlX3F1ZXVlaW5nLCBjaGVjayBhbGxvd19xdWV1ZWluZywgZG8geW91cg0KPiA+ IHN0dWZmIGFuZCBjbGVhciB3aGlsZV9xdWV1aW5nLg0KDQpJIHRoaW5rIHRoZSB3aGlsZV9xdWV1 aW5nIGlzIHVubmVjZXNzYXJ5IGJlY2F1c2Ugd2Ugb25seSByZWFkIHRoZSB2YWx1ZSBpbiB2cSBh bmQgdGhpcyBBUEkgd2lsbCBvbmx5IGJlIGNhbGxlZCBhcyBhIGNhbGxiYWNrIG9mIFJYLg0KDQpU aGFua3MsDQpNaWFvDQoNCj4gPg0KPiA+PiDCoMKgwqDCoMKgIHJldCA9IHJ0ZV92aG9zdF9nZXRf bW9uaXRvcl9hZGRyKHZxLT52aWQsIHZxLT52aXJ0cXVldWVfaWQsDQo+ID4+IMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICZ2aG9zdF9wbWMpOw0KPiA+PiDCoMKgwqDCoMKgIGlmIChyZXQgPCAw KQ0KPiA+Pg0KPiA+DQo+ID4gTWF4aW1lDQoNCg==