From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <llouis@vmware.com>
Received: from NAM04-SN1-obe.outbound.protection.outlook.com
 (mail-eopbgr700078.outbound.protection.outlook.com [40.107.70.78])
 by dpdk.org (Postfix) with ESMTP id 24A4BF04
 for <dev@dpdk.org>; Tue, 18 Sep 2018 20:49:02 +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=LpedOsM8w+QGMfr7E7+2r/CaBNM9af4PfzkagzXzkXU=;
 b=Ncw0JOH8NT52EpPR08VvIHWwzPkvg32HKYskAfbiibWDY2ThBYeyycb7DJy1e6zoyIvh48guAFjc9Oyr0Bnr3JxJtIGhC0hFa2S7AAts5XMvwekNOCp0p6dPlaLMQ+Nc88F2CYd4iKqy+xEfTi+u82LXN1F0HJuYYNzzVSbESoE=
Received: from MWHPR05MB2909.namprd05.prod.outlook.com (10.168.245.143) by
 MWHPR05MB3359.namprd05.prod.outlook.com (10.174.175.144) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.1164.15; Tue, 18 Sep 2018 18:48:59 +0000
Received: from MWHPR05MB2909.namprd05.prod.outlook.com
 ([fe80::cdeb:e0c:ec43:f6cb]) by MWHPR05MB2909.namprd05.prod.outlook.com
 ([fe80::cdeb:e0c:ec43:f6cb%9]) with mapi id 15.20.1164.014; Tue, 18 Sep 2018
 18:48:59 +0000
From: Louis Luo <llouis@vmware.com>
To: Luca Boccassi <bluca@debian.org>, "dev@dpdk.org" <dev@dpdk.org>
CC: "brussell@vyatta.att-mail.com" <brussell@vyatta.att-mail.com>
Thread-Topic: [dpdk-dev] [PATCH 2/3] net/vmxnet3: fix vmxnet3 dev_uninit()
 hot-unplug
Thread-Index: AQHUTrmKmR09nNmlxUu+Ow3Bk4aDOqT2BboA///ebICAAHmHgP//kAoA
Date: Tue, 18 Sep 2018 18:48:59 +0000
Message-ID: <521E14D3-C661-48CA-A19A-4B8D82A55D71@vmware.com>
References: <20180816135032.28283-1-bluca@debian.org>
 <20180816135032.28283-3-bluca@debian.org>
 <FF963A5D-98DC-4EE2-B429-161CCCCC102D@vmware.com>
 <1537276494.10481.7.camel@debian.org>
 <17F07836-30C0-4B16-A0A8-00CCFC2D715B@vmware.com>
 <1537295381.10481.15.camel@debian.org>
In-Reply-To: <1537295381.10481.15.camel@debian.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/10.11.0.180909
x-originating-ip: [208.91.2.2]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; MWHPR05MB3359;
 20:DU+RCqSbobfKkZceLKOHuXyu5B0Rxx0CtY+lLH4Lil14YkcuI7Qu8Wfr8qUPqrD54pnUtRKqqhMuQh3a24IFvIjT0HqrX8kflmO1JkBVBI3elVqKAl1AXG1DcJ8htM+EWjEiiwg5hjrhYwmCHAH2b97qhyEgOAZAHscVYOLLDdw=
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 7ac9670b-f93d-4195-5226-08d61d97656e
x-microsoft-antispam: BCL:0; PCL:0;
 RULEID:(7020095)(4652040)(8989299)(4534165)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(2017052603328)(7153060)(7193020);
 SRVR:MWHPR05MB3359; 
x-ms-traffictypediagnostic: MWHPR05MB3359:
bcl: 0
x-microsoft-antispam-prvs: <MWHPR05MB335985E13BC58E2D9E68EE22AF1D0@MWHPR05MB3359.namprd05.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(17755550239193)(278428928389397)(219752817060721)(189930954265078); 
x-ms-exchange-senderadcheck: 1
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231355)(944501410)(52105095)(93006095)(93001095)(10201501046)(3002001)(149027)(150027)(6041310)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(201708071742011)(7699050)(76991041);
 SRVR:MWHPR05MB3359; BCL:0; PCL:0; RULEID:; SRVR:MWHPR05MB3359; 
