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 3C8B5A0547; Tue, 26 Oct 2021 14:56:54 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0124040E0F; Tue, 26 Oct 2021 14:56:54 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 995C6407FF for ; Tue, 26 Oct 2021 14:56:52 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10148"; a="293356177" X-IronPort-AV: E=Sophos;i="5.87,184,1631602800"; d="scan'208";a="293356177" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Oct 2021 05:56:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,184,1631602800"; d="scan'208";a="494195226" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga007.fm.intel.com with ESMTP; 26 Oct 2021 05:56:51 -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.2242.12; Tue, 26 Oct 2021 05:56:50 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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.2242.12 via Frontend Transport; Tue, 26 Oct 2021 05:56:50 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.170) 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.2242.12; Tue, 26 Oct 2021 05:56:47 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ldSA+Dd36yxnEM4htQO+Jd5H01Qve+yKBriMGt0fDuiwPrBZvoE2/3mCYVCY74jOWZYJtQXYMdUCm2r5tGGli4ZrYtoZ9eo1Wk3T7B8M2nBLF+Fp0Cb8od0g80wO8lLfqE2/dUfTI6dkNC2ggRFDJpOOGJVL+OLgeVBUAo2meZWq33jtD8rWajGKdaf0XXOI+Ot1Mf0Jg6+oUSUMHlti4CvjWUTzIgar6PVk0DCD61UJpQKPSM++4L8MzotdNbu9rPAOwFXukbNKXz5riDqHXKTlYTDHcwjWZazmSr5ZGBYo4lTrHCLCC3pLifym8FHZSP7CiAtPsd3JivQaS1XuCA== 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=JS79vaT49IYgsRuGzu1htA+p8NDUWwLM922iycWffqE=; b=Zi89Q1MElEgHjPMnTKVhrDUTLNugQdbG/3s9A+1NNzZ8V46tUSP0wHEybKtYI4/TT1D0m7WydtjhffTCcu1IsPKsO0WUbPx1OIMtGRzO/40cHWX8G3bnMLOfU9H4uNbSTqa27fGi3c4H1smZBWOzaOPZh6R2p3xVB+K/niY/iRms69vahKJzc8209AAvqdYUD4/emTe0lU+pQNdEOAYqDORxtkxNHNq4jVfLkMAQ3FT4HUzNLf2u9bH2yIKFjhL6BmdwZYsj4OpVZiPNOotEspkXwW2R4eYVmZbRSJ92SI3qzQIvv9D+7Lv16tQAXkVQoYsDrfdrUg1+TIiJJPlfUw== 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=JS79vaT49IYgsRuGzu1htA+p8NDUWwLM922iycWffqE=; b=H9ihMlIuyfI7cYzXYVgCS22zjyaWi0obOCyfwPyg62lO3aHLzJf/AERcxX5KwzrgVI4quiklTu8LX7Hjafpf2us4ToE9/3/N+jbiuVr56QQ0iZ88h0PAdl/V62t+r4y279UtaG/MIvwow85p14Xd68472vVxEDJ525F5LwEhsPI= Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by DM5PR11MB2041.namprd11.prod.outlook.com (2603:10b6:3:d::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.18; Tue, 26 Oct 2021 12:56:45 +0000 Received: from DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::2c0c:5383:f814:3b4e]) by DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::2c0c:5383:f814:3b4e%6]) with mapi id 15.20.4628.023; Tue, 26 Oct 2021 12:56:45 +0000 From: "Ananyev, Konstantin" To: Feifei Wang CC: "dev@dpdk.org" , nd , Ruifeng Wang , nd Thread-Topic: [PATCH v5 4/5] lib/bpf: use wait event scheme for Rx/Tx iteration Thread-Index: AQHXyj/VN/8vpernFEGzkIEfI8XxMqvk736AgAAWjXCAADY0wA== Date: Tue, 26 Oct 2021 12:56:45 +0000 Message-ID: References: <20210902053253.3017858-1-feifei.wang2@arm.com> <20211026080204.149550-1-feifei.wang2@arm.com> <20211026080204.149550-5-feifei.wang2@arm.com> In-Reply-To: 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.6.200.16 authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 07ebaa81-0cb6-4c9b-42a0-08d998801103 x-ms-traffictypediagnostic: DM5PR11MB2041: 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: ZYuoemTIRGQAwGzJZbFxFuimonTAoHh2ZSx7ihElJ+CNQJtW6ImCaMRMq606D5W7vaqEZUXiqB7h3oFkb1jgLfmBKZRJDKhvXnJ1oysNMXPlD/Gfo3ztQemiDUia7lM7go4ILWPWdlnbvfFg3UyEs/Djv7mO0N23+Sc3VtOqIt0nz2t/Sg+JbUntADcDrIulTRrEo6QIEwb1RkfcQE7tpZLVluQgYZ53aIiVRg/fsnWd62CmxC4BJAgR+Oq4MdkYrSVJK0NkS+yOAnfUs+b40TDqGjX3Y6J+U6cduEd73T4kHFwkpibWAzSLk3IJQlXqovgI8fg74Tk5U38rSCPp+aThz+Gg7lFhFFh7kKGGE3eX6QKozJckQl5YBXIAy4Xem6HSIXXHaJDz5d28YAQrly61FjGs4g4m6XmadHM7TcFryCbfKgklxDJS67m8ltZMn3EbWhKBJytnLLh9dafPIur6aCJ65L2FSDjd0UYYlTJUCBPanKPL7J+boRUjBjogUweq7lJGz2Kf0at39IjI3qoLvEmGjS+BkHXjoN0T+CEuDCITqGTdjNtqAXWAWa71d6HytjhdWDFveJIxBhDJ4dKxJRsQHl/lkNiwdAx3LuleGnMVfinHQ/5Pl7NZ+xd9m3lHec+TQC06YO7YBodqQosoUA+8qZNOUSBlQf5yQspB26Nb3B5wGPbnt/CfECThlAHFfLawCpRZmWzzRRKj+A== 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:(366004)(64756008)(508600001)(66446008)(66476007)(66946007)(7696005)(122000001)(2906002)(54906003)(38100700002)(316002)(86362001)(2940100002)(82960400001)(66556008)(38070700005)(6916009)(71200400001)(33656002)(5660300002)(55016002)(186003)(52536014)(26005)(6506007)(55236004)(76116006)(9686003)(83380400001)(4326008)(8676002)(8936002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?K1ZmcHRGVmQwK2hVc3gwT3hWUE5VenMrSmNjcVJBU3MzTjNweU12TVZMZGxa?= =?utf-8?B?YmhXbVc5dWJVMUpNNkN3amZGeGdTS1N4NTR4VXp3U3J5Q1c1bDFzbDUwbThn?= =?utf-8?B?R0tTc09vcE95TlFxVUhGbVNieXlLZzk2SWZqUHNQdUdHWWRQWkhtc2dVU2Vn?= =?utf-8?B?MU9qYmhtbEkzWWR5VE1RVDVENWZNcVRrS3ZMQTkxQS9BcXFBTURGTUpyQUlm?= =?utf-8?B?SmNCN1VOSys1UXhobEgxTThweHk3M0FxejFva1RPaFM4U1FwR0xrWXo5ZDRl?= =?utf-8?B?ZUNtTmpzUzgyMXA3UExhYVRXdkg4SHhVNEdTREdURzFVTmszRjdHZkdHbVF6?= =?utf-8?B?d0VuRld1SWZXZzhFU0ZwQzBQMHp6ZGczdVlJUVRRSExwL2U2TG1NSmtlVTRU?= =?utf-8?B?YkcyL2FnY25Pd1RKT2dNdjVMdnZoMnZkZ1Z2LzMyZzBDN09UakUzQ2ZBMTdS?= =?utf-8?B?SUxJRHAvZ3FQUzRoQW91YUFSbnBqdUVvUEovWTFjWjFXUC9JamNVK0s5aEVz?= =?utf-8?B?a0xSTkR1K0hNN0JOMHprM0NlQkg4OC94TFU0YzA4NWd4d01jNW9na1ZMaHl0?= =?utf-8?B?VSttOVVQbnU3aERtZVdBQWdWNTg5S01rck1HRldING42aHkrR0pjcEdZeWRm?= =?utf-8?B?QzVrL3VZWGtlRkFCZDFRYzdQdnBnOHN2d2VrbDAvcnBvdUFKMXdiT0tvTnBs?= =?utf-8?B?bkZ6eGpjOFJrL2JpVUdLNGVKdHJneWZSZjZyOXBPSkNjSVFxM2ZtamRPSFZw?= =?utf-8?B?dDFNOWltVlJqY3dPLzZ3aHBJRVhadHVlaUxuUmUvWVprRFJKdURpdGwyT1Mr?= =?utf-8?B?M0JBdkxEeXpFeUIwUnd5TUFvK1pubE5BdzhSSTlVZmFwVFZIMFVneG5WMkVl?= =?utf-8?B?eVQzblF5VDRGdGIvWTlDTzJSNWhGRVcrNFlUR3pudC9Qb29RdTVHY2xsSlVW?= =?utf-8?B?QjlwYUpQaG15N1NwbWJyVStvYnNsbnhPZ3pqVUFVcUNLZm9Jb3NEeUh6dWNC?= =?utf-8?B?U0pTYWFxK1lEVS9LalRvNVlBVlJncTVMM0l2WTNXd2hXZ0w0TzZVdU1Fd0lT?= =?utf-8?B?eDNGaHh0clRkNy9XVEdhd1BXMEY0TFg0b3pIZ2JuSHJHWkZqOGVuMG9pNTh5?= =?utf-8?B?a2ZETUVZeTRDQlhBa3hQdU85eC9NaUhUL3cybWUrY0lnQkkzb1owSmJzZ2VL?= =?utf-8?B?M3hZMmp6bVNPSWFzcmplalBjbFZvVEJ6V1pxekVIZ3drMkRtelF2d0I4Rmxy?= =?utf-8?B?d0pQbVE3eUE1ZEJ0aCs3M0d1aHI0YUtYKzQ2VTJPTS9zZXd1MDZGK253cENO?= =?utf-8?B?WHorK2ZnN3FlbjU5Ulc0V1VDcXc2bkp0M1I4MnFndkwzZVRZdkJBd0tDS1FX?= =?utf-8?B?Z3h4STRSVThmUkxLQ1ErYmFsQzBFekxnNEV3MC9tRldQR3RsM2swUzk0ZWl3?= =?utf-8?B?VVQveTZMdlJCaTJBMkg5clBGR09zZm9BSmEvOFdGOWd2WTl4MlhNeWhTdktZ?= =?utf-8?B?RmFSWjZ2ZkdsaWl4MG5veGJTdXNsb1pZd3RZMTVIRUR0dUdmdm1WSTF4V1FU?= =?utf-8?B?L3JGNHMvVEFKQ3htaS9CUHoxNmgySkptL3ZQRXFjWVdxQjdSTXpINXNLN09J?= =?utf-8?B?TGgvNW1ORjRwYVBZRUtTVDZlMCs4d014WmkwVlplWTNMM1lJZDZSaU90NkZt?= =?utf-8?B?WHJqUnlWdXFTVVpkSTFsalFkSGRvdVRmM3ZQREp0NDNURWJlYmJVMXZiR09Y?= =?utf-8?B?c3FPYi9OTzF6NGRHMHcvdExqL1A2dE55SmVEaENoWS9sdGQzZ0lwT21qYUk2?= =?utf-8?B?d2MrRzdXeGxSeTZ4c1ZRdzY1M3RFTXE1QU5tRlgydHc2L2wvVFhncWJOQTJt?= =?utf-8?B?c0hZTzhnT1lOcGdzY1VVckhZaUh6Y04wT2dlcFhPbmZ1eTBTcEFSUnV1L1hn?= =?utf-8?B?YWVZOEF6Zm1tdUJvZEplampxWXhWYlh5SXJ6UDdXOXhWQUhWZkIyN0lEbDZk?= =?utf-8?B?VUc1emlBc0lkVWtJeTkvUkcwNTYzNkFzS0lTbFE2UXVyRjFsNVBEZ0JDdUFD?= =?utf-8?B?SFFod3hxQmlzM3hQdStNQmJBQ2xiVGkxWVFFdmw4UmZhYXhJRHJPZU1RYUpk?= =?utf-8?B?NVBwVFg5MmEwWmZvZUEzeXNzZjk0R3hFK0NTQThJUkNMN2htUWY0cmVYd2NJ?= =?utf-8?B?ejBwMjRWV1FRRXJnaVZVRk1VYWRyazFvbWlwMzBRblZOQ1I4amFKaU1BNWp5?= =?utf-8?B?Sm9OdWdCZ05GNFBFbFpqWE5Sc3dBPT0=?= 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: 07ebaa81-0cb6-4c9b-42a0-08d998801103 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Oct 2021 12:56:45.5369 (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: wEJiZMdUAFvhgats9+bFpPAn/HDvcdermyGv4s8/aF6vThHm6mfFgD+ZuM7OvtUzGa/LCBHnpLH5UgwIU7MxTgJoWtQ8vxudKm7uyEmAVKE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR11MB2041 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v5 4/5] lib/bpf: use wait event scheme for Rx/Tx iteration 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+IEhpIEZlaWZlaSwNCj4gDQo+ID4gPiBJbnN0ZWFkIG9mIHBvbGxpbmcgZm9yIGNiaS0+dXNl IHRvIGJlIHVwZGF0ZWQsIHVzZSB3YWl0IGV2ZW50IHNjaGVtZS4NCj4gPiA+DQo+ID4gPiBGdXJ0 aGVybW9yZSwgZGVsZXRlICdjb25zdCcgZm9yICdicGZfZXRoX2NiaV93YWl0Jy4gVGhpcyBpcyBi ZWNhdXNlIG9mIGENCj4gPiA+IGNvbXBpbGF0aW9uIGVycm9yOg0KPiA+ID4gLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCj4gPiA+IC4uL2xpYi9lYWwvaW5jbHVkZS9ydGVfY29tbW9uLmg6MzY6MTM6IGVycm9yOiBy ZWFkLW9ubHkgdmFyaWFibGUg4oCYdmFsdWXigJkNCj4gPiA+IHVzZWQgYXMg4oCYYXNt4oCZIG91 dHB1dA0KPiA+ID4gICAgMzYgfCAjZGVmaW5lIGFzbSBfX2FzbV9fDQo+ID4gPiAgICAgICB8ICAg ICAgICAgICAgIF5+fn5+fn4NCj4gPiA+DQo+ID4gPiAuLi9saWIvZWFsL2FybS9pbmNsdWRlL3J0 ZV9wYXVzZV82NC5oOjY2OjM6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhhc23igJkN Cj4gPiA+ICAgIDY2IHwgICBhc20gdm9sYXRpbGUoImxkYXhyICV3W3RtcF0sIFsleFthZGRyXV0i IFwNCj4gPiA+ICAgICAgIHwgICBefn4NCj4gPiA+DQo+ID4gPiAuLi9saWIvZWFsL2FybS9pbmNs dWRlL3J0ZV9wYXVzZV82NC5oOjk2OjM6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybw0KPiA+ ID4g4oCYX19MT0FEX0VYQ18zMuKAmQ0KPiA+ID4gICAgOTYgfCAgIF9fTE9BRF9FWENfMzIoKHNy YyksIGRzdCwgbWVtb3JkZXIpICAgICBcDQo+ID4gPiAgICAgICB8ICAgXn5+fn5+fn5+fn5+fg0K PiA+ID4NCj4gPiA+IC4uL2xpYi9lYWwvYXJtL2luY2x1ZGUvcnRlX3BhdXNlXzY0Lmg6MTY3OjQ6 IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybw0KPiA+ID4g4oCYX19MT0FEX0VYQ+KAmQ0KPiA+ ID4gICAxNjcgfCAgICBfX0xPQURfRVhDKChhZGRyKSwgdmFsdWUsIG1lbW9yZGVyLCBzaXplKSBc DQo+ID4gPiAgICAgICB8ICAgIF5+fn5+fn5+fn4NCj4gPiA+DQo+ID4gPiAuLi9saWIvYnBmL2Jw Zl9wa3QuYzoxMjU6Mzogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmHJ0ZV93YWl0X2V2 ZW504oCZDQo+ID4gPiAgIDEyNSB8ICAgcnRlX3dhaXRfZXZlbnQoJmNiaS0+dXNlLCBVSU5UMzJf TUFYLCA9PSwgcHVzZSwNCj4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gPg0KPiA+ID4gU2lnbmVk LW9mZi1ieTogRmVpZmVpIFdhbmcgPGZlaWZlaS53YW5nMkBhcm0uY29tPg0KPiA+ID4gUmV2aWV3 ZWQtYnk6IFJ1aWZlbmcgV2FuZyA8cnVpZmVuZy53YW5nQGFybS5jb20+DQo+ID4gPiAtLS0NCj4g PiA+ICBsaWIvYnBmL2JwZl9wa3QuYyB8IDExICsrKystLS0tLS0tDQo+ID4gPiAgMSBmaWxlIGNo YW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkNCj4gPiA+DQo+ID4gPiBkaWZm IC0tZ2l0IGEvbGliL2JwZi9icGZfcGt0LmMgYi9saWIvYnBmL2JwZl9wa3QuYyBpbmRleA0KPiA+ ID4gNmU4MjQ4ZjBkNi4uMjEzZDQ0YTc1YSAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9icGYvYnBm X3BrdC5jDQo+ID4gPiArKysgYi9saWIvYnBmL2JwZl9wa3QuYw0KPiA+ID4gQEAgLTExMSw5ICsx MTEsOSBAQCBicGZfZXRoX2NiaV91bnVzZShzdHJ1Y3QgYnBmX2V0aF9jYmkgKmNiaSkNCj4gPiA+ ICAgKiBXYWl0cyB0aWxsIGRhdGFwYXRoIGZpbmlzaGVkIHVzaW5nIGdpdmVuIGNhbGxiYWNrLg0K PiA+ID4gICAqLw0KPiA+ID4gIHN0YXRpYyB2b2lkDQo+ID4gPiAtYnBmX2V0aF9jYmlfd2FpdChj b25zdCBzdHJ1Y3QgYnBmX2V0aF9jYmkgKmNiaSkNCj4gPiA+ICticGZfZXRoX2NiaV93YWl0KHN0 cnVjdCBicGZfZXRoX2NiaSAqY2JpKQ0KPiA+DQo+ID4gSGksIEtvbnN0YW50aW4NCj4gPg0KPiA+ IEZvciB0aGlzIGJwZiBwYXRjaCwgSSBkZWxldGUgJ2NvbnN0JyB0aHJvdWdoIHRoaXMgaXMgY29u dHJhcnkgdG8gd2hhdCB3ZQ0KPiA+IGRpc2N1c3NlZCBlYXJsaWVyLiBUaGlzIGlzIGJlY2F1c2Ug aWYgIHdlIGtlZXAgJ2NvbnN0YW50JyBoZXJlIGFuZCB1c2UgJ3J0ZV93YWl0X2V2ZW50Jw0KPiA+ IG5ldyBtYWNybywgY29tcGlsZXIgd2lsbCByZXBvcnQgZXJyb3IuIEFuZCBlYXJsaWVyIHRoZSBh cm0gdmVyc2lvbiBjYW5ub3QgYmUgY29tcGlsZWQNCj4gPiBkdWUgdG8gSSBmb3Jnb3QgZW5hYmxl ICJ3ZmUiIGNvbmZpZyBpbiB0aGUgbWVzb24gZmlsZSwgc28gdGhpcyBpc3N1ZSBjYW4gbm90IGhh cHBlbiBiZWZvcmUuDQo+IA0KPiANCj4gSG9uZXN0bHksIEkgZG9uJ3QgdW5kZXJzdGFuZCB3aHkg d2UgaGF2ZSB0byByZW1vdmUgcGVyZmVjdGx5IHZhbGlkICdjb25zdCcgcXVhbGlmaWVyIGhlcmUu DQo+IElmIHRoaXMgbWFjcm8gY2FuJ3QgYmUgdXNlZCB3aXRoIHBvaW50ZXJzIHRvIGNvbnN0IChz dGlsbCBkb24ndCB1bmRlcnN0YW5kIHdoeSksDQo+IHRoZW4gbGV0J3MganVzdCBub3QgdXNlIHRo aXMgbWFjcm8gaGVyZS4NCj4gU3RyaWN0bHkgc3BlYWtpbmcgSSBkb24ndCBzZWUgbXVjaCBiZW5l Zml0IGhlcmUgZnJvbSBpdC4NCj4gDQo+ID4NCj4gPiA+ICB7DQo+ID4gPiAtCXVpbnQzMl90IG51 c2UsIHB1c2U7DQo+ID4gPiArCXVpbnQzMl90IHB1c2U7DQo+ID4gPg0KPiA+ID4gIAkvKiBtYWtl IHN1cmUgYWxsIHByZXZpb3VzIGxvYWRzIGFuZCBzdG9yZXMgYXJlIGNvbXBsZXRlZCAqLw0KPiA+ ID4gIAlydGVfc21wX21iKCk7DQo+ID4gPiBAQCAtMTIyLDExICsxMjIsOCBAQCBicGZfZXRoX2Ni aV93YWl0KGNvbnN0IHN0cnVjdCBicGZfZXRoX2NiaSAqY2JpKQ0KPiA+ID4NCj4gPiA+ICAJLyog aW4gdXNlLCBidXN5IHdhaXQgdGlsbCBjdXJyZW50IFJYL1RYIGl0ZXJhdGlvbiBpcyBmaW5pc2hl ZCAqLw0KPiA+ID4gIAlpZiAoKHB1c2UgJiBCUEZfRVRIX0NCSV9JTlVTRSkgIT0gMCkgew0KPiA+ ID4gLQkJZG8gew0KPiA+ID4gLQkJCXJ0ZV9wYXVzZSgpOw0KPiA+ID4gLQkJCXJ0ZV9jb21waWxl cl9iYXJyaWVyKCk7DQo+ID4gPiAtCQkJbnVzZSA9IGNiaS0+dXNlOw0KPiA+ID4gLQkJfSB3aGls ZSAobnVzZSA9PSBwdXNlKTsNCj4gPiA+ICsJCXJ0ZV93YWl0X2V2ZW50KCZjYmktPnVzZSwgVUlO VDMyX01BWCwgPT0sIHB1c2UsDQo+ID4gPiArCQkJCV9fQVRPTUlDX1JFTEFYRUQpOw0KDQpBZnRl ciBhbm90aGVyIHRob3VnaHQsIGlmIHdlIGRvIHR5cGUgY29udmVyc2lvbiBhdCBtYWNybyBpbnZv Y2F0aW9uIHRpbWU6DQoNCmJwZl9ldGhfY2JpX3dhaXQoY29uc3Qgc3RydWN0IGJwZl9ldGhfY2Jp ICpjYmkpDQp7DQogIC4uLg0KICBydGVfd2FpdF9ldmVudCgodWludDMyX3QgKikmY2JpLT51c2Us IFVJTlQzMl9NQVgsID09LCBwdXNlLCBfX0FUT01JQ19SRUxBWEVEKTsNCg0Kd291bGQgdGhhdCBo ZWxwPw0KDQoNCj4gPiA+ICAJfQ0KPiA+ID4gIH0NCj4gPiA+DQo+ID4gPiAtLQ0KPiA+ID4gMi4y NS4xDQoNCg==