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 9D815A0C41; Wed, 15 Sep 2021 09:10:35 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 34A984003F; Wed, 15 Sep 2021 09:10:35 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id E13FD4003C for ; Wed, 15 Sep 2021 09:10:33 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10107"; a="307790987" X-IronPort-AV: E=Sophos;i="5.85,294,1624345200"; d="scan'208";a="307790987" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2021 00:10:32 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,294,1624345200"; d="scan'208";a="552961199" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga002.fm.intel.com with ESMTP; 15 Sep 2021 00:10:31 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 15 Sep 2021 00:10:31 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Wed, 15 Sep 2021 00:10:31 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.109) 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.12; Wed, 15 Sep 2021 00:10:30 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nkWKQfuEkXDT/iI56tnW8lY+w5eCC7UCdRx9Qqr9AhLLOF1V+Axgw6H/OKVioOULYY30Wc03XKIiW8znocAa8Fh9nb/mlhUZa+OVmhCPntlH/HCPjos+hELLHxOR9cwNwa8MnbBJ9Per7xuNX6i0oz0ro+CU40Ulm+Wq2ikGb7LaeWgj3c6JjBkSBBTgIAYHgSVlslBnMYfUat3BKx1lJ7oQMqY5AP45mQeL80CdU5z5chFY9bpkb0d6X+fn2dLbAFjHlILztaVr2uZTL8z62duQI2JynmSY+VjRvEHb6BhZMCQQExSvm7rHpH8BrxLvy10Q7GFm4GhCrnvdm0I2vQ== 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; bh=jQ7gIodwIk26AIp75AonVRmiNtY/GsyAUx7b7tL5HN4=; b=jikhg7HLBV64wn+elEBgTyryXjxamNlnd9U4OTEFzKnu7lGmwfhVAa5Bag4EwLbzGRXdTGQk0QHNG1VBMK5zAMniq7G12T1/FyEP3H2L1alPwBm3m/hFF2EBKzzfqPwPEBd42y/H4zqoZPGpAuIDny80rcckvcXth71vt4opH56lVwGIqZHbYoGy7SIGQqj8LCHR9cC0Zrm7MSIxgA5xYZ5Gj4ZaszzUabvZSmd60LsbEjeEg/5rLuz1ANVmHIBulPkhyy8OWs5PUOH2d3aS6iYBnoJrveYZtspVHLMGVKLPjsbOV1Vg4kiPiNZSPpOdI2juOwbyi6IX6JWUIq+M7Q== 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=jQ7gIodwIk26AIp75AonVRmiNtY/GsyAUx7b7tL5HN4=; b=fNeIx5uuN4jIkCC8ijqPfkKv9VikQh/dteQ8o9YxPkkdftyy8ml3vYZeFfJua1Lp4xEorOYYUMZKFSZbMLr8PB4mPXI3i59AKr8QEqbw8LsVQEhLcP5GSVEKd8q9eTPPDTeNJWiEu5XacryguX6hkazo2wYslVZyxxmuDDfocdk= Received: from BN9PR11MB5513.namprd11.prod.outlook.com (2603:10b6:408:102::11) by BN6PR11MB4147.namprd11.prod.outlook.com (2603:10b6:405:80::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.17; Wed, 15 Sep 2021 07:10:27 +0000 Received: from BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::99b5:c482:4da6:799e]) by BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::99b5:c482:4da6:799e%8]) with mapi id 15.20.4500.019; Wed, 15 Sep 2021 07:10:27 +0000 From: "Ding, Xuan" To: "Xia, Chenbo" , "dev@dpdk.org" , "maxime.coquelin@redhat.com" CC: "Hu, Jiayu" , "Jiang, Cheng1" , "Richardson, Bruce" , "Pai G, Sunil" Thread-Topic: [PATCH] vhost: add unsafe API to check inflight packets Thread-Index: AQHXpT+5tdb87l2v2EWl1Z8UWanwcauksSMAgAAEC8A= Date: Wed, 15 Sep 2021 07:10:26 +0000 Message-ID: References: <20210909055758.106588-1-xuan.ding@intel.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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: bd355364-0159-4604-82f1-08d97817e4fd x-ms-traffictypediagnostic: BN6PR11MB4147: 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-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: AZirzOpXAN7QqJ50nTZsCavAn7uKF36G7bWoN1w3A8dp4om51/x4lxS7qW8izuHEKbdqV3/JlnVXsITL1ZjB/gvTzHNnYflW3giKfFB4lrluh4vbPhD40mdC7MiKyKD/DbT8xYGrGNfzzzlT1idP7lvRi5z9pB6bgAO/tWJCi0ZoutGi2szM9OaGtPXA4T+hpM66bTdIV09xV4vBJV6zqWANZdtV2tHX4XRE7eowZSpb4OJpld8KWHPLYPhRsqDL0FFENjGpC/g6YngxGVVo8FwRxeDoN/0Z7DcVPeWeBnxstNdEvCpUJ7DH3uzWHzPkYygIhOLIq8fHzoVSTX+zuoKbAxOXhT1njKPGVi1H8uEPoL/hkW53wbx6r5lWB+fpVe9nNd/0/00h9mZKyApgf5Fj3WFSEgcNtYhamJnyqhQYR/RhaCsBkCfA2SxaZvt8M0zn/LrFRB5Ru8YVBvUrfEdGH0urUC33nMcNUM7r6CoKPTJoG8nmWawFC9ET+L2t3hcPAnDrAnNUHadOkJFGuiUBf6UjqH8ltxJw3EbeMZRB2vXAaYBIagt/6bNghJJqV873kc9m+tlz47RGys73BylQ295jgTLNZPq77MvJokICyOqDm1qBBms8gKtBs+pEIiR9o/+ZuuW+e4aLPudfajpZll+8ZO8LSIBOiOWrcbt4LTu8uTS6E+uNwYDHF8+ge/Hpd48nYda1ZHMZHYRwxw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR11MB5513.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(376002)(366004)(346002)(396003)(39860400002)(8676002)(55016002)(316002)(8936002)(4326008)(186003)(54906003)(66476007)(110136005)(66556008)(64756008)(66446008)(38100700002)(122000001)(53546011)(5660300002)(86362001)(9686003)(478600001)(7696005)(2906002)(71200400001)(107886003)(52536014)(26005)(38070700005)(83380400001)(33656002)(76116006)(66946007)(6506007); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?T2IwRlB3MXIrWkMzNDEvVXdmY3IwdWdjUGlnK1dsUDVkOC9tbkpEMWw2TkRT?= =?utf-8?B?V1FtRUM3a1VTc0VFalc5Rkpta1JFSDhiK0srTDlwTzRLL2owTlRkYXNFSUR4?= =?utf-8?B?cnZ1VFVVQTFEN1gyL2p5RUxPa1dOV3hobnVBT1VMWnpib0thdkQxdmdoU216?= =?utf-8?B?ZzJYM2ZDK09iM1Jnc2lkMlpDY2wyKythNEN2elN6cEw0WGtmL1c2NDQyOVRT?= =?utf-8?B?WjRpVGN2R1RpVmVQbElJSEZOd050cnpBemc4aE5pcmlUaCtISDlsQnIzVlBS?= =?utf-8?B?SGc4a3FxNmtDOHUwZzh0c3ZlQlJackFPNFRsK2lYZTJEQjRUNzVKNVRBSmsy?= =?utf-8?B?enlSTks4US9NOTFrMlB1U3lJdkdYeDV6bkVvRzhETGtOR2hnYlhkZW53Q3lR?= =?utf-8?B?c0M3VzFlTlh2QmFoWWtXeGw2bStFWVBiWmluNDVqbzRRaDlzeExjNXBubVRa?= =?utf-8?B?RFNPTEh4MU5rS2RyK21Ec0dWdndXcU9RVytKc1hweWhVWkVGRExRYjE0aUdC?= =?utf-8?B?ZWpuYnM1bXgyMmU4OUlDbnR0QkNRclVGL1Fjemt5Mk5xaWZDMy9FYkw0ZGVI?= =?utf-8?B?T2FoN2lNODNyMHc1cmNLVTZ0M3UrWmt6dkxRelFuRUh6b2lDNUF6LzhocURa?= =?utf-8?B?TGZLaGdDS1Fsem1RMUhNMVlQNzBoazQ5Y2N2ZU4zM253OFI4OVA2M0hXM0FV?= =?utf-8?B?TkdUa0xqT09iaXNPcHBienJNWGRhVEJzREFkVU5iV0l6R1pKeVpacDJRRkwx?= =?utf-8?B?ekhHY3ZjQVkrVjVWUlY2VW9aVUFBUG1OK1AvdkpHVFF6L08rYzRnYTRvaVhv?= =?utf-8?B?eTU1Wm1iay84S0VUK3lzdytUczYzeHlyRTFMamQ1dUVrSHh3RG0rWEc4OFBU?= =?utf-8?B?d202ai9UQUg3a2R4SFBOT1RHcDVXWEpOR29tdlVMQUxSMnVKdFNiM0lSNCtS?= =?utf-8?B?TUUvaDNHRSsxbkpSb0dZRmttZ3liUFo0N3JReEpudmtFL2RwTFpUeUxhM3JF?= =?utf-8?B?cjJNTktnNXRyQm01UFJCUTdWV3FjSFFBNGZmZnFrT2N5VURvb0Y3VFJJVFJX?= =?utf-8?B?WjdXcVUvZEhvZUFBY1hGdGw3S3FSd29sOEgxUXpOY3pDMDI3SkFwb3dmemVs?= =?utf-8?B?M3UwMy9Jb2t6T2xNSjZoVVYvaDZ4UDBKekYxanBMOUtlMzYvM01iNzZ2TE5E?= =?utf-8?B?bGg5VUwyd1RDMlJ5NHJsbXZhOHNnQ1l2OENyTkEzbmh2M2szUGpVRWh3Umh1?= =?utf-8?B?bUNBdE0vYWVFb3VWYW1wZ2ZiVHJZczYxZndIZC80N05XSk41NGhWSjg1MVhC?= =?utf-8?B?RXF3OFNNYm5IVzhoSjU2ajhwQmNYUUFMNWdNUXhEa1lacnh6OXZraGpZRjMw?= =?utf-8?B?ZTdockJBWWRETjVpZ1craEE3VzNhUzlvbHhBa2NVQ3N4UC9PQ0tGMUdMZTdm?= =?utf-8?B?dFJ6ZnM0OEo3aGNVNGJMMUFIOWovSVJLSnA0WHQ4em9zMGZObkdLbUdGcXZG?= =?utf-8?B?MWdqQitMdjRzRmpJK1Z4VFJ4aUpuZmY3dklTaDlQVmY5UzlBV2JGUThLcmFm?= =?utf-8?B?MVVwRnY2cUtZSGRCSlpPUmdRREE4VENqcitiNDVPYXBUUEZzYnE2cVQvUmRV?= =?utf-8?B?bG1veGVuWUo5dmJJVDFHbTVCRXZHUlg0dVV3Z3NGUGlVUzBmcGpXVTNnOGZU?= =?utf-8?B?Q1RLZTVQM0pLenpZWjY2dDJ6blYydERDTk51enFpWDlvTWpJa1U5cGJ2SEVQ?= =?utf-8?Q?mLUpIIabPOzRr4kXXd1zqThsF7dpYDE6PGj7S8j?= 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: BN9PR11MB5513.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bd355364-0159-4604-82f1-08d97817e4fd X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Sep 2021 07:10:26.9423 (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: I8cV5s2roKl8etSaZ1KcjeSDplA9jJ4036gO4SLsnCt4P8JbgMHQovwttb94ygJSnA3DPqjL2CMTzHS+G/CBqg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR11MB4147 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH] vhost: add unsafe API to check inflight packets 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" SGkgQ2hlbmJvLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFhpYSwg Q2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1i ZXIgMTUsIDIwMjEgMjo0OSBQTQ0KPiBUbzogRGluZywgWHVhbiA8eHVhbi5kaW5nQGludGVsLmNv bT47IGRldkBkcGRrLm9yZzsNCj4gbWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20NCj4gQ2M6IEh1 LCBKaWF5dSA8amlheXUuaHVAaW50ZWwuY29tPjsgY2hlbmcuamlhbmdAaW50ZWwuY29tOyBSaWNo YXJkc29uLCBCcnVjZQ0KPiA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5jb20+OyBQYWkgRywgU3Vu aWwgPHN1bmlsLnBhaS5nQGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtQQVRDSF0gdmhvc3Q6 IGFkZCB1bnNhZmUgQVBJIHRvIGNoZWNrIGluZmxpZ2h0IHBhY2tldHMNCj4gDQo+IEhpIFh1YW4s DQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogRGluZywgWHVh biA8eHVhbi5kaW5nQGludGVsLmNvbT4NCj4gPiBTZW50OiBUaHVyc2RheSwgU2VwdGVtYmVyIDks IDIwMjEgMTo1OCBQTQ0KPiA+IFRvOiBkZXZAZHBkay5vcmc7IG1heGltZS5jb3F1ZWxpbkByZWRo YXQuY29tOyBYaWEsIENoZW5ibw0KPiA+IDxjaGVuYm8ueGlhQGludGVsLmNvbT4NCj4gPiBDYzog SHUsIEppYXl1IDxqaWF5dS5odUBpbnRlbC5jb20+OyBjaGVuZy5qaWFuZ0BpbnRlbC5jb207IFJp Y2hhcmRzb24sIEJydWNlDQo+ID4gPGJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tPjsgUGFpIEcs IFN1bmlsIDxzdW5pbC5wYWkuZ0BpbnRlbC5jb20+OyBEaW5nLA0KPiBYdWFuDQo+ID4gPHh1YW4u ZGluZ0BpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogW1BBVENIXSB2aG9zdDogYWRkIHVuc2FmZSBB UEkgdG8gY2hlY2sgaW5mbGlnaHQgcGFja2V0cw0KPiA+DQo+ID4gSW4gYXN5bmMgZGF0YSBwYXRo LCB3aGVuIHZyaW5nIHN0YXRlIGNoYW5nZXMsIGl0IGlzIG5lY2Vzc2FyeSB0bw0KPiA+IGtub3cg dGhlIG51bWJlciBvZiBpbmZsaWdodCBwYWNrZXRzIGluIERNQSBlbmdpbmUuIFRoaXMgcGF0Y2gN Cj4gPiBwcm92aWRlcyBhIHRocmVhZCB1bnNhZmUgQVBJIHRvIHJldHVybiB0aGUgbnVtYmVyIG9m IGluZmxpZ2h0DQo+ID4gcGFja2V0cyB3aXRob3V0IHVzaW5nIGFueSBsb2NrLg0KPiA+DQo+ID4g U2lnbmVkLW9mZi1ieTogWHVhbiBEaW5nIDx4dWFuLmRpbmdAaW50ZWwuY29tPg0KPiA+IC0tLQ0K PiA+ICBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvdmhvc3RfbGliLnJzdCAgICB8ICA1ICsrKysrDQo+ ID4gIGRvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVhc2VfMjFfMTEucnN0IHwgIDUgKysrKysNCj4g PiAgbGliL3Zob3N0L3J0ZV92aG9zdF9hc3luYy5oICAgICAgICAgICAgfCAxNCArKysrKysrKysr KysrKw0KPiA+ICBsaWIvdmhvc3QvdmVyc2lvbi5tYXAgICAgICAgICAgICAgICAgICB8ICAzICsr Kw0KPiA+ICBsaWIvdmhvc3Qvdmhvc3QuYyAgICAgICAgICAgICAgICAgICAgICB8IDI1ICsrKysr KysrKysrKysrKysrKysrKysrKysNCj4gPiAgNSBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25z KCspDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3Zob3N0X2xp Yi5yc3QNCj4gPiBiL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS92aG9zdF9saWIucnN0DQo+ID4gaW5k ZXggODg3NDAzMzE2NS4uYjRiMTEzNGY1NCAxMDA2NDQNCj4gPiAtLS0gYS9kb2MvZ3VpZGVzL3By b2dfZ3VpZGUvdmhvc3RfbGliLnJzdA0KPiA+ICsrKyBiL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS92 aG9zdF9saWIucnN0DQo+ID4gQEAgLTMwNSw2ICszMDUsMTEgQEAgVGhlIGZvbGxvd2luZyBpcyBh biBvdmVydmlldyBvZiBzb21lIGtleSBWaG9zdCBBUEkNCj4gPiBmdW5jdGlvbnM6DQo+ID4gICAg VGhpcyBmdW5jdGlvbiByZXR1cm5zIHRoZSBhbW91bnQgb2YgaW4tZmxpZ2h0IHBhY2tldHMgZm9y IHRoZSB2aG9zdA0KPiA+ICAgIHF1ZXVlIHVzaW5nIGFzeW5jIGFjY2VsZXJhdGlvbi4NCj4gPg0K PiA+ICsgICAgYGBydGVfdmhvc3RfYXN5bmNfZ2V0X2luZmxpZ2h0X3RocmVhZF91bnNhZmUodmlk LCBxdWV1ZV9pZClgYA0KPiA+ICsNCj4gPiArICBHZXQgdGhlIG51bWJlciBvZiBpbmZsaWdodCBw YWNrZXRzIGZvciBhIHZob3N0IHF1ZXVlIHdpdGhvdXQNCj4gPiArICBwZXJmb3JtaW5nIGFueSBs b2NraW5nLg0KPiA+ICsNCj4gPiAgKiBgYHJ0ZV92aG9zdF9jbGVhcl9xdWV1ZV90aHJlYWRfdW5z YWZlKHZpZCwgcXVldWVfaWQsICoqcGt0cywgY291bnQpYGANCj4gDQo+IFRoaXMgZG9lcyBub3Qg YWxpZ24gd2l0aCBvdGhlcnMuIFBsZWFzZSBjaGVjay4NCg0KVGhhbmtzLCB3aWxsIGZpeCBpdCBp biBuZXh0IHZlcnNpb24uDQoNCj4gDQo+ID4NCj4gPiAgICBDbGVhciBpbmZsaWdodCBwYWNrZXRz IHdoaWNoIGFyZSBzdWJtaXR0ZWQgdG8gRE1BIGVuZ2luZSBpbiB2aG9zdCBhc3luYw0KPiA+IGRh dGENCj4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMV8xMS5y c3QNCj4gPiBiL2RvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVhc2VfMjFfMTEucnN0DQo+ID4gaW5k ZXggNjc1YjU3MzgzNC4uZGIwODBlOTQ5MCAxMDA2NDQNCj4gPiAtLS0gYS9kb2MvZ3VpZGVzL3Jl bF9ub3Rlcy9yZWxlYXNlXzIxXzExLnJzdA0KPiA+ICsrKyBiL2RvYy9ndWlkZXMvcmVsX25vdGVz L3JlbGVhc2VfMjFfMTEucnN0DQo+ID4gQEAgLTU1LDYgKzU1LDExIEBAIE5ldyBGZWF0dXJlcw0K PiA+ICAgICAgIEFsc28sIG1ha2Ugc3VyZSB0byBzdGFydCB0aGUgYWN0dWFsIHRleHQgYXQgdGhl IG1hcmdpbi4NCj4gPiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09DQo+ID4NCj4gPiArKiAqKkFkZGVkIHZob3N0IEFQSSB0byBnZXQg dGhlIG51bWJlciBvZiBpbmZsaWdodCBwYWNrZXRzLioqDQo+ID4gKw0KPiA+ICsgIEFkZGVkIGFu IEFQSSB3aGljaCBjYW4gZ2V0IHRoZSBudW1iZXIgb2YgaW5mbGlnaHQgcGFja2V0cyBpbg0KPiA+ ICsgIHZob3N0IGFzeW5jIGRhdGEgcGF0aC4NCj4gPiArDQo+IA0KPiBQbGVhc2UgYWRkICd3aXRo b3V0IGxvY2snIG9yIHNvbWV0aGluZyBzaW1pbGFyIGFzIHdlIGFscmVhZHkgaGF2ZSBhIGxvY2sg dmVyc2lvbi4NCg0KWW91IGFyZSByaWdodCwgYWRkICJ3aXRob3V0IGxvY2siIGlzIG1vcmUgYWNj dXJhY3kuDQoNCj4gDQo+ID4gICogKipFbmFibGVkIG5ldyBkZXZhcmdzIHBhcnNlci4qKg0KPiA+ DQo+ID4gICAgKiBFbmFibGVkIGRldmFyZ3Mgc3ludGF4DQo+ID4gZGlmZiAtLWdpdCBhL2xpYi92 aG9zdC9ydGVfdmhvc3RfYXN5bmMuaCBiL2xpYi92aG9zdC9ydGVfdmhvc3RfYXN5bmMuaA0KPiA+ IGluZGV4IGIyNWZmNDQ2ZjcuLjBhZjQxNGJmNzggMTAwNjQ0DQo+ID4gLS0tIGEvbGliL3Zob3N0 L3J0ZV92aG9zdF9hc3luYy5oDQo+ID4gKysrIGIvbGliL3Zob3N0L3J0ZV92aG9zdF9hc3luYy5o DQo+ID4gQEAgLTI0Niw2ICsyNDYsMjAgQEAgdWludDE2X3QgcnRlX3Zob3N0X3BvbGxfZW5xdWV1 ZV9jb21wbGV0ZWQoaW50IHZpZCwNCj4gPiB1aW50MTZfdCBxdWV1ZV9pZCwNCj4gPiAgX19ydGVf ZXhwZXJpbWVudGFsDQo+ID4gIGludCBydGVfdmhvc3RfYXN5bmNfZ2V0X2luZmxpZ2h0KGludCB2 aWQsIHVpbnQxNl90IHF1ZXVlX2lkKTsNCj4gPg0KPiA+ICsvKioNCj4gPiArICogVGhpcyBmdW5j dGlvbiBpcyBsb2NrLWZyZWUgdmVyc2lvbiB0byByZXR1cm4gdGhlIGFtb3VudCBvZiBpbi1mbGln aHQNCj4gPiArICogcGFja2V0cyBmb3IgdGhlIHZob3N0IHF1ZXVlIHdoaWNoIHVzZXMgYXN5bmMg Y2hhbm5lbCBhY2NlbGVyYXRpb24uDQo+ID4gKyAqDQo+ID4gKyAqIEBwYXJhbSB2aWQNCj4gPiAr ICogIGlkIG9mIHZob3N0IGRldmljZSB0byBlbnF1ZXVlIGRhdGENCj4gPiArICogQHBhcmFtIHF1 ZXVlX2lkDQo+ID4gKyAqICBxdWV1ZSBpZCB0byBlbnF1ZXVlIGRhdGENCj4gDQo+IFlvdSBjYW4g YWxzbyBjaGVjayBkZXF1ZXVlIGluZmxpZ2h0IHBhY2tldHMsIHJpZ2h0Pw0KDQpZZXMsIHRoaXMg QVBJIGFwcGxpZXMgdG8gYm90aCBlbnF1ZXVlIGFuZCBkZXF1ZXVlIGRpcmVjdGlvbnMuDQoNCj4g DQo+ID4gKyAqIEByZXR1cm4NCj4gPiArICogIHRoZSBhbW91bnQgb2YgaW4tZmxpZ2h0IHBhY2tl dHMgb24gc3VjY2VzczsgLTEgb24gZmFpbHVyZQ0KPiA+ICsgKi8NCj4gPiArX19ydGVfZXhwZXJp bWVudGFsDQo+ID4gK2ludCBydGVfdmhvc3RfYXN5bmNfZ2V0X2luZmxpZ2h0X3RocmVhZF91bnNh ZmUoaW50IHZpZCwgdWludDE2X3QgcXVldWVfaWQpOw0KPiA+ICsNCj4gPiAgLyoqDQo+ID4gICAq IFRoaXMgZnVuY3Rpb24gY2hlY2tzIGFzeW5jIGNvbXBsZXRpb24gc3RhdHVzIGFuZCBjbGVhciBw YWNrZXRzIGZvcg0KPiA+ICAgKiBhIHNwZWNpZmljIHZob3N0IGRldmljZSBxdWV1ZS4gUGFja2V0 cyB3aGljaCBhcmUgaW5mbGlnaHQgd2lsbCBiZQ0KPiA+IGRpZmYgLS1naXQgYS9saWIvdmhvc3Qv dmVyc2lvbi5tYXAgYi9saWIvdmhvc3QvdmVyc2lvbi5tYXANCj4gPiBpbmRleCBjOTJhOWQ0OTYy Li5iMTUwZGM0MDhkIDEwMDY0NA0KPiA+IC0tLSBhL2xpYi92aG9zdC92ZXJzaW9uLm1hcA0KPiA+ ICsrKyBiL2xpYi92aG9zdC92ZXJzaW9uLm1hcA0KPiA+IEBAIC04NSw0ICs4NSw3IEBAIEVYUEVS SU1FTlRBTCB7DQo+ID4gIAlydGVfdmhvc3RfYXN5bmNfY2hhbm5lbF9yZWdpc3Rlcl90aHJlYWRf dW5zYWZlOw0KPiA+ICAJcnRlX3Zob3N0X2FzeW5jX2NoYW5uZWxfdW5yZWdpc3Rlcl90aHJlYWRf dW5zYWZlOw0KPiA+ICAJcnRlX3Zob3N0X2NsZWFyX3F1ZXVlX3RocmVhZF91bnNhZmU7DQo+ID4g Kw0KPiA+ICsJI2FkZGVkIGluIDIxLjExDQo+ID4gKwlydGVfdmhvc3RfYXN5bmNfZ2V0X2luZmxp Z2h0X3RocmVhZF91bnNhZmU7DQo+ID4gIH07DQo+ID4gZGlmZiAtLWdpdCBhL2xpYi92aG9zdC92 aG9zdC5jIGIvbGliL3Zob3N0L3Zob3N0LmMNCj4gPiBpbmRleCAzNTVmZjM3NjUxLi5kZjk2Zjg0 ODczIDEwMDY0NA0KPiA+IC0tLSBhL2xpYi92aG9zdC92aG9zdC5jDQo+ID4gKysrIGIvbGliL3Zo b3N0L3Zob3N0LmMNCj4gPiBAQCAtMTg4Niw1ICsxODg2LDMwIEBAIGludCBydGVfdmhvc3RfYXN5 bmNfZ2V0X2luZmxpZ2h0KGludCB2aWQsIHVpbnQxNl90DQo+ID4gcXVldWVfaWQpDQo+ID4gIAly ZXR1cm4gcmV0Ow0KPiA+ICB9DQo+ID4NCj4gPiAraW50IHJ0ZV92aG9zdF9hc3luY19nZXRfaW5m bGlnaHRfdGhyZWFkX3Vuc2FmZShpbnQgdmlkLCB1aW50MTZfdCBxdWV1ZV9pZCkNCj4gDQo+IEFj Y29yZGluZyB0byBEUERLIGNvZGluZyBzdHlsZSwgcmV0dXJuIHR5cGUgYW5kIGZ1bmMgbmFtZSBz aG91bGQgYmUgaW4NCj4gZGlmZmVyZW50DQo+IGxpbmVzLiBJIG5vdGljZSB0aGVyZSBhcmUgYWxz byBzb21lIGxlZnQgdG8gY2xlYW4uIE1heSBjbGVhbiBpbiBhbm90aGVyIHBhdGNoLg0KDQpUaGFu a3MsIG5vdGljZSB0aGUgcnRlX3Zob3N0X2FzeW5jX2dldF9pbmZsaWdodCgpIEFQSSBhbHNvIGhh cyB0aGlzIHByb2JsZW0uDQpXaWxsIGZpeCBib3RoIGluIG5leHQgdmVyc2lvbi4NCg0KUmVnYXJk cywNClh1YW4NCg0KPiANCj4gVGhhbmtzLA0KPiBDaGVuYm8NCj4gDQo+ID4gK3sNCj4gPiArCXN0 cnVjdCB2aG9zdF92aXJ0cXVldWUgKnZxOw0KPiA+ICsJc3RydWN0IHZpcnRpb19uZXQgKmRldiA9 IGdldF9kZXZpY2UodmlkKTsNCj4gPiArCWludCByZXQgPSAtMTsNCj4gPiArDQo+ID4gKwlpZiAo ZGV2ID09IE5VTEwpDQo+ID4gKwkJcmV0dXJuIHJldDsNCj4gPiArDQo+ID4gKwlpZiAocXVldWVf aWQgPj0gVkhPU1RfTUFYX1ZSSU5HKQ0KPiA+ICsJCXJldHVybiByZXQ7DQo+ID4gKw0KPiA+ICsJ dnEgPSBkZXYtPnZpcnRxdWV1ZVtxdWV1ZV9pZF07DQo+ID4gKw0KPiA+ICsJaWYgKHZxID09IE5V TEwpDQo+ID4gKwkJcmV0dXJuIHJldDsNCj4gPiArDQo+ID4gKwlpZiAoIXZxLT5hc3luY19yZWdp c3RlcmVkKQ0KPiA+ICsJCXJldHVybiByZXQ7DQo+ID4gKw0KPiA+ICsJcmV0ID0gdnEtPmFzeW5j X3BrdHNfaW5mbGlnaHRfbjsNCj4gPiArDQo+ID4gKwlyZXR1cm4gcmV0Ow0KPiA+ICt9DQo+ID4g Kw0KPiA+ICBSVEVfTE9HX1JFR0lTVEVSX1NVRkZJWCh2aG9zdF9jb25maWdfbG9nX2xldmVsLCBj b25maWcsIElORk8pOw0KPiA+ICBSVEVfTE9HX1JFR0lTVEVSX1NVRkZJWCh2aG9zdF9kYXRhX2xv Z19sZXZlbCwgZGF0YSwgV0FSTklORyk7DQo+ID4gLS0NCj4gPiAyLjE3LjENCg0K