x-forefront-prvs: 0799B1B2D7
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(346002)(376002)(136003)(39860400002)(396003)(366004)(199004)(189003)(81166006)(229853002)(66066001)(6486002)(99286004)(8936002)(33656002)(81156014)(8676002)(68736007)(2501003)(6512007)(58126008)(110136005)(7736002)(6306002)(93886005)(486006)(6436002)(53936002)(305945005)(36756003)(5250100002)(5660300001)(316002)(45080400002)(6116002)(3846002)(2616005)(476003)(26005)(82746002)(11346002)(186003)(446003)(14444005)(256004)(106356001)(575784001)(6246003)(966005)(105586002)(14454004)(2900100001)(478600001)(2906002)(102836004)(97736004)(83716003)(4326008)(6346003)(76176011)(25786009)(86362001)(53546011)(6506007);
 DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR05MB3359;
 H:MWHPR05MB2909.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: vmware.com does not designate
 permitted sender hosts)
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=llouis@vmware.com; 
x-microsoft-antispam-message-info: mtQNtQxAojSwzbI8p4Gdf4zguwYB0sgt0stnTI0CguWdjvoNfsaPCkLmkH1I5PVSnRE2cMs22t9PlAmLudn67jOzR7bjpAONRzimB/Re/L8h8V9FH+M8l34JjjJZIF9AQsREnDX9fFDmkS7fdzEUg0JcBAzL3Ah5KvCJknkuaC7Otfmvq4yWTxVrnZcVugCu72/KXhhwRoE+Wes0o/rbdgm89lT3eeFWsJWg9W//BfCJavCC4JDe9Kl5gAKIO8lepPST7n/qh/4WwjIDlJt3hEpROdDDIMTUU7fNqHNPB22KYk5YxL0VCBrdBIxvfzaBvg7XOVK6B1rvYZ9j57NGEubNJvDvfta5cOB4tpZCiNM=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <E5B56710698AB5428DA986D021437A5C@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: vmware.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7ac9670b-f93d-4195-5226-08d61d97656e
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Sep 2018 18:48:59.6668 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR05MB3359
Subject: Re: [dpdk-dev] [PATCH 2/3] net/vmxnet3: fix vmxnet3 dev_uninit()
 hot-unplug
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Sep 2018 18:49:02 -0000

