From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 14973A0096 for ; Fri, 12 Apr 2019 20:14:06 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DA80A5F36; Fri, 12 Apr 2019 20:14:03 +0200 (CEST) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-eopbgr800048.outbound.protection.outlook.com [40.107.80.48]) by dpdk.org (Postfix) with ESMTP id ED6A85F34 for ; Fri, 12 Apr 2019 20:14:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vmware.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ljaYRBXULuM6Rg69lJ7P0UJ4RdkGMpJzaurO5/vx+7I=; b=G1wr5T9QCCKyOT9V3PPnQq7+wS8hFdglfTncCYCgUSISjZfMk1aW0udi2woVqWxroD+j1HVBXuie6BWhdHibB/QfYfpL1y+yaynIYQBWAjdKHQ1oWJ07j+jMPYjUWYPuWELZ6ey+UDhN3IXpUSA5SkWON8q0A/3Sw9H2R0rfyHg= Received: from CO2PR0501MB1048.namprd05.prod.outlook.com (10.160.7.147) by CO2PR0501MB1047.namprd05.prod.outlook.com (10.160.7.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1813.3; Fri, 12 Apr 2019 18:13:58 +0000 Received: from CO2PR0501MB1048.namprd05.prod.outlook.com ([fe80::7848:6426:9480:11d9]) by CO2PR0501MB1048.namprd05.prod.outlook.com ([fe80::7848:6426:9480:11d9%6]) with mapi id 15.20.1792.009; Fri, 12 Apr 2019 18:13:58 +0000 From: Yong Wang To: Eduard Serra Miralles CC: "dev@dpdk.org" Thread-Topic: [PATCH] net/vmxnet3: v4 boot and guest UDP RSS configuration Thread-Index: AQHU8CFFyCMOtxzfeUqUo5yiSA39L6Y4YV4A Date: Fri, 12 Apr 2019 18:13:58 +0000 Message-ID: References: <1554957873-12549-1-git-send-email-eserra@vmware.com> In-Reply-To: <1554957873-12549-1-git-send-email-eserra@vmware.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/10.18.0.190403 authentication-results: spf=none (sender IP is ) smtp.mailfrom=yongwang@vmware.com; x-originating-ip: [66.170.99.1] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5ded7270-62c1-4e74-bab8-08d6bf72a225 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(2017052603328)(7193020); SRVR:CO2PR0501MB1047; x-ms-traffictypediagnostic: CO2PR0501MB1047: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(39860400002)(366004)(346002)(376002)(136003)(13464003)(189003)(199004)(71200400001)(105586002)(37006003)(2616005)(53546011)(6636002)(4326008)(81156014)(486006)(83716004)(8676002)(6506007)(11346002)(8936002)(478600001)(186003)(6862004)(476003)(99286004)(25786009)(68736007)(6436002)(14454004)(256004)(53936002)(102836004)(71190400001)(76176011)(6246003)(5660300002)(14444005)(229853002)(6486002)(305945005)(7736002)(446003)(81166006)(2906002)(6116002)(97736004)(106356001)(33656002)(6512007)(26005)(316002)(58126008)(66066001)(3846002)(82746002)(36756003)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:CO2PR0501MB1047; H:CO2PR0501MB1048.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: vmware.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: IdR39qDGAmmVuBruIzjm7rCr2l4rAuUPWCimOEFMpQY+IaQQhc+0UK1xlLafoRvAiRMaYe39eUdSeb7qGExco6R2DcGGi7suaMhrXcuYEadz4acPLycvLmYWV7iESIMOQ8ViZhedXVPK7xicHeUhi6yEER+relkhpcdRYCFAgufCza8kc1FWnkMYUBl3fcmJXUmg+hK3RbfMPbpUQiCqcwjegTI0Z5bjc0eUrW6zLQiLeR+WsBm4M3tNdDtiu6Deha7GwGB1ov51CSHnePeb9XMAUAxlaMysddefRtEyV9/eiGV+eO53PCydcDCw696aSQb5bWvjhqQYYKnn0S+F4T3AkAnN22Ok/pvVwxWCXZfb1Xscg6d3Tv3B83HlEeTT2qzzg4/tHRIdGuASuvTtom99+B/QfCC3rvVGuuSGkv4= Content-Type: text/plain; charset="UTF-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: vmware.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5ded7270-62c1-4e74-bab8-08d6bf72a225 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 18:13:58.5231 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR0501MB1047 Subject: Re: [dpdk-dev] [PATCH] net/vmxnet3: v4 boot and guest UDP RSS configuration 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" Message-ID: <20190412181358.RZhgftvJA-_jGwR9_ibRMKSNqKWv39uQCAG_Y9w5KAg@z> LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IEVkdWFyZCBTZXJyYSBNaXJhbGxlcyA8 ZXNlcnJhQHZtd2FyZS5jb20+DQpEYXRlOiBXZWRuZXNkYXksIEFwcmlsIDEwLCAyMDE5IGF0IDk6 NDQgUE0NClRvOiBZb25nIFdhbmcgPHlvbmd3YW5nQHZtd2FyZS5jb20+DQpDYzogImRldkBkcGRr Lm9yZyIgPGRldkBkcGRrLm9yZz4sIEVkdWFyZCBTZXJyYSBNaXJhbGxlcyA8ZXNlcnJhQHZtd2Fy ZS5jb20+DQpTdWJqZWN0OiBbUEFUQ0hdIG5ldC92bXhuZXQzOiB2NCBib290IGFuZCBndWVzdCBV RFAgUlNTIGNvbmZpZ3VyYXRpb24NCg0KICAgIEZyb206IEVkdWFyZCBTZXJyYSA8ZXNlcnJhQHZt d2FyZS5jb20+DQogICAgDQogICAgVGhpcyBwYXRjaCBpbnRyb2R1Y2VzOg0KICAgIC0gVk14bmV0 MyB2NCBuZWdvdGlhdGlvbiBhbmQsDQogICAgLSBlbnRpcmVseSBndWVzdC1kcml2ZW4gVURQIFJT UyBzdXBwb3J0Lg0KICAgIA0KICAgIFZNeG5ldDMgdjMgYWxyZWFkeSBoYXMgVURQIFJTUyBzdXBw b3J0LCBob3dldmVyIGl0DQogICAgZGVwZW5kcyBvbiBoeXBlcnZpc29yIHByb3Zpc2lvbmluZyBv biB0aGUgVk0gdGhyb3VnaA0KICAgIEVTWCBzcGVjaWZpYyBmbGFncywgd2hpY2ggYXJlIG5vdCB0 cmFuc3BhcmVudCBvciBrbm93bg0KICAgIHRvIHRoZSBndWVzdCBsYXRlciBvbi4NCiAgICANCiAg ICBWbXhuZXQzIHY0IGludHJvZHVjZXMgYSBuZXcgQVBJIHRyYW5zYWN0aW9uIHdoaWNoIGFsbG93 cw0KICAgIGNvbmZpZ3VyaW5nIFJTUyBlbnRpcmVseSBmcm9tIHRoZSBndWVzdC4gVGhpcyBBUEkg bXVzdCBiZQ0KICAgIGludm9rZWQgYWZ0ZXIgZGV2aWNlIHNoYXJlZCBtZW0gcmVnaW9uIGluaXQu DQogICAgDQogICAgSVB2NCBFU1AgUlNTIChTUEkgYmFzZWQpIGlzIGFsc28gYXZhaWxhYmxlLCBi dXQgY3VycmVudGx5DQogICAgdGhlcmUgYXJlIG5vIEVTUCBSU1MgZGVmaW5pdGlvbnMgb24gcnRl X2V0aCBsYXllciB0bw0KICAgIGhhbmRsZSB0aGF0Lg0KICAgIA0KICAgIFNpZ25lZC1vZmYtYnk6 IEVkdWFyZCBTZXJyYSA8ZXNlcnJhQHZtd2FyZS5jb20+DQogICAgLS0tDQoNCkFja2VkLWJ5OiBZ b25nIFdhbmcgPHlvbmd3YW5nQHZtd2FyZS5jb20+DQoNCk9uZSBjb21tZW50IGJlbG93Lg0KDQog ICAgIGRyaXZlcnMvbmV0L3ZteG5ldDMvdm14bmV0M19ldGhkZXYuYyB8IDIxICsrKysrKysrKysr KysrKysrLQ0KICAgICBkcml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNfZXRoZGV2LmggfCAgOCAr KysrKysrDQogICAgIGRyaXZlcnMvbmV0L3ZteG5ldDMvdm14bmV0M19yeHR4LmMgICB8IDQxICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KICAgICAzIGZpbGVzIGNoYW5nZWQs IDY5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCiAgICANCiAgICBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9uZXQvdm14bmV0My92bXhuZXQzX2V0aGRldi5jIGIvZHJpdmVycy9uZXQvdm14bmV0 My92bXhuZXQzX2V0aGRldi5jDQogICAgaW5kZXggOTNlNWRlOS4uODQ2ZDdmZCAxMDA2NDQNCiAg ICAtLS0gYS9kcml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNfZXRoZGV2LmMNCiAgICArKysgYi9k cml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNfZXRoZGV2LmMNCiAgICBAQCAtMjY2LDcgKzI2Niwx MSBAQCBldGhfdm14bmV0M19kZXZfaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpDQog ICAgIAl2ZXIgPSBWTVhORVQzX1JFQURfQkFSMV9SRUcoaHcsIFZNWE5FVDNfUkVHX1ZSUlMpOw0K ICAgICAJUE1EX0lOSVRfTE9HKERFQlVHLCAiSGFyZHdhcmUgdmVyc2lvbiA6ICVkIiwgdmVyKTsN CiAgICAgDQogICAgLQlpZiAodmVyICYgKDEgPDwgVk1YTkVUM19SRVZfMykpIHsNCiAgICArCWlm ICh2ZXIgJiAoMSA8PCBWTVhORVQzX1JFVl80KSkgew0KICAgICsJCVZNWE5FVDNfV1JJVEVfQkFS MV9SRUcoaHcsIFZNWE5FVDNfUkVHX1ZSUlMsDQogICAgKwkJCQkgICAgICAgMSA8PCBWTVhORVQz X1JFVl80KTsNCiAgICArCQlody0+dmVyc2lvbiA9IFZNWE5FVDNfUkVWXzQgKyAxOw0KICAgICsJ fSBlbHNlIGlmICh2ZXIgJiAoMSA8PCBWTVhORVQzX1JFVl8zKSkgew0KICAgICAJCVZNWE5FVDNf V1JJVEVfQkFSMV9SRUcoaHcsIFZNWE5FVDNfUkVHX1ZSUlMsDQogICAgIAkJCQkgICAgICAgMSA8 PCBWTVhORVQzX1JFVl8zKTsNCiAgICAgCQlody0+dmVyc2lvbiA9IFZNWE5FVDNfUkVWXzMgKyAx Ow0KICAgIEBAIC03NjQsNiArNzY4LDE1IEBAIHZteG5ldDNfZGV2X3N0YXJ0KHN0cnVjdCBydGVf ZXRoX2RldiAqZGV2KQ0KICAgICAJCVBNRF9JTklUX0xPRyhERUJVRywgIkZhaWxlZCB0byBzZXR1 cCBtZW1vcnkgcmVnaW9uXG4iKTsNCiAgICAgCX0NCiAgICAgDQogICAgKwlpZiAoVk1YTkVUM19W RVJTSU9OX0dFXzQoaHcpKSB7DQogICAgKwkJLyogQ2hlY2sgZm9yIGFkZGl0aW9uYWwgUlNTICAq Lw0KICAgICsJCXJldCA9IHZteG5ldDNfdjRfcnNzX2NvbmZpZ3VyZShkZXYpOw0KICAgICsJCWlm IChyZXQgIT0gVk1YTkVUM19TVUNDRVNTKSB7DQogICAgKwkJCVBNRF9JTklUX0xPRyhFUlIsICJG YWlsZWQgdG8gY29uZmlndXJlIHY0IFJTUyIpOw0KICAgICsJCQlyZXR1cm4gcmV0Ow0KICAgICsJ CX0NCiAgICArCX0NCiAgICArDQogICAgIAkvKiBEaXNhYmxlIGludGVycnVwdHMgKi8NCiAgICAg CXZteG5ldDNfZGlzYWJsZV9pbnRyKGh3KTsNCiAgICAgDQogICAgQEAgLTExNDEsNiArMTE1NCw4 IEBAIHN0YXRpYyB2b2lkDQogICAgIHZteG5ldDNfZGV2X2luZm9fZ2V0KHN0cnVjdCBydGVfZXRo X2RldiAqZGV2IF9fcnRlX3VudXNlZCwNCiAgICAgCQkgICAgIHN0cnVjdCBydGVfZXRoX2Rldl9p bmZvICpkZXZfaW5mbykNCiAgICAgew0KICAgICsJc3RydWN0IHZteG5ldDNfaHcgKmh3ID0gZGV2 LT5kYXRhLT5kZXZfcHJpdmF0ZTsNCiAgICArDQogICAgIAlkZXZfaW5mby0+bWF4X3J4X3F1ZXVl cyA9IFZNWE5FVDNfTUFYX1JYX1FVRVVFUzsNCiAgICAgCWRldl9pbmZvLT5tYXhfdHhfcXVldWVz ID0gVk1YTkVUM19NQVhfVFhfUVVFVUVTOw0KICAgICAJZGV2X2luZm8tPm1pbl9yeF9idWZzaXpl ID0gMTUxOCArIFJURV9QS1RNQlVGX0hFQURST09NOw0KICAgIEBAIC0xMTUwLDYgKzExNjUsMTAg QEAgdm14bmV0M19kZXZfaW5mb19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYgX19ydGVfdW51 c2VkLA0KICAgICANCiAgICAgCWRldl9pbmZvLT5mbG93X3R5cGVfcnNzX29mZmxvYWRzID0gVk1Y TkVUM19SU1NfT0ZGTE9BRF9BTEw7DQogICAgIA0KICAgICsJaWYgKFZNWE5FVDNfVkVSU0lPTl9H RV80KGh3KSkgew0KICAgICsJCWRldl9pbmZvLT5mbG93X3R5cGVfcnNzX29mZmxvYWRzIHw9IFZN WE5FVDNfVjRfUlNTX01BU0s7DQogICAgKwl9DQogICAgKw0KICAgICAJZGV2X2luZm8tPnJ4X2Rl c2NfbGltID0gKHN0cnVjdCBydGVfZXRoX2Rlc2NfbGltKSB7DQogICAgIAkJLm5iX21heCA9IFZN WE5FVDNfUlhfUklOR19NQVhfU0laRSwNCiAgICAgCQkubmJfbWluID0gVk1YTkVUM19ERUZfUlhf UklOR19TSVpFLA0KICAgIGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNf ZXRoZGV2LmggYi9kcml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNfZXRoZGV2LmgNCiAgICBpbmRl eCA1YmMzYTg0Li4zMTlkNzM5IDEwMDY0NA0KICAgIC0tLSBhL2RyaXZlcnMvbmV0L3ZteG5ldDMv dm14bmV0M19ldGhkZXYuaA0KICAgICsrKyBiL2RyaXZlcnMvbmV0L3ZteG5ldDMvdm14bmV0M19l dGhkZXYuaA0KICAgIEBAIC0zNCw2ICszNCwxMCBAQA0KICAgICAJRVRIX1JTU19JUFY2IHwgXA0K ICAgICAJRVRIX1JTU19OT05GUkFHX0lQVjZfVENQKQ0KICAgICANCiAgICArI2RlZmluZSBWTVhO RVQzX1Y0X1JTU19NQVNLICggXA0KICAgICsJRVRIX1JTU19OT05GUkFHX0lQVjRfVURQIHwgXA0K ICAgICsJRVRIX1JTU19OT05GUkFHX0lQVjZfVURQKQ0KICAgICsNCiAgICAgLyogUlNTIGNvbmZp Z3VyYXRpb24gc3RydWN0dXJlIC0gc2hhcmVkIHdpdGggZGV2aWNlIHRocm91Z2ggR1BBICovDQog ICAgIHR5cGVkZWYgc3RydWN0IFZNWE5FVDNfUlNTQ29uZiB7DQogICAgIAl1aW50MTZfdCAgIGhh c2hUeXBlOw0KICAgIEBAIC0xMDMsMTAgKzEwNywxMiBAQCBzdHJ1Y3Qgdm14bmV0M19odyB7DQog ICAgIAlVUFQxX1J4U3RhdHMgICAgICAgICAgc25hcHNob3Rfcnhfc3RhdHNbVk1YTkVUM19NQVhf UlhfUVVFVUVTXTsNCiAgICAgfTsNCiAgICAgDQogICAgKyNkZWZpbmUgVk1YTkVUM19SRVZfNAkJ MwkJLyogVm14bmV0MyBSZXYuIDQgKi8NCiAgICAgI2RlZmluZSBWTVhORVQzX1JFVl8zCQkyCQkv KiBWbXhuZXQzIFJldi4gMyAqLw0KICAgICAjZGVmaW5lIFZNWE5FVDNfUkVWXzIJCTEJCS8qIFZt eG5ldDMgUmV2LiAyICovDQogICAgICNkZWZpbmUgVk1YTkVUM19SRVZfMQkJMAkJLyogVm14bmV0 MyBSZXYuIDEgKi8NCiAgICAgDQogICAgKyNkZWZpbmUgVk1YTkVUM19WRVJTSU9OX0dFXzQoaHcp ICgoaHcpLT52ZXJzaW9uID49IFZNWE5FVDNfUkVWXzQgKyAxKQ0KICAgICAjZGVmaW5lIFZNWE5F VDNfVkVSU0lPTl9HRV8zKGh3KSAoKGh3KS0+dmVyc2lvbiA+PSBWTVhORVQzX1JFVl8zICsgMSkN CiAgICAgI2RlZmluZSBWTVhORVQzX1ZFUlNJT05fR0VfMihodykgKChodyktPnZlcnNpb24gPj0g Vk1YTkVUM19SRVZfMiArIDEpDQogICAgIA0KICAgIEBAIC0xNjIsNiArMTY4LDggQEAgdm9pZCB2 bXhuZXQzX2Rldl9jbGVhcl9xdWV1ZXMoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpOw0KICAgICB2 b2lkIHZteG5ldDNfZGV2X3J4X3F1ZXVlX3JlbGVhc2Uodm9pZCAqcnhxKTsNCiAgICAgdm9pZCB2 bXhuZXQzX2Rldl90eF9xdWV1ZV9yZWxlYXNlKHZvaWQgKnR4cSk7DQogICAgIA0KICAgICtpbnQg dm14bmV0M192NF9yc3NfY29uZmlndXJlKHN0cnVjdCBydGVfZXRoX2RldiAqZGV2KTsNCiAgICAr DQogICAgIGludCAgdm14bmV0M19kZXZfcnhfcXVldWVfc2V0dXAoc3RydWN0IHJ0ZV9ldGhfZGV2 ICpkZXYsIHVpbnQxNl90IHJ4X3F1ZXVlX2lkLA0KICAgICAJCQkJdWludDE2X3QgbmJfcnhfZGVz YywgdW5zaWduZWQgaW50IHNvY2tldF9pZCwNCiAgICAgCQkJCWNvbnN0IHN0cnVjdCBydGVfZXRo X3J4Y29uZiAqcnhfY29uZiwNCiAgICBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvdm14bmV0My92 bXhuZXQzX3J4dHguYyBiL2RyaXZlcnMvbmV0L3ZteG5ldDMvdm14bmV0M19yeHR4LmMNCiAgICBp bmRleCBkMzA5MTRhLi45ZDgwNjQ2IDEwMDY0NA0KICAgIC0tLSBhL2RyaXZlcnMvbmV0L3ZteG5l dDMvdm14bmV0M19yeHR4LmMNCiAgICArKysgYi9kcml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNf cnh0eC5jDQogICAgQEAgLTEyOTIsNiArMTI5Miw0NyBAQCBzdGF0aWMgdWludDhfdCByc3NfaW50 ZWxfa2V5WzQwXSA9IHsNCiAgICAgfTsNCiAgICAgDQogICAgIC8qDQogICAgKyAqIEFkZGl0aW9u YWwgUlNTIGNvbmZpZ3VyYXRpb25zIGJhc2VkIG9uIHZteG5ldCB2NCsgQVBJcw0KICAgICsgKi8N CiAgICAraW50DQogICAgK3ZteG5ldDNfdjRfcnNzX2NvbmZpZ3VyZShzdHJ1Y3QgcnRlX2V0aF9k ZXYgKmRldikNCiAgICArew0KICAgICsJc3RydWN0IHZteG5ldDNfaHcgKmh3ID0gZGV2LT5kYXRh LT5kZXZfcHJpdmF0ZTsNCiAgICArCVZteG5ldDNfRHJpdmVyU2hhcmVkICpzaGFyZWQgPSBody0+ c2hhcmVkOw0KICAgICsJVm14bmV0M19DbWRJbmZvICpjbWRJbmZvID0gJnNoYXJlZC0+Y3UuY21k SW5mbzsNCiAgICArCXN0cnVjdCBydGVfZXRoX3Jzc19jb25mICpwb3J0X3Jzc19jb25mOw0KICAg ICsJdWludDY0X3QgcnNzX2hmOw0KICAgICsJdWludDMyX3QgcmV0Ow0KICAgICsNCiAgICArCVBN RF9JTklUX0ZVTkNfVFJBQ0UoKTsNCiAgICArDQogICAgKwljbWRJbmZvLT5zZXRSU1NGaWVsZHMg PSAwOw0KICAgICsgICAgICAgIHBvcnRfcnNzX2NvbmYgPSAmZGV2LT5kYXRhLT5kZXZfY29uZi5y eF9hZHZfY29uZi5yc3NfY29uZjsNCiAgICArCXJzc19oZiA9IHBvcnRfcnNzX2NvbmYtPnJzc19o ZiAmDQogICAgKwkJKFZNWE5FVDNfVjRfUlNTX01BU0sgfCBWTVhORVQzX1JTU19PRkZMT0FEX0FM TCk7DQogICAgKw0KICAgICsJaWYgKHJzc19oZiAmIEVUSF9SU1NfTk9ORlJBR19JUFY0X1RDUCkN CiAgICArCQljbWRJbmZvLT5zZXRSU1NGaWVsZHMgfD0gVk1YTkVUM19SU1NfRklFTERTX1RDUElQ NDsNCiAgICArCWlmIChyc3NfaGYgJiBFVEhfUlNTX05PTkZSQUdfSVBWNl9UQ1ApDQogICAgKwkJ Y21kSW5mby0+c2V0UlNTRmllbGRzIHw9IFZNWE5FVDNfUlNTX0ZJRUxEU19UQ1BJUDY7DQogICAg KwlpZiAocnNzX2hmICYgRVRIX1JTU19OT05GUkFHX0lQVjRfVURQKQ0KICAgICsJCWNtZEluZm8t PnNldFJTU0ZpZWxkcyB8PSBWTVhORVQzX1JTU19GSUVMRFNfVURQSVA0Ow0KICAgICsJaWYgKHJz c19oZiAmIEVUSF9SU1NfTk9ORlJBR19JUFY2X1VEUCkNCiAgICArCQljbWRJbmZvLT5zZXRSU1NG aWVsZHMgfD0gVk1YTkVUM19SU1NfRklFTERTX1VEUElQNjsNCiAgICArCS8qIFRPRE86IEVTUCBS U1MgaXMgY3VycmVudGx5IG5vdCBkZWZpbmUgaW4gcnRlX2V0aCBsYXllciAqLw0KDQpMZXQncyBq dXN0IHJlbW92ZSB0aGlzIGFzIGl0IGhhcyBub3RoaW5nIHRvIGRvIHdpdGggdGhpcyBjaGFuZ2Uu DQoNCiAgICArDQogICAgKwlWTVhORVQzX1dSSVRFX0JBUjFfUkVHKGh3LCBWTVhORVQzX1JFR19D TUQsDQogICAgKwkJCSAgICAgICBWTVhORVQzX0NNRF9TRVRfUlNTX0ZJRUxEUyk7DQogICAgKwly ZXQgPSBWTVhORVQzX1JFQURfQkFSMV9SRUcoaHcsIFZNWE5FVDNfUkVHX0NNRCk7DQogICAgKw0K ICAgICsJaWYgKHJldCAhPSBWTVhORVQzX1NVQ0NFU1MpIHsNCiAgICArCQlQTURfRFJWX0xPRyhF UlIsICJTZXQgUlNTIGZpZWxkcyAodjQpIGZhaWxlZDogJWQiLCByZXQpOw0KICAgICsJfQ0KICAg ICsNCiAgICArCXJldHVybiByZXQ7DQogICAgK30NCiAgICArDQogICAgKy8qDQogICAgICAqIENv bmZpZ3VyZSBSU1MgZmVhdHVyZQ0KICAgICAgKi8NCiAgICAgaW50DQogICAgLS0gDQogICAgMi43 LjQNCiAgICANCiAgICANCg0K