From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 869B1A04B1; Wed, 30 Sep 2020 07:49:52 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 691811DA05; Wed, 30 Sep 2020 07:49:51 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id AD3641D538 for ; Wed, 30 Sep 2020 07:49:49 +0200 (CEST) IronPort-SDR: U+XHXE9OIEs9dtMj3Dw6SQmEkpaMDV8uVbC6I/iaiGMGBpxyhRAfLL7meRyD3yzBwpSwQ3q7ZB S8bceQ4AqNHw== X-IronPort-AV: E=McAfee;i="6000,8403,9759"; a="159756936" X-IronPort-AV: E=Sophos;i="5.77,321,1596524400"; d="scan'208";a="159756936" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Sep 2020 22:49:47 -0700 IronPort-SDR: EFM8muLAItFOg1pWUhbkOi9FiqT7rirCLI7etWN5B6Q7k50o3N0zGm/hUVAdOnotP909s1PMma 07GNgtrBspsg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,321,1596524400"; d="scan'208";a="312474747" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by orsmga006.jf.intel.com with ESMTP; 29 Sep 2020 22:49:47 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 29 Sep 2020 22:49:47 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) 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.1713.5 via Frontend Transport; Tue, 29 Sep 2020 22:49:47 -0700 Received: from NAM02-BL2-obe.outbound.protection.outlook.com (104.47.38.59) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Tue, 29 Sep 2020 22:49:47 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U6rTy29HsIalKgb2/dNX3267+rHekFm0kvVuBL0yJRVmcQ+F8x9KrozVUwjX3lgUwUO17IOLeHdKrqyzcPz1QUzRCsV7OQp8eTYTztJyRt5IvhkYZFgf07RwiT5Qs1NjCNVvlg84jc8WXO9jRdNCqVReSXPW+XzAdxnfi7/ynu8n0zvCkRdl7HJg0HNv5EM1HTFlyIVq00K2oIywNz4aBD7Vs93/F109Ltvbp5R4qhHCuxqc90KP7pIyRBD5ofCtM3uHYOGX+Gy8qANB2SOWQRkAFkj1yoqSHIGq+4rSHa/cugjtYPEM6xEi2Q70DB3i49tnEyvDacorWoq5PaLG7A== 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=DNHrKTHA2oLCcR46kHxr3s2+eUY1YJJQ7OAoIHUcVW4=; b=TVluq6o8I/Mwwywtm/Yk8AMqzwHp3ZWHx0XMNmbmCM/Y5nt+DaQ5E8ub+pp2Vdk5GUaWuojcsN5KBqfmPJ7fQn5Maelo8SNUkpRF3jIf2N6KFe29VwKBg7t+DorjA8YjGomFuOpouWiI3qUfMj0Vwlx6GEiiPLOi2LCkDvb/MXTOCHQrcMWyGGhxHlymjIQQ6vGyXwCUSma2v1rbVk9Wcf740OsL0416ZBub9iI2D+aBmGRp4Rtbppi0Iou1txkhJmYrkFb7LtmwjGc6GgZScw0UfcGIn4yD8v0BUp/GwM8CSd7ge55vVTtQrA5H3v3zR655KAJ7CNUyYPk0/4v5Cg== 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=DNHrKTHA2oLCcR46kHxr3s2+eUY1YJJQ7OAoIHUcVW4=; b=Tiom8dwBZRO7/aOG40mce8Su7QMSLXyV8DnZwPVI1qflyDTUBZheK4PQX1FmtXRdRjbQl9iiBjtbIFlOk+eHpxjYfwD6iMVofj+87mqC5zXSdi7VMPQFkkl24wSYSqNPrHIIQVkqETLkhCSyOHOoT3K54h+Dg6WvYK4GHs0yjJU= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (2603:10b6:208:13f::22) by MN2PR11MB3885.namprd11.prod.outlook.com (2603:10b6:208:151::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.22; Wed, 30 Sep 2020 05:49:45 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::1dc7:9f52:91c1:52da]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::1dc7:9f52:91c1:52da%3]) with mapi id 15.20.3412.029; Wed, 30 Sep 2020 05:49:45 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , "dev@dpdk.org" , "Fu, Patrick" , "amorenoz@redhat.com" Thread-Topic: [PATCH v3 3/8] net/virtio: move backend type selection to ethdev Thread-Index: AQHWlnu2o9MsAdO070mPg84U1cXtHamArWmw Date: Wed, 30 Sep 2020 05:49:45 +0000 Message-ID: References: <20200929161404.124580-1-maxime.coquelin@redhat.com> <20200929161404.124580-4-maxime.coquelin@redhat.com> In-Reply-To: <20200929161404.124580-4-maxime.coquelin@redhat.com> Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.38] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ea597cf1-57ce-4e4b-dcb4-08d86504a2b2 x-ms-traffictypediagnostic: MN2PR11MB3885: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:400; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qQCn9t7rF4vaD34PsTmN+iV486ktqLLI/oA0C4WmrzzSPbmlC69Tk8R8BWdNc8siXwj/FX6f2h9YmAwvLegTwcL9NCijxzCG7cBixWZrgR/lQkFHXABd8PTMjN7xtcKMbfVoDHJKNw3PsVqaSxqs8I1qYX1yHVuAt9IRdb7rRTm7J29vAzb9Lub15xqf/+jt97+AlgOQZYoJH5eJKH4yt9Y6vAtTpClkcHKjEnfm1nyCnmkWBE/qBfZKKwpFG/MSQzluF9YFdA2fG0R/6/PyWks0ExKKLPDYfvJN/k45P/CnaGqJBKY+depbxKJQlUJBCiQQsh6QdDazKlAWd48XRauiXhliDhp3pzeg/BRYjRCSSXFiFO7hWcgr1QtEDICz x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB4063.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(366004)(136003)(376002)(396003)(39860400002)(33656002)(316002)(186003)(110136005)(8936002)(6506007)(52536014)(478600001)(53546011)(7696005)(66946007)(26005)(76116006)(5660300002)(55016002)(9686003)(8676002)(2906002)(83380400001)(71200400001)(86362001)(66476007)(64756008)(66446008)(66556008); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: txX3NEmNDOEuFQ9bV6DY6Aw71UYfa6rlov4wk6QhwIOZfacO3OMGQNTZP1EgGyQ7LQUMQ6Si7zm1vHxyvzGb2FZulYYsWAH9j3iV0eJ+cOrsPkmGM/5W5j7x4YnHPjerABeMhpPTBjSC3QBv/FAyz5w7f2KZaL6I3gSGXN/ebKhyZIimmaZyB4+wGzdqHwbkYDZK6c8mvMWgl5Rrhrp+f6aB60gHguAvufTLSD7NjJ8Q166OPTUGZ1KEmiDa9cpcdpwUIHd70I4CWfxLSdl7DWRGR97CI2vram63KoJjygwJjZWapDH1vXEyciw+s41U2aP1XJpeeYcdsSePHpPj4NuV1EwiQ+a5Yv4iEqfDbCQ/FzDohAbtemESj6hRtw1oUGrqZsZJpGn+/9u6QCMrdDRevTAP+91GQt+K2rg+vp9CkhE9qbZjxN75m7aTPHLhPocGSIaulaexbuqMD39VCHdTY3QVZ1qeT9YL/8gYCXw3x4i4Iw7NzDvlL9Tp0JSFfsG49FpY3gMOqDlrFgCH2goavOLgJKTi4jvzktI/obl+upSg5AaVtqGjwIgIM2omGJtfkmmdVNhLisVJbmTxZ+wZMx7c9LHJp6SFE90oVa/amcmDP3ddpn3zaQaffSnuQqG6vSf5OfvwFvUS2nWyhw== 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: MN2PR11MB4063.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ea597cf1-57ce-4e4b-dcb4-08d86504a2b2 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Sep 2020 05:49:45.5701 (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: M73lEYekxhaXYW+4usSX+jZWNUDM2R30Vp2ioCSJvj+2HETWti11EE6X5LtMH46cUls3ufPBma8gqwxOjB60fA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3885 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v3 3/8] net/virtio: move backend type selection to ethdev X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBNYXhpbWUgQ29xdWVsaW4gPG1h eGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIFNlcHRlbWJlciAz MCwgMjAyMCAxMjoxNCBBTQ0KPiBUbzogZGV2QGRwZGsub3JnOyBYaWEsIENoZW5ibyA8Y2hlbmJv LnhpYUBpbnRlbC5jb20+OyBGdSwgUGF0cmljaw0KPiA8cGF0cmljay5mdUBpbnRlbC5jb20+OyBh bW9yZW5vekByZWRoYXQuY29tDQo+IENjOiBNYXhpbWUgQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxp bkByZWRoYXQuY29tPg0KPiBTdWJqZWN0OiBbUEFUQ0ggdjMgMy84XSBuZXQvdmlydGlvOiBtb3Zl IGJhY2tlbmQgdHlwZSBzZWxlY3Rpb24gdG8gZXRoZGV2DQo+IA0KPiBGcm9tOiBBZHJpYW4gTW9y ZW5vIDxhbW9yZW5vekByZWRoYXQuY29tPg0KPiANCj4gVGhpcyBpcyBhIHByZXBhcmF0aW9uIHBh dGNoIHdpdGggbm8gZnVuY3Rpb25hbCBjaGFuZ2UuDQo+IA0KPiBVc2UgYW4gZW51bSBpbnN0ZWFk IG9mIGEgYm9vbGVhbiBmb3IgdGhlIGJhY2tlbmQgdHlwZS4NCj4gTW92ZSB0aGUgZGV0ZWN0aW9u IGxvZ2ljIHRvIHRoZSBldGhkZXYgbGF5ZXIgKHdoZXJlIGl0IGlzIG5lZWRlZCBmb3IgdGhlDQo+ IGZpcnN0IHRpbWUpLg0KPiBUaGUgdmlydGlvX3VzZXJfZGV2IHN0b3JlcyB0aGUgYmFja2VuZCB0 eXBlIGluIHRoZSB2aXJ0aW9fdXNlcl9kZXYNCj4gc3RydWN0IHNvIHRoZSB0eXBlIGlzIG9ubHkg ZGV0ZXJtaW5lZCBvbmNlDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBNYXhpbWUgQ29xdWVsaW4gPG1h eGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiBBZHJpYW4gTW9yZW5v IDxhbW9yZW5vekByZWRoYXQuY29tPg0KPiAtLS0NCj4gIC4uLi9uZXQvdmlydGlvL3ZpcnRpb191 c2VyL3ZpcnRpb191c2VyX2Rldi5jICB8IDM3ICsrKysrKysrLS0tLS0tLS0tLS0NCj4gIC4uLi9u ZXQvdmlydGlvL3ZpcnRpb191c2VyL3ZpcnRpb191c2VyX2Rldi5oICB8IDExICsrKysrLQ0KPiAg ZHJpdmVycy9uZXQvdmlydGlvL3ZpcnRpb191c2VyX2V0aGRldi5jICAgICAgIHwgMjggKysrKysr KysrKysrKy0NCj4gIDMgZmlsZXMgY2hhbmdlZCwgNTAgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRp b25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvdmlydGlvL3ZpcnRpb191c2Vy L3ZpcnRpb191c2VyX2Rldi5jDQo+IGIvZHJpdmVycy9uZXQvdmlydGlvL3ZpcnRpb191c2VyL3Zp cnRpb191c2VyX2Rldi5jDQo+IGluZGV4IDJhMGM4NjEwODUuLmI3OWE5Zjg0YWEgMTAwNjQ0DQo+ IC0tLSBhL2RyaXZlcnMvbmV0L3ZpcnRpby92aXJ0aW9fdXNlci92aXJ0aW9fdXNlcl9kZXYuYw0K PiArKysgYi9kcml2ZXJzL25ldC92aXJ0aW8vdmlydGlvX3VzZXIvdmlydGlvX3VzZXJfZGV2LmMN Cj4gQEAgLTExMSwxNyArMTExLDYgQEAgdmlydGlvX3VzZXJfcXVldWVfc2V0dXAoc3RydWN0IHZp cnRpb191c2VyX2RldiAqZGV2LA0KPiAgCXJldHVybiAwOw0KPiAgfQ0KPiANCj4gLWludA0KPiAt aXNfdmhvc3RfdXNlcl9ieV90eXBlKGNvbnN0IGNoYXIgKnBhdGgpDQo+IC17DQo+IC0Jc3RydWN0 IHN0YXQgc2I7DQo+IC0NCj4gLQlpZiAoc3RhdChwYXRoLCAmc2IpID09IC0xKQ0KPiAtCQlyZXR1 cm4gMDsNCj4gLQ0KPiAtCXJldHVybiBTX0lTU09DSyhzYi5zdF9tb2RlKTsNCj4gLX0NCj4gLQ0K PiAgaW50DQo+ICB2aXJ0aW9fdXNlcl9zdGFydF9kZXZpY2Uoc3RydWN0IHZpcnRpb191c2VyX2Rl diAqZGV2KQ0KPiAgew0KPiBAQCAtMTQ0LDcgKzEzMyw4IEBAIHZpcnRpb191c2VyX3N0YXJ0X2Rl dmljZShzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2ICpkZXYpDQo+ICAJcnRlX21jZmdfbWVtX3JlYWRf bG9jaygpOw0KPiAgCXB0aHJlYWRfbXV0ZXhfbG9jaygmZGV2LT5tdXRleCk7DQo+IA0KPiAtCWlm IChpc192aG9zdF91c2VyX2J5X3R5cGUoZGV2LT5wYXRoKSAmJiBkZXYtPnZob3N0ZmQgPCAwKQ0K PiArCWlmIChkZXYtPmJhY2tlbmRfdHlwZSA9PSBWSVJUSU9fVVNFUl9CQUNLRU5EX1ZIT1NUX1VT RVIgJiYNCj4gKwkJCWRldi0+dmhvc3RmZCA8IDApDQo+ICAJCWdvdG8gZXJyb3I7DQo+IA0KPiAg CS8qIFN0ZXAgMDogdGVsbCB2aG9zdCB0byBjcmVhdGUgcXVldWVzICovDQo+IEBAIC0zNjAsMTYg KzM1MCwxNiBAQCB2aXJ0aW9fdXNlcl9kZXZfc2V0dXAoc3RydWN0IHZpcnRpb191c2VyX2RldiAq ZGV2KQ0KPiAgCWRldi0+dGFwZmRzID0gTlVMTDsNCj4gDQo+ICAJaWYgKGRldi0+aXNfc2VydmVy KSB7DQo+IC0JCWlmIChhY2Nlc3MoZGV2LT5wYXRoLCBGX09LKSA9PSAwICYmDQo+IC0JCSAgICAh aXNfdmhvc3RfdXNlcl9ieV90eXBlKGRldi0+cGF0aCkpIHsNCj4gLQkJCVBNRF9EUlZfTE9HKEVS UiwgIlNlcnZlciBtb2RlIGRvZXNuJ3Qgc3VwcG9ydCB2aG9zdC0NCj4ga2VybmVsISIpOw0KPiAr CQlpZiAoZGV2LT5iYWNrZW5kX3R5cGUgIT0gVklSVElPX1VTRVJfQkFDS0VORF9WSE9TVF9VU0VS KSB7DQo+ICsJCQlQTURfRFJWX0xPRyhFUlIsICJTZXJ2ZXIgbW9kZSBvbmx5IHN1cHBvcnRzIHZo b3N0LQ0KPiB1c2VyISIpOw0KPiAgCQkJcmV0dXJuIC0xOw0KPiAgCQl9DQo+ICAJCWRldi0+b3Bz ID0gJnZpcnRpb19vcHNfdXNlcjsNCj4gIAl9IGVsc2Ugew0KPiAtCQlpZiAoaXNfdmhvc3RfdXNl cl9ieV90eXBlKGRldi0+cGF0aCkpIHsNCj4gKwkJaWYgKGRldi0+YmFja2VuZF90eXBlID09IFZJ UlRJT19VU0VSX0JBQ0tFTkRfVkhPU1RfVVNFUikgew0KPiAgCQkJZGV2LT5vcHMgPSAmdmlydGlv X29wc191c2VyOw0KPiAtCQl9IGVsc2Ugew0KPiArCQl9IGVsc2UgaWYgKGRldi0+YmFja2VuZF90 eXBlID09DQo+ICsJCQkJCVZJUlRJT19VU0VSX0JBQ0tFTkRfVkhPU1RfS0VSTkVMKSB7DQo+ICAJ CQlkZXYtPm9wcyA9ICZ2aXJ0aW9fb3BzX2tlcm5lbDsNCj4gDQo+ICAJCQlkZXYtPnZob3N0ZmRz ID0gbWFsbG9jKGRldi0+bWF4X3F1ZXVlX3BhaXJzICoNCj4gQEAgLTQzMCw3ICs0MjAsOCBAQCB2 aXJ0aW9fdXNlcl9kZXZfc2V0dXAoc3RydWN0IHZpcnRpb191c2VyX2RldiAqZGV2KQ0KPiAgaW50 DQo+ICB2aXJ0aW9fdXNlcl9kZXZfaW5pdChzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2ICpkZXYsIGNo YXIgKnBhdGgsIGludCBxdWV1ZXMsDQo+ICAJCSAgICAgaW50IGNxLCBpbnQgcXVldWVfc2l6ZSwg Y29uc3QgY2hhciAqbWFjLCBjaGFyICoqaWZuYW1lLA0KPiAtCQkgICAgIGludCBzZXJ2ZXIsIGlu dCBtcmdfcnhidWYsIGludCBpbl9vcmRlciwgaW50IHBhY2tlZF92cSkNCj4gKwkJICAgICBpbnQg c2VydmVyLCBpbnQgbXJnX3J4YnVmLCBpbnQgaW5fb3JkZXIsIGludCBwYWNrZWRfdnEsDQo+ICsJ CSAgICAgZW51bSB2aXJ0aW9fdXNlcl9iYWNrZW5kX3R5cGUgYmFja2VuZF90eXBlKQ0KPiAgew0K PiAgCXVpbnQ2NF90IHByb3RvY29sX2ZlYXR1cmVzID0gMDsNCj4gDQo+IEBAIC00NDUsNiArNDM2 LDggQEAgdmlydGlvX3VzZXJfZGV2X2luaXQoc3RydWN0IHZpcnRpb191c2VyX2RldiAqZGV2LCBj aGFyDQo+ICpwYXRoLCBpbnQgcXVldWVzLA0KPiAgCWRldi0+ZnJvbnRlbmRfZmVhdHVyZXMgPSAw Ow0KPiAgCWRldi0+dW5zdXBwb3J0ZWRfZmVhdHVyZXMgPSB+VklSVElPX1VTRVJfU1VQUE9SVEVE X0ZFQVRVUkVTOw0KPiAgCWRldi0+cHJvdG9jb2xfZmVhdHVyZXMgPSBWSVJUSU9fVVNFUl9TVVBQ T1JURURfUFJPVE9DT0xfRkVBVFVSRVM7DQo+ICsJZGV2LT5iYWNrZW5kX3R5cGUgPSBiYWNrZW5k X3R5cGU7DQo+ICsNCj4gIAlwYXJzZV9tYWMoZGV2LCBtYWMpOw0KPiANCj4gIAlpZiAoKmlmbmFt ZSkgew0KPiBAQCAtNDU3LDcgKzQ1MCw3IEBAIHZpcnRpb191c2VyX2Rldl9pbml0KHN0cnVjdCB2 aXJ0aW9fdXNlcl9kZXYgKmRldiwgY2hhcg0KPiAqcGF0aCwgaW50IHF1ZXVlcywNCj4gIAkJcmV0 dXJuIC0xOw0KPiAgCX0NCj4gDQo+IC0JaWYgKCFpc192aG9zdF91c2VyX2J5X3R5cGUoZGV2LT5w YXRoKSkNCj4gKwlpZiAoZGV2LT5iYWNrZW5kX3R5cGUgIT0gVklSVElPX1VTRVJfQkFDS0VORF9W SE9TVF9VU0VSKQ0KPiAgCQlkZXYtPnVuc3VwcG9ydGVkX2ZlYXR1cmVzIHw9DQo+ICAJCQkoMVVM TCA8PCBWSE9TVF9VU0VSX0ZfUFJPVE9DT0xfRkVBVFVSRVMpOw0KPiANCj4gQEAgLTUzOSw3ICs1 MzIsNyBAQCB2aXJ0aW9fdXNlcl9kZXZfaW5pdChzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2ICpkZXYs IGNoYXINCj4gKnBhdGgsIGludCBxdWV1ZXMsDQo+ICAJfQ0KPiANCj4gIAkvKiBUaGUgYmFja2Vu ZCB3aWxsIG5vdCByZXBvcnQgdGhpcyBmZWF0dXJlLCB3ZSBhZGQgaXQgZXhwbGljaXRseSAqLw0K PiAtCWlmIChpc192aG9zdF91c2VyX2J5X3R5cGUoZGV2LT5wYXRoKSkNCj4gKwlpZiAoZGV2LT5i YWNrZW5kX3R5cGUgPT0gVklSVElPX1VTRVJfQkFDS0VORF9WSE9TVF9VU0VSKQ0KPiAgCQlkZXYt PmZyb250ZW5kX2ZlYXR1cmVzIHw9ICgxdWxsIDw8IFZJUlRJT19ORVRfRl9TVEFUVVMpOw0KPiAN Cj4gIAkvKg0KPiBAQCAtNzkyLDcgKzc4NSw3IEBAIHZpcnRpb191c2VyX3NlbmRfc3RhdHVzX3Vw ZGF0ZShzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2DQo+ICpkZXYsIHVpbnQ4X3Qgc3RhdHVzKQ0KPiAg CXVpbnQ2NF90IGFyZyA9IHN0YXR1czsNCj4gDQo+ICAJLyogVmhvc3QtdXNlciBvbmx5IGZvciBu b3cgKi8NCj4gLQlpZiAoIWlzX3Zob3N0X3VzZXJfYnlfdHlwZShkZXYtPnBhdGgpKQ0KPiArCWlm IChkZXYtPmJhY2tlbmRfdHlwZSAhPSBWSVJUSU9fVVNFUl9CQUNLRU5EX1ZIT1NUX1VTRVIpDQo+ ICAJCXJldHVybiAwOw0KPiANCj4gIAlpZiAoIShkZXYtPnByb3RvY29sX2ZlYXR1cmVzICYgKDFV TEwgPDwNCj4gVkhPU1RfVVNFUl9QUk9UT0NPTF9GX1NUQVRVUykpKQ0KPiBAQCAtODE1LDcgKzgw OCw3IEBAIHZpcnRpb191c2VyX3VwZGF0ZV9zdGF0dXMoc3RydWN0IHZpcnRpb191c2VyX2RldiAq ZGV2KQ0KPiAgCWludCBlcnI7DQo+IA0KPiAgCS8qIFZob3N0LXVzZXIgb25seSBmb3Igbm93ICov DQo+IC0JaWYgKCFpc192aG9zdF91c2VyX2J5X3R5cGUoZGV2LT5wYXRoKSkNCj4gKwlpZiAoZGV2 LT5iYWNrZW5kX3R5cGUgIT0gVklSVElPX1VTRVJfQkFDS0VORF9WSE9TVF9VU0VSKQ0KPiAgCQly ZXR1cm4gMDsNCj4gDQo+ICAJaWYgKCEoZGV2LT5wcm90b2NvbF9mZWF0dXJlcyAmICgxVUwgPDwN Cj4gVkhPU1RfVVNFUl9QUk9UT0NPTF9GX1NUQVRVUykpKQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9uZXQvdmlydGlvL3ZpcnRpb191c2VyL3ZpcnRpb191c2VyX2Rldi5oDQo+IGIvZHJpdmVycy9u ZXQvdmlydGlvL3ZpcnRpb191c2VyL3ZpcnRpb191c2VyX2Rldi5oDQo+IGluZGV4IDkzNzdkNWJh NjYuLjU3NWJmNDMwYzAgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvbmV0L3ZpcnRpby92aXJ0aW9f dXNlci92aXJ0aW9fdXNlcl9kZXYuaA0KPiArKysgYi9kcml2ZXJzL25ldC92aXJ0aW8vdmlydGlv X3VzZXIvdmlydGlvX3VzZXJfZGV2LmgNCj4gQEAgLTEwLDYgKzEwLDEyIEBADQo+ICAjaW5jbHVk ZSAiLi4vdmlydGlvX3BjaS5oIg0KPiAgI2luY2x1ZGUgIi4uL3ZpcnRpb19yaW5nLmgiDQo+IA0K PiArZW51bSB2aXJ0aW9fdXNlcl9iYWNrZW5kX3R5cGUgew0KPiArCVZJUlRJT19VU0VSX0JBQ0tF TkRfVU5LTk9XTiwNCj4gKwlWSVJUSU9fVVNFUl9CQUNLRU5EX1ZIT1NUX1VTRVIsDQo+ICsJVklS VElPX1VTRVJfQkFDS0VORF9WSE9TVF9LRVJORUwsDQo+ICt9Ow0KPiArDQo+ICBzdHJ1Y3Qgdmly dGlvX3VzZXJfcXVldWUgew0KPiAgCXVpbnQxNl90IHVzZWRfaWR4Ow0KPiAgCWJvb2wgYXZhaWxf d3JhcF9jb3VudGVyOw0KPiBAQCAtMTcsNiArMjMsNyBAQCBzdHJ1Y3QgdmlydGlvX3VzZXJfcXVl dWUgew0KPiAgfTsNCj4gDQo+ICBzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2IHsNCj4gKwllbnVtIHZp cnRpb191c2VyX2JhY2tlbmRfdHlwZSBiYWNrZW5kX3R5cGU7DQo+ICAJLyogZm9yIHZob3N0X3Vz ZXIgYmFja2VuZCAqLw0KPiAgCWludAkJdmhvc3RmZDsNCj4gIAlpbnQJCWxpc3RlbmZkOyAgIC8q IGxpc3RlbmluZyBmZCAqLw0KPiBAQCAtNjAsMTMgKzY3LDEzIEBAIHN0cnVjdCB2aXJ0aW9fdXNl cl9kZXYgew0KPiAgCWJvb2wJCXN0YXJ0ZWQ7DQo+ICB9Ow0KPiANCj4gLWludCBpc192aG9zdF91 c2VyX2J5X3R5cGUoY29uc3QgY2hhciAqcGF0aCk7DQo+ICBpbnQgdmlydGlvX3VzZXJfc3RhcnRf ZGV2aWNlKHN0cnVjdCB2aXJ0aW9fdXNlcl9kZXYgKmRldik7DQo+ICBpbnQgdmlydGlvX3VzZXJf c3RvcF9kZXZpY2Uoc3RydWN0IHZpcnRpb191c2VyX2RldiAqZGV2KTsNCj4gIGludCB2aXJ0aW9f dXNlcl9kZXZfaW5pdChzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2ICpkZXYsIGNoYXIgKnBhdGgsIGlu dA0KPiBxdWV1ZXMsDQo+ICAJCQkgaW50IGNxLCBpbnQgcXVldWVfc2l6ZSwgY29uc3QgY2hhciAq bWFjLCBjaGFyICoqaWZuYW1lLA0KPiAgCQkJIGludCBzZXJ2ZXIsIGludCBtcmdfcnhidWYsIGlu dCBpbl9vcmRlciwNCj4gLQkJCSBpbnQgcGFja2VkX3ZxKTsNCj4gKwkJCSBpbnQgcGFja2VkX3Zx LA0KPiArCQkJIGVudW0gdmlydGlvX3VzZXJfYmFja2VuZF90eXBlIGJhY2tlbmRfdHlwZSk7DQo+ ICB2b2lkIHZpcnRpb191c2VyX2Rldl91bmluaXQoc3RydWN0IHZpcnRpb191c2VyX2RldiAqZGV2 KTsNCj4gIHZvaWQgdmlydGlvX3VzZXJfaGFuZGxlX2NxKHN0cnVjdCB2aXJ0aW9fdXNlcl9kZXYg KmRldiwgdWludDE2X3QNCj4gcXVldWVfaWR4KTsNCj4gIHZvaWQgdmlydGlvX3VzZXJfaGFuZGxl X2NxX3BhY2tlZChzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2ICpkZXYsDQo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL25ldC92aXJ0aW8vdmlydGlvX3VzZXJfZXRoZGV2LmMNCj4gYi9kcml2ZXJzL25ldC92 aXJ0aW8vdmlydGlvX3VzZXJfZXRoZGV2LmMNCj4gaW5kZXggNjBkMTdhZjg4OC4uMzhiNDliYWQ1 ZiAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvdmlydGlvL3ZpcnRpb191c2VyX2V0aGRldi5j DQo+ICsrKyBiL2RyaXZlcnMvbmV0L3ZpcnRpby92aXJ0aW9fdXNlcl9ldGhkZXYuYw0KPiBAQCAt Niw2ICs2LDcgQEANCj4gICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4NCj4gICNpbmNsdWRlIDx1bmlz dGQuaD4NCj4gICNpbmNsdWRlIDxmY250bC5oPg0KPiArI2luY2x1ZGUgPHN5cy9zdGF0Lmg+DQo+ ICAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KPiANCj4gICNpbmNsdWRlIDxydGVfbWFsbG9jLmg+ DQo+IEBAIC01MTgsNiArNTE5LDE5IEBAIGdldF9pbnRlZ2VyX2FyZyhjb25zdCBjaGFyICprZXkg X19ydGVfdW51c2VkLA0KPiAgCXJldHVybiAtZXJybm87DQo+ICB9DQo+IA0KPiArc3RhdGljIGVu dW0gdmlydGlvX3VzZXJfYmFja2VuZF90eXBlDQo+ICt2aXJ0aW9fdXNlcl9iYWNrZW5kX3R5cGUo Y29uc3QgY2hhciAqcGF0aCkNCj4gK3sNCj4gKwlzdHJ1Y3Qgc3RhdCBzYjsNCj4gKw0KPiArCWlm IChzdGF0KHBhdGgsICZzYikgPT0gLTEpDQo+ICsJCXJldHVybiBWSVJUSU9fVVNFUl9CQUNLRU5E X1VOS05PV047DQo+ICsNCj4gKwlyZXR1cm4gU19JU1NPQ0soc2Iuc3RfbW9kZSkgPw0KPiArCQlW SVJUSU9fVVNFUl9CQUNLRU5EX1ZIT1NUX1VTRVIgOg0KPiArCQlWSVJUSU9fVVNFUl9CQUNLRU5E X1ZIT1NUX0tFUk5FTDsNCj4gK30NCj4gKw0KPiAgc3RhdGljIHN0cnVjdCBydGVfZXRoX2RldiAq DQo+ICB2aXJ0aW9fdXNlcl9ldGhfZGV2X2FsbG9jKHN0cnVjdCBydGVfdmRldl9kZXZpY2UgKnZk ZXYpDQo+ICB7DQo+IEBAIC01NzksNiArNTkzLDcgQEAgdmlydGlvX3VzZXJfcG1kX3Byb2JlKHN0 cnVjdCBydGVfdmRldl9kZXZpY2UgKmRldikNCj4gIAlzdHJ1Y3QgcnRlX2t2YXJncyAqa3ZsaXN0 ID0gTlVMTDsNCj4gIAlzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXY7DQo+ICAJc3RydWN0IHZp cnRpb19odyAqaHc7DQo+ICsJZW51bSB2aXJ0aW9fdXNlcl9iYWNrZW5kX3R5cGUgYmFja2VuZF90 eXBlID0NCj4gVklSVElPX1VTRVJfQkFDS0VORF9VTktOT1dOOw0KPiAgCXVpbnQ2NF90IHF1ZXVl cyA9IFZJUlRJT19VU0VSX0RFRl9RX05VTTsNCj4gIAl1aW50NjRfdCBjcSA9IFZJUlRJT19VU0VS X0RFRl9DUV9FTjsNCj4gIAl1aW50NjRfdCBxdWV1ZV9zaXplID0gVklSVElPX1VTRVJfREVGX1Ff U1o7DQo+IEBAIC02MzEsOCArNjQ2LDE3IEBAIHZpcnRpb191c2VyX3BtZF9wcm9iZShzdHJ1Y3Qg cnRlX3ZkZXZfZGV2aWNlICpkZXYpDQo+ICAJCWdvdG8gZW5kOw0KPiAgCX0NCj4gDQo+ICsJYmFj a2VuZF90eXBlID0gdmlydGlvX3VzZXJfYmFja2VuZF90eXBlKHBhdGgpOw0KPiArCWlmIChiYWNr ZW5kX3R5cGUgPT0gVklSVElPX1VTRVJfQkFDS0VORF9VTktOT1dOKSB7DQo+ICsJCVBNRF9JTklU X0xPRyhFUlIsDQo+ICsJCQkgICAgICJ1bmFibGUgdG8gZGV0ZXJtaW5lIGJhY2tlbmQgdHlwZSBm b3IgcGF0aCAlcyIsDQo+ICsJCQlwYXRoKTsNCj4gKwkJZ290byBlbmQ7DQo+ICsJfQ0KPiArDQo+ ICsNCj4gIAlpZiAocnRlX2t2YXJnc19jb3VudChrdmxpc3QsIFZJUlRJT19VU0VSX0FSR19JTlRF UkZBQ0VfTkFNRSkgPT0gMSkgew0KPiAtCQlpZiAoaXNfdmhvc3RfdXNlcl9ieV90eXBlKHBhdGgp KSB7DQo+ICsJCWlmIChiYWNrZW5kX3R5cGUgIT0gVklSVElPX1VTRVJfQkFDS0VORF9WSE9TVF9L RVJORUwpIHsNCj4gIAkJCVBNRF9JTklUX0xPRyhFUlIsDQo+ICAJCQkJImFyZyAlcyBhcHBsaWVz IG9ubHkgdG8gdmhvc3Qta2VybmVsIGJhY2tlbmQiLA0KPiAgCQkJCVZJUlRJT19VU0VSX0FSR19J TlRFUkZBQ0VfTkFNRSk7DQo+IEBAIC03NTEsNyArNzc1LDcgQEAgdmlydGlvX3VzZXJfcG1kX3By b2JlKHN0cnVjdCBydGVfdmRldl9kZXZpY2UgKmRldikNCj4gIAlodyA9IGV0aF9kZXYtPmRhdGEt PmRldl9wcml2YXRlOw0KPiAgCWlmICh2aXJ0aW9fdXNlcl9kZXZfaW5pdChody0+dmlydGlvX3Vz ZXJfZGV2LCBwYXRoLCBxdWV1ZXMsIGNxLA0KPiAgCQkJIHF1ZXVlX3NpemUsIG1hY19hZGRyLCAm aWZuYW1lLCBzZXJ2ZXJfbW9kZSwNCj4gLQkJCSBtcmdfcnhidWYsIGluX29yZGVyLCBwYWNrZWRf dnEpIDwgMCkgew0KPiArCQkJIG1yZ19yeGJ1ZiwgaW5fb3JkZXIsIHBhY2tlZF92cSwgYmFja2Vu ZF90eXBlKSA8IDApIHsNCj4gIAkJUE1EX0lOSVRfTE9HKEVSUiwgInZpcnRpb191c2VyX2Rldl9p bml0IGZhaWxzIik7DQo+ICAJCXZpcnRpb191c2VyX2V0aF9kZXZfZnJlZShldGhfZGV2KTsNCj4g IAkJZ290byBlbmQ7DQo+IC0tDQo+IDIuMjYuMg0KDQpSZXZpZXdlZC1ieTogQ2hlbmJvIFhpYSA8 Y2hlbmJvLnhpYUBpbnRlbC5jb20+DQo=