SGkgTHVjYSwNCg0KSSdtIGZpbmUgd2l0aCB0aGUgcXVldWUgZnJlZSBwYXJ0LCBidXQganVzdCBo
YXZlIGNvbmNlcm4gYWJvdXQgcmVtb3ZpbmcgdGhlIGNoZWNrIGluc2lkZSB1bmluaXQgZnVuY3Rp
b24uIElmIHRoZSBhcHBsaWNhdGlvbiBkb2VzIGZvbGxvdyB0aGUgcnVsZXMgYW5kIGtlZXBpbmcg
dGhlIGNoZWNrIGluIHVuaW5pdCB3b24ndCBjYXVzZSB2bXhuZXQzX2Rldl9jbG9zZSgpIGJlaW5n
IGNhbGxlZCBhZ2FpbiAoYW5kIGlmIGl0IHdvbid0IGNhdXNlIHRyb3VibGUgaW4gY2FzZSB0aGUg
YXBwbGljYXRpb24gZG9lc24ndCBjYWxsIGNsb3NlIGJlZm9yZSBjYWxsaW5nIHVuaW5pdCksIEkg
cHJlZmVyIGtlZXBpbmcgdGhlIGNoZWNrIChhbmQgbG9nIHNvbWUgd2FybmluZykgaW4gY2FzZSBh
bnkgYnVnZ3kgYXBwbGljYXRpb24gZXhpc3RzLg0KDQpUaGFua3MsDQpMb3Vpcw0KDQrvu79PbiA5
LzE4LzE4LCAxMToyOSBBTSwgIkx1Y2EgQm9jY2Fzc2kiIDxibHVjYUBkZWJpYW4ub3JnPiB3cm90
ZToNCg0KICAgIE9uIFR1ZSwgMjAxOC0wOS0xOCBhdCAxODoxNCArMDAwMCwgTG91aXMgTHVvIHdy
b3RlOg0KICAgID4gSGkgTHVjYSwNCiAgICA+IA0KICAgID4gVGhhbmtzIGZvciBwb2ludGluZyB0
byB0aGUgZG9jdW1lbnQhIFRoaXMgImJhc2ljIHJlcXVpcmVtZW50cyIgc2VlbXMNCiAgICA+IHRv
IGxheSB0aGUgYnVyZGVuIG9uIGFwcGxpY2F0aW9uIGRldmVsb3BlcnMgdG8gY29ycmVjdGx5IGZv
bGxvdyB0aGUNCiAgICA+IGhvdC1wbHVnIGZyYW1ld29yaydzIHJ1bGVzLCBidXQgdGhlcmUgc2Vl
bXMgbm8gbWVjaGFuaXNtIHRvIGVuZm9yY2UNCiAgICA+IHRoaXMgcHJvY2VkdXJlIChjb3JyZWN0
IG1lIGlmIEknbSB3cm9uZykuIFdoYXQgaWYgYSBidWdneSBhcHBsaWNhdGlvbg0KICAgID4gZG9l
c24ndCBjYWxsIHN0b3AvY2xvc2UgYmVmb3JlIGRldGFjaGluZz8gDQogICAgDQogICAgV2VsbCBE
UERLIGluIGdlbmVyYWwgZG9lcyBub3QgaGF2ZSB0aGUgc2ltcGxlc3QgQVBJIHRvIHVzZSwgdGhl
cmUncyBubw0KICAgIGRlbnlpbmcgdGhhdC4gVGhhdCdzIGJlY2F1c2Ugd2hhdCBpdCBkb2VzIGlz
IHZlcnkgbXVjaCBtb3JlIGNvbXBsaWNhdGVkDQogICAgdGhhbiB0aGUgYXZlcmFnZSBsaWJyYXJ5
Lg0KICAgIFNvIGlmIGFuIGFwcGxpY2F0aW9uIGlnbm9yZXMgdGhlIGRldmVsb3BtZW50IGd1aWRl
cyBhbmQgZG9lcyBub3QgZm9sbG93DQogICAgdGhlIHJlY29tbWVuZGF0aW9uIGJhZCB0aGluZ3Mg
d2lsbCBoYXBwZW4gOi0pIEJ1dCBpdCB3aWxsIGhhcHBlbg0KICAgIHJlZ2FyZGxlc3Mgb2YgdGhl
IFBNRCB1c2VkLiBUaGF0J3MgYWxyZWFkeSB0aGUgY2FzZS4NCiAgICANCiAgICA+IEluIGFkZGl0
aW9uLCBpbiB5b3VyIGNvbW1pdCBkZXNjcmlwdGlvbiwgeW91IHNhaWQgIiBUaGUgdm14bmV0Mw0K
ICAgID4gZHJpdmVyIGNhbid0IGNhbGwgYmFjayBpbnRvIGRldl9jbG9zZSgpLCBhbmQgcG9zc2li
bHkgZGV2X3N0b3AoKSwgaW4NCiAgICA+IGRldl91bmluaXQoKS4iIEJ1dCBhY3R1YWxseSBpbiB2
bXhuZXQzX2Rldl9jbG9zZSgpLCB3ZSBzZXQgaHctDQogICAgPiA+YWRhcHRlcl9zdG9wcGVkID0g
MSwgYW5kIGluIGV0aF92bXhuZXQzX2Rldl91bmluaXQoKSB3ZSBjYWxsIGludG8NCiAgICA+IHZt
eG5ldDNfZGV2X2Nsb3NlKCkgT05MWSB3aGVuIGh3LT5hZGFwdGVyX3N0b3BwZWQgPT0gMC4gU28g
aWYgdGhlDQogICAgPiBhcHBsaWNhdGlvbiBkb2VzIG1lZXQgdGhlIGhvdC1wbHVnIGZyYW1ld29y
ayByZXF1aXJlbWVudCBhbmQgY2FsbHMNCiAgICA+IGRldl9jbG9zZSBiZWZvcmUgY2FsbGluZyB1
bmluaXQsIGV0aF92bXhuZXQzX2Rldl91bmluaXQoKSBzaG91bGQgbm90DQogICAgPiBjYWxsIGlu
dG8gdm14bmV0M19kZXZfY2xvc2UoKSBhZ2FpbiwgcmlnaHQ/IElmIHNvLCB3aHkgYm90aGVyDQog
ICAgPiByZW1vdmluZyB0aGlzIGNoZWNrPyANCiAgICA+IA0KICAgID4gT3IgbGV0IG1lIGFzayB0
aGlzIHdheS4gSWYgYSBidWdneSBhcHBsaWNhdGlvbiBET0VTIE5PVCBjYWxsDQogICAgPiBkZXZf
Y2xvc2UgYmVmb3JlIGNhbGxpbmcgZXRoX3ZteG5ldDNfZGV2X3VuaW5pdCgpLCB3b3VsZCBjYWxs
aW5nDQogICAgPiB2bXhuZXQzX2Rldl9jbG9zZSgpIGluc2lkZSBldGhfdm14bmV0M19kZXZfdW5p
bml0KCkgY2F1c2UgYW55DQogICAgPiB0cm91YmxlPyBBbmQgaWYgYW4gYXBwbGljYXRpb24gRE9F
UyBjYWxsIGRldl9jbG9zZSBiZWZvcmUgY2FsbGluZw0KICAgID4gZXRoX3ZteG5ldDNfZGV2X3Vu
aW5pdCgpLCBoYXZlIHlvdSBldmVyIHNlZW4gdm14bmV0M19kZXZfY2xvc2UoKQ0KICAgID4gYmVp
bmcgY2FsbGVkIGFnYWluIGFuZCB0cmlnZ2VyIGNyYXNoZXMgbGlrZSBkb3VibGUtZnJlZSBvciBz
b21ldGhpbmcNCiAgICA+IGVsc2U/IElmIHllcywgdGhlbiB3ZSBuZWVkIHRvIGludmVzdGlnYXRl
Lg0KICAgID4gDQogICAgPiBUaGFua3MNCiAgICA+IExvdWlzDQogICAgDQogICAgVGhlIHByb2Js
ZW0gaXMgdGhhdCB0aGVyZSBhcmUgbWFueSBQTURzLCBzbyB0aGUgZ3VpZGVsaW5lcyBoYXZlIHRv
IGJlDQogICAgZm9sbG93ZWQgLSBzbyBzdG9wIGFuZCBjbG9zZSBoYXZlIHRvIGJlIGNhbGxlZCBh
bnl3YXkgYmVmb3JlIGRldGFjaC4NCiAgICBPdGhlcndpc2UgcnVubmluZyB3aXRoIG90aGVyIFBN
RHMgd2lsbCBicmVhayB0aGUgYXBwbGljYXRpb24uIFNvIG5vdA0KICAgIGNhbGxpbmcgY2xvc2Ug
aXMgbm90IHJlYWxseSBhbiBvcHRpb24gZm9yIGFuIGFwcGxpY2F0aW9uLg0KICAgIA0KICAgIEJ1
dCB0aGUgbWFpbiBpc3N1ZSBoZXJlIGlzIHRoZSBsZWFraW5nIG9mIHRoZSBxdWV1ZXMsIHdoaWNo
IHRoaXMgcGF0Y2gNCiAgICBmaXhlcy4gQnkgcmUtYXJyYW5naW5nIHRoZSBzdG9wL2Nsb3NlL3Vu
aW5pdCBsaWtlIHRoaXMsIHF1ZXVlcyBjYW4gYmUNCiAgICBjb3JyZWN0bHkgZnJlZWQgYW5kIHRo
dXMgd2UgY2FuIGhvdHBsdWcvdW5wbHVnIGRldmljZXMgd2l0aG91dCBsZWFraW5nDQogICAgbWFz
c2l2ZSBhbW91bnRzIG9mIG1lbW9yeS4NCiAgICANCiAgICBNeSBjb2xsZWFndWUgQnJpYW4sIHdo
byB3cm90ZSB0aGUgcGF0Y2ggYW5kIEkgQ0MnZWQsIG1pZ2h0IGhhdmUgbW9yZQ0KICAgIGluZm9y
bWF0aW9uIGlmIHlvdSBuZWVkIGl0Lg0KICAgIA0KICAgID4gT24gOS8xOC8xOCwgNjoxNSBBTSwg
Ikx1Y2EgQm9jY2Fzc2kiIDxibHVjYUBkZWJpYW4ub3JnPiB3cm90ZToNCiAgICA+IA0KICAgID4g
ICAgIEhpLA0KICAgID4gICAgIA0KICAgID4gICAgIFRoZSBhcHBsaWNhdGlvbiBtdXN0IGFscmVh
ZHkgc3RvcCBhbmQgY2xvc2UgYmVmb3JlIGRldGFjaGluZw0KICAgID4gKHdoaWNoDQogICAgPiAg
ICAgd2lsbCBjYWxsIHVuaW5pdCkuIFF1b3RpbmcgZnJvbSB0aGUgZG9jdW1lbnRhdGlvbjoNCiAg
ICA+ICAgICANCiAgICA+ICAgICAiKiAgQmVmb3JlIGRldGFjaGluZywgdGhleSBtdXN0IGJlIHN0
b3BwZWQgYW5kIGNsb3NlZC4NCiAgICA+ICAgICANCiAgICA+ICAgICAgICAgRFBESyBhcHBsaWNh
dGlvbnMgbXVzdCBjYWxsICJydGVfZXRoX2Rldl9zdG9wKCkiIGFuZA0KICAgID4gICAgICAgICAi
cnRlX2V0aF9kZXZfY2xvc2UoKSIgQVBJcyBiZWZvcmUgZGV0YWNoaW5nIHBvcnRzLiBUaGVzZQ0K
ICAgID4gZnVuY3Rpb25zIHdpbGwNCiAgICA+ICAgICAgICAgc3RhcnQgZmluYWxpemF0aW9uIHNl
cXVlbmNlIG9mIHRoZSBQTURzLiINCiAgICA+ICAgICANCiAgICA+ICAgICBodHRwczovL25hMDEu
c2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwJTNBJTJGJTJGZA0KICAg
ID4gb2MuZHBkay5vcmclMkZndWlkZXMlMkZwcm9nX2d1aWRlJTJGcG9ydF9ob3RwbHVnX2ZyYW1l
d29yay5odG1sJmFtcDtkDQogICAgPiBhdGE9MDIlN0MwMSU3Q2xsb3VpcyU0MHZtd2FyZS5jb20l
N0MzZDg3YTU0ODJjZDA0NjY3OWQ3NjA4ZDYxZDY4YmY5YSUNCiAgICA+IDdDYjM5MTM4Y2EzY2Vl
NGI0YWE0ZDZjZDgzZDlkZDYyZjAlN0MxJTdDMCU3QzYzNjcyODczMzA3ODcwMDkxMSZhbXA7cw0K
ICAgID4gZGF0YT1xQng3enlPSmhUbVZIMGMyWkVCb2htSUhMNlBrWXdCNlhQYXcyZXBnUzBFJTNE
JmFtcDtyZXNlcnZlZD0wDQogICAgPiAgICAgDQogICAgPiAgICAgT24gTW9uLCAyMDE4LTA5LTE3
IGF0IDE5OjA2ICswMDAwLCBMb3VpcyBMdW8gd3JvdGU6DQogICAgPiAgICAgPiBIaSBMdWNhLA0K
ICAgID4gICAgID4gDQogICAgPiAgICAgPiBXaGVuIGV0aF92bXhuZXQzX2Rldl91bmluaXQoKSBp
cyBjYWxsZWQsIGlzIGl0IGd1YXJhbnRlZWQgdGhhdA0KICAgID4gICAgID4gdm14bmV0M19kZXZf
Y2xvc2UvIHZteG5ldDNfZGV2X3N0b3AgbXVzdCBoYXZlIGJlZW4gY2FsbGVkPyBJJ20NCiAgICA+
IG5vdA0KICAgID4gICAgID4gZmFtaWxpYXIgd2l0aCB0aGUgaG90LXBsdWcgcHJvY2VkdXJlLCBz
byBqdXN0IHdvbmRlciBpZiB0aGVyZQ0KICAgID4gaXMgYW55DQogICAgPiAgICAgPiBjaGFuY2Ug
dGhhdCBldGhfdm14bmV0M19kZXZfdW5pbml0KCkgaXMgY2FsbGVkIHdpdGhvdXQgY2FsbGluZw0K
ICAgID4gICAgID4gdm14bmV0M19kZXZfY2xvc2UvIHZteG5ldDNfZGV2X3N0b3AuDQogICAgPiAg
ICAgPiANCiAgICA+ICAgICA+IFRoYW5rcywNCiAgICA+ICAgICA+IExvdWlzDQogICAgPiAgICAg
PiANCiAgICA+ICAgICA+IE9uIDgvMTYvMTgsIDY6NTEgQU0sICJkZXYgb24gYmVoYWxmIG9mIEx1
Y2EgQm9jY2Fzc2kiIDxkZXYtYm91bg0KICAgID4gY2VzQGQNCiAgICA+ICAgICA+IHBkay5vcmcg
b24gYmVoYWxmIG9mIGJsdWNhQGRlYmlhbi5vcmc+IHdyb3RlOg0KICAgID4gICAgID4gDQogICAg
PiAgICAgPiAgICAgVGhlIHZteG5ldDMgZHJpdmVyIGNhbid0IGNhbGwgYmFjayBpbnRvIGRldl9j
bG9zZSgpLCBhbmQNCiAgICA+IHBvc3NpYmx5DQogICAgPiAgICAgPiAgICAgZGV2X3N0b3AoKSwg
aW4gZGV2X3VuaW5pdCgpLiAgV2hlbiBkZXZfdW5pbml0KCkgaXMgY2FsbGVkLA0KICAgID4gICAg
ID4gYW55dGhpbmcNCiAgICA+ICAgICA+ICAgICB0aGF0IHRob3NlIHJvdXRpbmVzIHdvdWxkIHdh
bnQgdG8gY2xlYW4gdXAgaGFzIGFscmVhZHkgYmVlbg0KICAgID4gICAgID4gcmVsZWFzZWQuDQog
ICAgPiAgICAgPiAgICAgRnVydGhlciwgZm9yIGNvbXBsZXRlIGNsZWFudXAsIGl0IGlzIG5lY2Vz
c2FyeSB0byByZWxlYXNlDQogICAgPiBhbnkgb2YNCiAgICA+ICAgICA+IHRoZQ0KICAgID4gICAg
ID4gICAgIHF1ZXVlIHJlc291cmNlcyBkdXJpbmcgZGV2X2Nsb3NlKCkuDQogICAgPiAgICAgPiAg
ICAgVGhpcyBhbGxvd3MgYSB2bXhuZXQzIGRldmljZSB0byBiZSBob3QtdW5wbHVnZ2VkIHdpdGhv
dXQNCiAgICA+IGxlYWtpbmcNCiAgICA+ICAgICA+ICAgICBxdWV1ZXMuDQogICAgPiAgICAgPiAg
ICAgDQogICAgPiAgICAgPiAgICAgRml4ZXM6IGRmYWZmMzdmYzQ2ZCAoInZteG5ldDM6IGltcG9y
dCBuZXcgdm14bmV0MyBwb2xsIG1vZGUNCiAgICA+ICAgICA+IGRyaXZlciBpbXBsZW1lbnRhdGlv
biIpDQogICAgPiAgICAgPiAgICAgQ2M6IHN0YWJsZUBkcGRrLm9yZw0KICAgID4gICAgID4gICAg
IA0KICAgID4gICAgID4gICAgIFNpZ25lZC1vZmYtYnk6IEJyaWFuIFJ1c3NlbGwgPGJydXNzZWxs
QGJyb2NhZGUuY29tPg0KICAgID4gICAgID4gICAgIFNpZ25lZC1vZmYtYnk6IEx1Y2EgQm9jY2Fz
c2kgPGJsdWNhQGRlYmlhbi5vcmc+DQogICAgPiAgICAgPiAgICAgLS0tDQogICAgPiAgICAgPiAg
ICAgIGRyaXZlcnMvbmV0L3ZteG5ldDMvdm14bmV0M19ldGhkZXYuYyB8IDM2DQogICAgPiArKysr
KysrKysrKysrKysrKysrKw0KICAgID4gICAgID4gLS0tLS0tLS0NCiAgICA+ICAgICA+ICAgICAg
MSBmaWxlIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQ0KICAgID4g
ICAgID4gICAgIA0KICAgID4gICAgID4gICAgIGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC92bXhu
ZXQzL3ZteG5ldDNfZXRoZGV2LmMNCiAgICA+ICAgICA+IGIvZHJpdmVycy9uZXQvdm14bmV0My92
bXhuZXQzX2V0aGRldi5jDQogICAgPiAgICAgPiAgICAgaW5kZXggMjYxM2NkMTM1OC4uYjVkNGJl
NWUyNCAxMDA2NDQNCiAgICA+ICAgICA+ICAgICAtLS0gYS9kcml2ZXJzL25ldC92bXhuZXQzL3Zt
eG5ldDNfZXRoZGV2LmMNCiAgICA+ICAgICA+ICAgICArKysgYi9kcml2ZXJzL25ldC92bXhuZXQz
L3ZteG5ldDNfZXRoZGV2LmMNCiAgICA+ICAgICA+ICAgICBAQCAtMzQ4LDE2ICszNDgsMTEgQEAg
ZXRoX3ZteG5ldDNfZGV2X2luaXQoc3RydWN0DQogICAgPiBydGVfZXRoX2Rldg0KICAgID4gICAg
ID4gKmV0aF9kZXYpDQogICAgPiAgICAgPiAgICAgIHN0YXRpYyBpbnQNCiAgICA+ICAgICA+ICAg
ICAgZXRoX3ZteG5ldDNfZGV2X3VuaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpDQog
ICAgPiAgICAgPiAgICAgIHsNCiAgICA+ICAgICA+ICAgICAtCXN0cnVjdCB2bXhuZXQzX2h3ICpo
dyA9IGV0aF9kZXYtPmRhdGEtDQogICAgPiA+ZGV2X3ByaXZhdGU7DQogICAgPiAgICAgPiAgICAg
LQ0KICAgID4gICAgID4gICAgICAJUE1EX0lOSVRfRlVOQ19UUkFDRSgpOw0KICAgID4gICAgID4g
ICAgICANCiAgICA+ICAgICA+ICAgICAgCWlmIChydGVfZWFsX3Byb2Nlc3NfdHlwZSgpICE9IFJU
RV9QUk9DX1BSSU1BUlkpDQogICAgPiAgICAgPiAgICAgIAkJcmV0dXJuIDA7DQogICAgPiAgICAg
PiAgICAgIA0KICAgID4gICAgID4gICAgIC0JaWYgKGh3LT5hZGFwdGVyX3N0b3BwZWQgPT0gMCkN
CiAgICA+ICAgICA+ICAgICAtCQl2bXhuZXQzX2Rldl9jbG9zZShldGhfZGV2KTsNCiAgICA+ICAg
ICA+ICAgICAtDQogICAgPiAgICAgPiAgICAgIAlldGhfZGV2LT5kZXZfb3BzID0gTlVMTDsNCiAg
ICA+ICAgICA+ICAgICAgCWV0aF9kZXYtPnJ4X3BrdF9idXJzdCA9IE5VTEw7DQogICAgPiAgICAg
PiAgICAgIAlldGhfZGV2LT50eF9wa3RfYnVyc3QgPSBOVUxMOw0KICAgID4gICAgID4gICAgIEBA
IC04MDMsNyArNzk4LDcgQEAgdm14bmV0M19kZXZfc3RvcChzdHJ1Y3QgcnRlX2V0aF9kZXYNCiAg
ICA+ICpkZXYpDQogICAgPiAgICAgPiAgICAgIAlQTURfSU5JVF9GVU5DX1RSQUNFKCk7DQogICAg
PiAgICAgPiAgICAgIA0KICAgID4gICAgID4gICAgICAJaWYgKGh3LT5hZGFwdGVyX3N0b3BwZWQg
PT0gMSkgew0KICAgID4gICAgID4gICAgIC0JCVBNRF9JTklUX0xPRyhERUJVRywgIkRldmljZSBh
bHJlYWR5DQogICAgPiBjbG9zZWQuIik7DQogICAgPiAgICAgPiAgICAgKwkJUE1EX0lOSVRfTE9H
KERFQlVHLCAiRGV2aWNlIGFscmVhZHkNCiAgICA+IHN0b3BwZWQuIik7DQogICAgPiAgICAgPiAg
ICAgIAkJcmV0dXJuOw0KICAgID4gICAgID4gICAgICAJfQ0KICAgID4gICAgID4gICAgICANCiAg
ICA+ICAgICA+ICAgICBAQCAtODI3LDcgKzgyMiw2IEBAIHZteG5ldDNfZGV2X3N0b3Aoc3RydWN0
IHJ0ZV9ldGhfZGV2DQogICAgPiAqZGV2KQ0KICAgID4gICAgID4gICAgICAJLyogcmVzZXQgdGhl
IGRldmljZSAqLw0KICAgID4gICAgID4gICAgICAJVk1YTkVUM19XUklURV9CQVIxX1JFRyhodywg
Vk1YTkVUM19SRUdfQ01ELA0KICAgID4gICAgID4gVk1YTkVUM19DTURfUkVTRVRfREVWKTsNCiAg
ICA+ICAgICA+ICAgICAgCVBNRF9JTklUX0xPRyhERUJVRywgIkRldmljZSByZXNldC4iKTsNCiAg
ICA+ICAgICA+ICAgICAtCWh3LT5hZGFwdGVyX3N0b3BwZWQgPSAwOw0KICAgID4gICAgID4gICAg
ICANCiAgICA+ICAgICA+ICAgICAgCXZteG5ldDNfZGV2X2NsZWFyX3F1ZXVlcyhkZXYpOw0KICAg
ID4gICAgID4gICAgICANCiAgICA+ICAgICA+ICAgICBAQCAtODM3LDYgKzgzMSwzMCBAQCB2bXhu
ZXQzX2Rldl9zdG9wKHN0cnVjdCBydGVfZXRoX2Rldg0KICAgID4gKmRldikNCiAgICA+ICAgICA+
ICAgICAgCWxpbmsubGlua19zcGVlZCA9IEVUSF9TUEVFRF9OVU1fMTBHOw0KICAgID4gICAgID4g
ICAgICAJbGluay5saW5rX2F1dG9uZWcgPSBFVEhfTElOS19GSVhFRDsNCiAgICA+ICAgICA+ICAg
ICAgCXJ0ZV9ldGhfbGlua3N0YXR1c19zZXQoZGV2LCAmbGluayk7DQogICAgPiAgICAgPiAgICAg
Kw0KICAgID4gICAgID4gICAgICsJaHctPmFkYXB0ZXJfc3RvcHBlZCA9IDE7DQogICAgPiAgICAg
PiAgICAgK30NCiAgICA+ICAgICA+ICAgICArDQogICAgPiAgICAgPiAgICAgK3N0YXRpYyB2b2lk
DQogICAgPiAgICAgPiAgICAgK3ZteG5ldDNfZnJlZV9xdWV1ZXMoc3RydWN0IHJ0ZV9ldGhfZGV2
ICpkZXYpDQogICAgPiAgICAgPiAgICAgK3sNCiAgICA+ICAgICA+ICAgICArCWludCBpOw0KICAg
ID4gICAgID4gICAgICsNCiAgICA+ICAgICA+ICAgICArCVBNRF9JTklUX0ZVTkNfVFJBQ0UoKTsN
CiAgICA+ICAgICA+ICAgICArDQogICAgPiAgICAgPiAgICAgKwlmb3IgKGkgPSAwOyBpIDwgZGV2
LT5kYXRhLT5uYl9yeF9xdWV1ZXM7IGkrKykgew0KICAgID4gICAgID4gICAgICsJCXZvaWQgKnJ4
cSA9IGRldi0+ZGF0YS0+cnhfcXVldWVzW2ldOw0KICAgID4gICAgID4gICAgICsNCiAgICA+ICAg
ICA+ICAgICArCQl2bXhuZXQzX2Rldl9yeF9xdWV1ZV9yZWxlYXNlKHJ4cSk7DQogICAgPiAgICAg
PiAgICAgKwl9DQogICAgPiAgICAgPiAgICAgKwlkZXYtPmRhdGEtPm5iX3J4X3F1ZXVlcyA9IDA7
DQogICAgPiAgICAgPiAgICAgKw0KICAgID4gICAgID4gICAgICsJZm9yIChpID0gMDsgaSA8IGRl
di0+ZGF0YS0+bmJfdHhfcXVldWVzOyBpKyspIHsNCiAgICA+ICAgICA+ICAgICArCQl2b2lkICp0
eHEgPSBkZXYtPmRhdGEtPnR4X3F1ZXVlc1tpXTsNCiAgICA+ICAgICA+ICAgICArDQogICAgPiAg
ICAgPiAgICAgKwkJdm14bmV0M19kZXZfdHhfcXVldWVfcmVsZWFzZSh0eHEpOw0KICAgID4gICAg
ID4gICAgICsJfQ0KICAgID4gICAgID4gICAgICsJZGV2LT5kYXRhLT5uYl90eF9xdWV1ZXMgPSAw
Ow0KICAgID4gICAgID4gICAgICB9DQogICAgPiAgICAgPiAgICAgIA0KICAgID4gICAgID4gICAg
ICAvKg0KICAgID4gICAgID4gICAgIEBAIC04NDUsMTIgKzg2MywxMCBAQCB2bXhuZXQzX2Rldl9z
dG9wKHN0cnVjdCBydGVfZXRoX2Rldg0KICAgID4gKmRldikNCiAgICA+ICAgICA+ICAgICAgc3Rh
dGljIHZvaWQNCiAgICA+ICAgICA+ICAgICAgdm14bmV0M19kZXZfY2xvc2Uoc3RydWN0IHJ0ZV9l
dGhfZGV2ICpkZXYpDQogICAgPiAgICAgPiAgICAgIHsNCiAgICA+ICAgICA+ICAgICAtCXN0cnVj
dCB2bXhuZXQzX2h3ICpodyA9IGRldi0+ZGF0YS0+ZGV2X3ByaXZhdGU7DQogICAgPiAgICAgPiAg
ICAgLQ0KICAgID4gICAgID4gICAgICAJUE1EX0lOSVRfRlVOQ19UUkFDRSgpOw0KICAgID4gICAg
ID4gICAgICANCiAgICA+ICAgICA+ICAgICAgCXZteG5ldDNfZGV2X3N0b3AoZGV2KTsNCiAgICA+
ICAgICA+ICAgICAtCWh3LT5hZGFwdGVyX3N0b3BwZWQgPSAxOw0KICAgID4gICAgID4gICAgICsJ
dm14bmV0M19mcmVlX3F1ZXVlcyhkZXYpOw0KICAgID4gICAgID4gICAgICB9DQogICAgPiAgICAg
PiAgICAgIA0KICAgID4gICAgID4gICAgICBzdGF0aWMgdm9pZA0KICAgID4gICAgID4gICAgIC0t
IA0KICAgID4gICAgID4gICAgIDIuMTguMA0KICAgID4gICAgID4gICAgIA0KICAgID4gICAgID4g
ICAgIA0KICAgID4gICAgID4gDQogICAgPiAgICAgDQogICAgPiAgICAgLS0gDQogICAgPiAgICAg
S2luZCByZWdhcmRzLA0KICAgID4gICAgIEx1Y2EgQm9jY2Fzc2kNCiAgICA+IA0KICAgIA0KICAg
IC0tIA0KICAgIEtpbmQgcmVnYXJkcywNCiAgICBMdWNhIEJvY2Nhc3NpDQoNCg==