From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm/i915: Rename HAS_GMCH Date: Tue, 5 Feb 2019 20:07:39 +0200 Message-ID: <20190205180739.GU20097@intel.com> References: <20190204222538.15842-1-rodrigo.vivi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2941A6E793 for ; Tue, 5 Feb 2019 18:07:44 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190204222538.15842-1-rodrigo.vivi@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Rodrigo Vivi Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBGZWIgMDQsIDIwMTkgYXQgMDI6MjU6MzhQTSAtMDgwMCwgUm9kcmlnbyBWaXZpIHdy b3RlOgo+IEZpcnN0IG9mIGFsbCBHTUNIIGNhbiBiZSBjb25zaWRlcmVkIGEgZmVhdHVyZSBieSBp dHNlbGYKPiBzaW5jZSBpdCBpcyBhIGNoaXAgcHJlc2VudCBpbiBzb21lIHBsYXRmb3JtcyB0aGF0 IGNvbm5lY3RzCj4gdGhlIElBIHByb2Nlc3NvciB0byBtZW1vcnkgYW5kIG90aGVyIGNvbXBvbmVu dHMgaW4gUEMuCgpWTFYvQ0hWIGRvbid0IGhhdmUgYSBHTUNILiBXaGF0IHRoZXkgaGF2ZSBpcyBk aXNwbGF5IGVuZ2luZSBkZXJpdmVkCmZyb20gdGhlIG9sZCBHTUNIIGVyYSBkZXNpZ24uCgo+IAo+ IEFsc28gd2l0aCB0aGUgaW50cm9kdWN0aW9uIG9mIGRpc3BsYXkgYmxvY2sgYXQgZGV2aWNlIGlu Zm8sCj4gd2UgZ290IGEgcmVkdW5kYW50IGRlZmluaXRpb246Cj4gCj4gLmRpc3BsYXkuaGFzX2dt Y2hfZGlzcGxheSA9IDEsCj4gCj4gU28sIGxldCdzIGNsZWFuIHVwIHRoaW5ncyBhIGJpdCBhbmQg dXNlIHRoZSBzdGFuZGFyZGl6ZWQKPiB3YXkgb2YgaGFzX2ZlYXR1cmUgb24gZGlzcGxheXMgc2lk ZS4KPiAKPiBObyBmdW5jdGlvbmFsIGNoYW5nZSBhbmQgbm8gbWFudWFsIGludGVyYWN0aW9uIHRv IGdlbmVyYXRlCj4gdGhpcyBwYXRjaC4KPiAKPiBJdCBpcyBvbmx5Ogo+IAo+IHNlZCAtc2kgLWUg J3MvaGFzX2dtY2hfZGlzcGxheS9oYXNfZ21jaC9nJyBcCj4gICAgIAktZSAncy9IQVNfR01DSF9E SVNQTEFZL0hBU19HTUNIL2cnIGRyaXZlcnMvZ3B1L2RybS9pOTE1Lyp7YyxofQo+IAo+IENjOiBK b3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNvdXphQGludGVsLmNvbT4KPiBDYzogVmlsbGUg U3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5 OiBSb2RyaWdvIFZpdmkgPHJvZHJpZ28udml2aUBpbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jICAgICAgICB8ICA0ICsrLS0KPiAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICAgIHwgIDQgKystLQo+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3BjaS5jICAgICAgICAgICAgfCAxMCArKysrLS0tLQo+ICBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3N1c3BlbmQuYyAgICAgICAgfCAgNCArKy0tCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMgICAgICAgICB8ICA2ICsrLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmggICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyAgICAgICB8IDI4ICsrKysrKysrKysrLS0tLS0tLS0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyAgICAgICAgICAgIHwgMTIgKysr KystLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9maWZvX3VuZGVycnVuLmMgfCAg NiArKy0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgICAgICAgICAgfCAg NiArKy0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMgICAgICAgfCAg MiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYyAgICAgICAgICAgfCAgMiAr LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMgICAgICAgICAgICAgfCAgNCArKy0t Cj4gIDEzIGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDQ1IGRlbGV0aW9ucygtKQo+ IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gaW5kZXggZmEyYzIyNmZjNzc5Li5l ZmYyZTdmNjc2MmMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1 Z2ZzLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+IEBAIC0z NzI4LDcgKzM3MjgsNyBAQCBzdGF0aWMgaW50IHNwcl93bV9sYXRlbmN5X29wZW4oc3RydWN0IGlu b2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbGUpCj4gIHsKPiAgCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IGlub2RlLT5pX3ByaXZhdGU7Cj4gIAo+IC0JaWYgKEhBU19HTUNI X0RJU1BMQVkoZGV2X3ByaXYpKQo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSkKPiAgCQlyZXR1 cm4gLUVOT0RFVjsKPiAgCj4gIAlyZXR1cm4gc2luZ2xlX29wZW4oZmlsZSwgc3ByX3dtX2xhdGVu Y3lfc2hvdywgZGV2X3ByaXYpOwo+IEBAIC0zNzM4LDcgKzM3MzgsNyBAQCBzdGF0aWMgaW50IGN1 cl93bV9sYXRlbmN5X29wZW4oc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbGUp Cj4gIHsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGlub2RlLT5pX3By aXZhdGU7Cj4gIAo+IC0JaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKQo+ICsJaWYgKEhB U19HTUNIKGRldl9wcml2KSkKPiAgCQlyZXR1cm4gLUVOT0RFVjsKPiAgCj4gIAlyZXR1cm4gc2lu Z2xlX29wZW4oZmlsZSwgY3VyX3dtX2xhdGVuY3lfc2hvdywgZGV2X3ByaXYpOwo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaAo+IGluZGV4IDUzNGU1MmUzYThkYS4uOWY2OTU0NTEyNTQ3IDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gQEAgLTI0OTAsNyArMjQ5MCw3IEBAIHN0YXRpYyBpbmxp bmUgdW5zaWduZWQgaW50IGk5MTVfc2dfc2VnbWVudF9zaXplKHZvaWQpCj4gIAo+ICAjZGVmaW5l IEhBU19GV19CTEMoZGV2X3ByaXYpIAkoSU5URUxfR0VOKGRldl9wcml2KSA+IDIpCj4gICNkZWZp bmUgSEFTX0ZCQyhkZXZfcHJpdikJKElOVEVMX0lORk8oZGV2X3ByaXYpLT5kaXNwbGF5Lmhhc19m YmMpCj4gLSNkZWZpbmUgSEFTX0NVUl9GQkMoZGV2X3ByaXYpCSghSEFTX0dNQ0hfRElTUExBWShk ZXZfcHJpdikgJiYgSU5URUxfR0VOKGRldl9wcml2KSA+PSA3KQo+ICsjZGVmaW5lIEhBU19DVVJf RkJDKGRldl9wcml2KQkoIUhBU19HTUNIKGRldl9wcml2KSAmJiBJTlRFTF9HRU4oZGV2X3ByaXYp ID49IDcpCj4gIAo+ICAjZGVmaW5lIEhBU19JUFMoZGV2X3ByaXYpCShJU19IU1dfVUxUKGRldl9w cml2KSB8fCBJU19CUk9BRFdFTEwoZGV2X3ByaXYpKQo+ICAKPiBAQCAtMjU3MCw3ICsyNTcwLDcg QEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgaTkxNV9zZ19zZWdtZW50X3NpemUodm9pZCkK PiAgI2RlZmluZSBIQVNfUENIX05PUChkZXZfcHJpdikgKElOVEVMX1BDSF9UWVBFKGRldl9wcml2 KSA9PSBQQ0hfTk9QKQo+ICAjZGVmaW5lIEhBU19QQ0hfU1BMSVQoZGV2X3ByaXYpIChJTlRFTF9Q Q0hfVFlQRShkZXZfcHJpdikgIT0gUENIX05PTkUpCj4gIAo+IC0jZGVmaW5lIEhBU19HTUNIX0RJ U1BMQVkoZGV2X3ByaXYpIChJTlRFTF9JTkZPKGRldl9wcml2KS0+ZGlzcGxheS5oYXNfZ21jaF9k aXNwbGF5KQo+ICsjZGVmaW5lIEhBU19HTUNIKGRldl9wcml2KSAoSU5URUxfSU5GTyhkZXZfcHJp diktPmRpc3BsYXkuaGFzX2dtY2gpCj4gIAo+ICAjZGVmaW5lIEhBU19MU1BDT04oZGV2X3ByaXYp IChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpCj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3BjaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYwo+ IGluZGV4IDVkMDU1NzJjOWZmNC4uY2Q1YTc3OTI4OWMyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcGNpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3BjaS5jCj4gQEAgLTg5LDcgKzg5LDcgQEAKPiAgCS5udW1fcGlwZXMgPSAxLCBcCj4gIAkuZGlz cGxheS5oYXNfb3ZlcmxheSA9IDEsIFwKPiAgCS5kaXNwbGF5Lm92ZXJsYXlfbmVlZHNfcGh5c2lj YWwgPSAxLCBcCj4gLQkuZGlzcGxheS5oYXNfZ21jaF9kaXNwbGF5ID0gMSwgXAo+ICsJLmRpc3Bs YXkuaGFzX2dtY2ggPSAxLCBcCj4gIAkuZ3B1X3Jlc2V0X2Nsb2JiZXJzX2Rpc3BsYXkgPSB0cnVl LCBcCj4gIAkuaHdzX25lZWRzX3BoeXNpY2FsID0gMSwgXAo+ICAJLnVuZmVuY2VkX25lZWRzX2Fs aWdubWVudCA9IDEsIFwKPiBAQCAtMTMwLDcgKzEzMCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg aW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfaTg2NWdfaW5mbyA9IHsKPiAgI2RlZmluZSBHRU4zX0ZF QVRVUkVTIFwKPiAgCUdFTigzKSwgXAo+ICAJLm51bV9waXBlcyA9IDIsIFwKPiAtCS5kaXNwbGF5 Lmhhc19nbWNoX2Rpc3BsYXkgPSAxLCBcCj4gKwkuZGlzcGxheS5oYXNfZ21jaCA9IDEsIFwKPiAg CS5ncHVfcmVzZXRfY2xvYmJlcnNfZGlzcGxheSA9IHRydWUsIFwKPiAgCS5yaW5nX21hc2sgPSBS RU5ERVJfUklORywgXAo+ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiBAQCAtMjA3LDcgKzIwNyw3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfcGluZXZpZXdf aW5mbyA9IHsKPiAgCUdFTig0KSwgXAo+ICAJLm51bV9waXBlcyA9IDIsIFwKPiAgCS5kaXNwbGF5 Lmhhc19ob3RwbHVnID0gMSwgXAo+IC0JLmRpc3BsYXkuaGFzX2dtY2hfZGlzcGxheSA9IDEsIFwK PiArCS5kaXNwbGF5Lmhhc19nbWNoID0gMSwgXAo+ICAJLmdwdV9yZXNldF9jbG9iYmVyc19kaXNw bGF5ID0gdHJ1ZSwgXAo+ICAJLnJpbmdfbWFzayA9IFJFTkRFUl9SSU5HLCBcCj4gIAkuaGFzX3Nu b29wID0gdHJ1ZSwgXAo+IEBAIC0zODMsNyArMzgzLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBp bnRlbF9kZXZpY2VfaW5mbyBpbnRlbF92YWxsZXl2aWV3X2luZm8gPSB7Cj4gIAkubnVtX3BpcGVz ID0gMiwKPiAgCS5oYXNfcnVudGltZV9wbSA9IDEsCj4gIAkuaGFzX3JjNiA9IDEsCj4gLQkuZGlz cGxheS5oYXNfZ21jaF9kaXNwbGF5ID0gMSwKPiArCS5kaXNwbGF5Lmhhc19nbWNoID0gMSwKPiAg CS5kaXNwbGF5Lmhhc19ob3RwbHVnID0gMSwKPiAgCS5wcGd0dCA9IElOVEVMX1BQR1RUX0ZVTEws Cj4gIAkuaGFzX3Nub29wID0gdHJ1ZSwKPiBAQCAtNDc1LDcgKzQ3NSw3IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfY2hlcnJ5dmlld19pbmZvID0gewo+ICAJ Lmhhc19ydW50aW1lX3BtID0gMSwKPiAgCS5oYXNfcmM2ID0gMSwKPiAgCS5oYXNfbG9naWNhbF9y aW5nX2NvbnRleHRzID0gMSwKPiAtCS5kaXNwbGF5Lmhhc19nbWNoX2Rpc3BsYXkgPSAxLAo+ICsJ LmRpc3BsYXkuaGFzX2dtY2ggPSAxLAo+ICAJLnBwZ3R0ID0gSU5URUxfUFBHVFRfRlVMTCwKPiAg CS5oYXNfcmVzZXRfZW5naW5lID0gMSwKPiAgCS5oYXNfc25vb3AgPSB0cnVlLAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3N1c3BlbmQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfc3VzcGVuZC5jCj4gaW5kZXggZjE4YWZhMmJhYzhkLi5kMmYyYTljMmZhYmQg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zdXNwZW5kLmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3N1c3BlbmQuYwo+IEBAIC04Niw3ICs4Niw3IEBA IGludCBpOTE1X3NhdmVfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ ICAJfSBlbHNlIGlmIChJU19HRU4oZGV2X3ByaXYsIDIpKSB7Cj4gIAkJZm9yIChpID0gMDsgaSA8 IDc7IGkrKykKPiAgCQkJZGV2X3ByaXYtPnJlZ2ZpbGUuc2F2ZVNXRjFbaV0gPSBJOTE1X1JFQUQo U1dGMShpKSk7Cj4gLQl9IGVsc2UgaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKSB7Cj4g Kwl9IGVsc2UgaWYgKEhBU19HTUNIKGRldl9wcml2KSkgewo+ICAJCWZvciAoaSA9IDA7IGkgPCAx NjsgaSsrKSB7Cj4gIAkJCWRldl9wcml2LT5yZWdmaWxlLnNhdmVTV0YwW2ldID0gSTkxNV9SRUFE KFNXRjAoaSkpOwo+ICAJCQlkZXZfcHJpdi0+cmVnZmlsZS5zYXZlU1dGMVtpXSA9IEk5MTVfUkVB RChTV0YxKGkpKTsKPiBAQCAtMTMxLDcgKzEzMSw3IEBAIGludCBpOTE1X3Jlc3RvcmVfc3RhdGUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJfSBlbHNlIGlmIChJU19HRU4o ZGV2X3ByaXYsIDIpKSB7Cj4gIAkJZm9yIChpID0gMDsgaSA8IDc7IGkrKykKPiAgCQkJSTkxNV9X UklURShTV0YxKGkpLCBkZXZfcHJpdi0+cmVnZmlsZS5zYXZlU1dGMVtpXSk7Cj4gLQl9IGVsc2Ug aWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKSB7Cj4gKwl9IGVsc2UgaWYgKEhBU19HTUNI KGRldl9wcml2KSkgewo+ICAJCWZvciAoaSA9IDA7IGkgPCAxNjsgaSsrKSB7Cj4gIAkJCUk5MTVf V1JJVEUoU1dGMChpKSwgZGV2X3ByaXYtPnJlZ2ZpbGUuc2F2ZVNXRjBbaV0pOwo+ICAJCQlJOTE1 X1dSSVRFKFNXRjEoaSksIGRldl9wcml2LT5yZWdmaWxlLnNhdmVTV0YxW2ldKTsKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2NvbG9yLmMKPiBpbmRleCA0YjAwNDRjZGNmMWEuLjMxZmE1OTliMGQ2MSAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwo+IEBAIC0zMjEsNyArMzIxLDcgQEAg c3RhdGljIHZvaWQgaTl4eF9sb2FkX2x1dHNfaW50ZXJuYWwoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUsCj4gIAllbnVtIHBpcGUgcGlwZSA9IGNydGMtPnBpcGU7Cj4gIAlpbnQg aTsKPiAgCj4gLQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpIHsKPiArCWlmIChIQVNf R01DSChkZXZfcHJpdikpIHsKPiAgCQlpZiAoaW50ZWxfY3J0Y19oYXNfdHlwZShjcnRjX3N0YXRl LCBJTlRFTF9PVVRQVVRfRFNJKSkKPiAgCQkJYXNzZXJ0X2RzaV9wbGxfZW5hYmxlZChkZXZfcHJp dik7Cj4gIAkJZWxzZQo+IEBAIC0zMzYsNyArMzM2LDcgQEAgc3RhdGljIHZvaWQgaTl4eF9sb2Fk X2x1dHNfaW50ZXJuYWwoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gIAkJ CQkoZHJtX2NvbG9yX2x1dF9leHRyYWN0KGx1dFtpXS5ncmVlbiwgOCkgPDwgOCkgfAo+ICAJCQkJ ZHJtX2NvbG9yX2x1dF9leHRyYWN0KGx1dFtpXS5ibHVlLCA4KTsKPiAgCj4gLQkJCWlmIChIQVNf R01DSF9ESVNQTEFZKGRldl9wcml2KSkKPiArCQkJaWYgKEhBU19HTUNIKGRldl9wcml2KSkKPiAg CQkJCUk5MTVfV1JJVEUoUEFMRVRURShwaXBlLCBpKSwgd29yZCk7Cj4gIAkJCWVsc2UKPiAgCQkJ CUk5MTVfV1JJVEUoTEdDX1BBTEVUVEUocGlwZSwgaSksIHdvcmQpOwo+IEBAIC0zNDUsNyArMzQ1 LDcgQEAgc3RhdGljIHZvaWQgaTl4eF9sb2FkX2x1dHNfaW50ZXJuYWwoc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gIAkJZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7Cj4g IAkJCXUzMiB3b3JkID0gKGkgPDwgMTYpIHwgKGkgPDwgOCkgfCBpOwo+ICAKPiAtCQkJaWYgKEhB U19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKQo+ICsJCQlpZiAoSEFTX0dNQ0goZGV2X3ByaXYpKQo+ ICAJCQkJSTkxNV9XUklURShQQUxFVFRFKHBpcGUsIGkpLCB3b3JkKTsKPiAgCQkJZWxzZQo+ICAJ CQkJSTkxNV9XUklURShMR0NfUEFMRVRURShwaXBlLCBpKSwgd29yZCk7Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmggYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5mby5oCj4gaW5kZXggN2JmMDljZWY1OTFhLi5lOGI4NjYx ZGY3NDYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2lu Zm8uaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmgKPiBA QCAtMTE1LDcgKzExNSw3IEBAIGVudW0gaW50ZWxfcHBndHQgewo+ICAJZnVuYyhoYXNfZGRpKTsg XAo+ICAJZnVuYyhoYXNfZHBfbXN0KTsgXAo+ICAJZnVuYyhoYXNfZmJjKTsgXAo+IC0JZnVuYyho YXNfZ21jaF9kaXNwbGF5KTsgXAo+ICsJZnVuYyhoYXNfZ21jaCk7IFwKPiAgCWZ1bmMoaGFzX2hv dHBsdWcpOyBcCj4gIAlmdW5jKGhhc19pcGMpOyBcCj4gIAlmdW5jKGhhc19vdmVybGF5KTsgXAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCBkZjdhN2EzMTBmMmYuLjY2 Mzk4NzkxN2ZiZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAt MTgwNSw3ICsxODA1LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX3BpcGUoY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKm5ld19jcnRjX3N0YXRlKQo+ICAJICogYSBwbGFuZS4gIE9u IElMSysgdGhlIHBpcGUgUExMcyBhcmUgaW50ZWdyYXRlZCwgc28gd2UgZG9uJ3QKPiAgCSAqIG5l ZWQgdGhlIGNoZWNrLgo+ICAJICovCj4gLQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikp IHsKPiArCWlmIChIQVNfR01DSChkZXZfcHJpdikpIHsKPiAgCQlpZiAoaW50ZWxfY3J0Y19oYXNf dHlwZShuZXdfY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVUX0RTSSkpCj4gIAkJCWFzc2VydF9kc2lf cGxsX2VuYWJsZWQoZGV2X3ByaXYpOwo+ICAJCWVsc2UKPiBAQCAtMjA5NCw3ICsyMDk0LDcgQEAg aW50ZWxfcGluX2FuZF9mZW5jZV9mYl9vYmooc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4g IAkgKiBjb21wbGljYXRlZCB0aGFuIHRoaXMuIEZvciBleGFtcGxlLCBDaGVycnl2aWV3IGFwcGVh cnMgcXVpdGUKPiAgCSAqIGhhcHB5IHRvIHNjYW5vdXQgZnJvbSBhbnl3aGVyZSB3aXRoaW4gaXRz IGdsb2JhbCBhcGVydHVyZS4KPiAgCSAqLwo+IC0JaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3By aXYpKQo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSkKPiAgCQlwaW5jdGwgfD0gUElOX01BUFBB QkxFOwo+ICAKPiAgCXZtYSA9IGk5MTVfZ2VtX29iamVjdF9waW5fdG9fZGlzcGxheV9wbGFuZShv YmosCj4gQEAgLTMxOTUsNyArMzE5NSw3IEBAIGk5eHhfcGxhbmVfbWF4X3N0cmlkZShzdHJ1Y3Qg aW50ZWxfcGxhbmUgKnBsYW5lLAo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KHBsYW5lLT5iYXNlLmRldik7Cj4gIAo+IC0JaWYgKCFIQVNfR01DSF9E SVNQTEFZKGRldl9wcml2KSkgewo+ICsJaWYgKCFIQVNfR01DSChkZXZfcHJpdikpIHsKPiAgCQly ZXR1cm4gMzIqMTAyNDsKPiAgCX0gZWxzZSBpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA0KSB7 Cj4gIAkJaWYgKG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9YX1RJTEVEKQo+IEBAIC0zNzcx LDcgKzM3NzEsNyBAQCBfX2ludGVsX2Rpc3BsYXlfcmVzdW1lKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCj4gIAl9Cj4gIAo+ICAJLyogaWdub3JlIGFueSByZXNldCB2YWx1ZXMvQklPUyBsZWZ0b3Zl cnMgaW4gdGhlIFdNIHJlZ2lzdGVycyAqLwo+IC0JaWYgKCFIQVNfR01DSF9ESVNQTEFZKHRvX2k5 MTUoZGV2KSkpCj4gKwlpZiAoIUhBU19HTUNIKHRvX2k5MTUoZGV2KSkpCj4gIAkJdG9faW50ZWxf YXRvbWljX3N0YXRlKHN0YXRlKS0+c2tpcF9pbnRlcm1lZGlhdGVfd20gPSB0cnVlOwo+ICAKPiAg CXJldCA9IGRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9kdXBsaWNhdGVkX3N0YXRlKHN0YXRlLCBj dHgpOwo+IEBAIC01Mjk0LDcgKzUyOTQsNyBAQCBpbnRlbF9wcmVfZGlzYWJsZV9wcmltYXJ5X25v YXRvbWljKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgCSAqIGV2ZW50IHdoaWNoIGlzIGFmdGVy IHRoZSB2Ymxhbmsgc3RhcnQgZXZlbnQsIHNvIHdlIG5lZWQgdG8gaGF2ZSBhCj4gIAkgKiB3YWl0 LWZvci12YmxhbmsgYmV0d2VlbiBkaXNhYmxpbmcgdGhlIHBsYW5lIGFuZCB0aGUgcGlwZS4KPiAg CSAqLwo+IC0JaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpICYmCj4gKwlpZiAoSEFTX0dN Q0goZGV2X3ByaXYpICYmCj4gIAkgICAgaW50ZWxfc2V0X21lbW9yeV9jeHNyKGRldl9wcml2LCBm YWxzZSkpCj4gIAkJaW50ZWxfd2FpdF9mb3JfdmJsYW5rKGRldl9wcml2LCBwaXBlKTsKPiAgfQo+ IEBAIC01NDMxLDcgKzU0MzEsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wcmVfcGxhbmVfdXBkYXRl KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSwKPiAgCSAqIGV2ZW50IHdo aWNoIGlzIGFmdGVyIHRoZSB2Ymxhbmsgc3RhcnQgZXZlbnQsIHNvIHdlIG5lZWQgdG8gaGF2ZSBh Cj4gIAkgKiB3YWl0LWZvci12YmxhbmsgYmV0d2VlbiBkaXNhYmxpbmcgdGhlIHBsYW5lIGFuZCB0 aGUgcGlwZS4KPiAgCSAqLwo+IC0JaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpICYmIG9s ZF9jcnRjX3N0YXRlLT5iYXNlLmFjdGl2ZSAmJgo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSAm JiBvbGRfY3J0Y19zdGF0ZS0+YmFzZS5hY3RpdmUgJiYKPiAgCSAgICBwaXBlX2NvbmZpZy0+ZGlz YWJsZV9jeHNyICYmIGludGVsX3NldF9tZW1vcnlfY3hzcihkZXZfcHJpdiwgZmFsc2UpKQo+ICAJ CWludGVsX3dhaXRfZm9yX3ZibGFuayhkZXZfcHJpdiwgY3J0Yy0+cGlwZSk7Cj4gIAo+IEBAIC02 NzA1LDcgKzY3MDUsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2NvbXB1dGVfcGl4ZWxfcmF0 ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAgewo+ICAJc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjX3N0YXRlLT5iYXNlLmNydGMt PmRldik7Cj4gIAo+IC0JaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKQo+ICsJaWYgKEhB U19HTUNIKGRldl9wcml2KSkKPiAgCQkvKiBGSVhNRSBjYWxjdWxhdGUgcHJvcGVyIHBpcGUgcGl4 ZWwgcmF0ZSBmb3IgR01DSCBwZml0ICovCj4gIAkJY3J0Y19zdGF0ZS0+cGl4ZWxfcmF0ZSA9Cj4g IAkJCWNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX2Nsb2NrOwo+IEBAIC05ODE0 LDcgKzk4MTQsNyBAQCBzdGF0aWMgdTMyIGludGVsX2N1cnNvcl9iYXNlKGNvbnN0IHN0cnVjdCBp bnRlbF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCj4gIAliYXNlICs9IHBsYW5lX3N0YXRlLT5j b2xvcl9wbGFuZVswXS5vZmZzZXQ7Cj4gIAo+ICAJLyogSUxLKyBkbyB0aGlzIGF1dG9tYWdpY2Fs bHkgKi8KPiAtCWlmIChIQVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSAmJgo+ICsJaWYgKEhBU19H TUNIKGRldl9wcml2KSAmJgo+ICAJICAgIHBsYW5lX3N0YXRlLT5iYXNlLnJvdGF0aW9uICYgRFJN X01PREVfUk9UQVRFXzE4MCkKPiAgCQliYXNlICs9IChwbGFuZV9zdGF0ZS0+YmFzZS5jcnRjX2gg Kgo+ICAJCQkgcGxhbmVfc3RhdGUtPmJhc2UuY3J0Y193IC0gMSkgKiBmYi0+Zm9ybWF0LT5jcHBb MF07Cj4gQEAgLTExMzU2LDcgKzExMzU2LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHVtcF9waXBl X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCQkJICAgICAgcGlwZV9jb25maWct PnNjYWxlcl9zdGF0ZS5zY2FsZXJfdXNlcnMsCj4gIAkJICAgICAgICAgICAgICBwaXBlX2NvbmZp Zy0+c2NhbGVyX3N0YXRlLnNjYWxlcl9pZCk7Cj4gIAo+IC0JaWYgKEhBU19HTUNIX0RJU1BMQVko ZGV2X3ByaXYpKQo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSkKPiAgCQlEUk1fREVCVUdfS01T KCJnbWNoIHBmaXQ6IGNvbnRyb2w6IDB4JTA4eCwgcmF0aW9zOiAweCUwOHgsIGx2ZHMgYm9yZGVy OiAweCUwOHhcbiIsCj4gIAkJCSAgICAgIHBpcGVfY29uZmlnLT5nbWNoX3BmaXQuY29udHJvbCwK PiAgCQkJICAgICAgcGlwZV9jb25maWctPmdtY2hfcGZpdC5wZ21fcmF0aW9zLAo+IEBAIC0xMzA5 Niw3ICsxMzA5Niw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1 Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAo+ICAJCQkvKiBGSVhNRSB1bmlmeSB0aGlz IGZvciBhbGwgcGxhdGZvcm1zICovCj4gIAkJCWlmICghbmV3X2NydGNfc3RhdGUtPmFjdGl2ZSAm Jgo+IC0JCQkgICAgIUhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpICYmCj4gKwkJCSAgICAhSEFT X0dNQ0goZGV2X3ByaXYpICYmCj4gIAkJCSAgICBkZXZfcHJpdi0+ZGlzcGxheS5pbml0aWFsX3dh dGVybWFya3MpCj4gIAkJCQlkZXZfcHJpdi0+ZGlzcGxheS5pbml0aWFsX3dhdGVybWFya3MoaW50 ZWxfc3RhdGUsCj4gIAkJCQkJCQkJICAgICBuZXdfaW50ZWxfY3J0Y19zdGF0ZSk7Cj4gQEAgLTE1 MDc0LDcgKzE1MDc0LDcgQEAgc3RhdGljIHZvaWQgc2FuaXRpemVfd2F0ZXJtYXJrcyhzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQo+ICAJICogaW50ZXJtZWRpYXRlIHdhdGVybWFya3MgKHNpbmNlIHdl IGRvbid0IHRydXN0IHRoZSBjdXJyZW50Cj4gIAkgKiB3YXRlcm1hcmtzKS4KPiAgCSAqLwo+IC0J aWYgKCFIQVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSkKPiArCWlmICghSEFTX0dNQ0goZGV2X3By aXYpKQo+ICAJCWludGVsX3N0YXRlLT5za2lwX2ludGVybWVkaWF0ZV93bSA9IHRydWU7Cj4gIAo+ ICAJcmV0ID0gaW50ZWxfYXRvbWljX2NoZWNrKGRldiwgc3RhdGUpOwo+IEBAIC0xNTMxNSw3ICsx NTMxNSw3IEBAIGludCBpbnRlbF9tb2Rlc2V0X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikK PiAgCSAqIE5vdGUgdGhhdCB3ZSBuZWVkIHRvIGRvIHRoaXMgYWZ0ZXIgcmVjb25zdHJ1Y3Rpbmcg dGhlIEJJT1MgZmIncwo+ICAJICogc2luY2UgdGhlIHdhdGVybWFyayBjYWxjdWxhdGlvbiBkb25l IGhlcmUgd2lsbCB1c2UgcHN0YXRlLT5mYi4KPiAgCSAqLwo+IC0JaWYgKCFIQVNfR01DSF9ESVNQ TEFZKGRldl9wcml2KSkKPiArCWlmICghSEFTX0dNQ0goZGV2X3ByaXYpKQo+ICAJCXNhbml0aXpl X3dhdGVybWFya3MoZGV2KTsKPiAgCj4gIAkvKgo+IEBAIC0xNTUyNCw3ICsxNTUyNCw3IEBAIHN0 YXRpYyB2b2lkIGludGVsX3Nhbml0aXplX2NydGMoc3RydWN0IGludGVsX2NydGMgKmNydGMsCj4g IAlpZiAoY3J0Y19zdGF0ZS0+YmFzZS5hY3RpdmUgJiYgIWludGVsX2NydGNfaGFzX2VuY29kZXJz KGNydGMpKQo+ICAJCWludGVsX2NydGNfZGlzYWJsZV9ub2F0b21pYygmY3J0Yy0+YmFzZSwgY3R4 KTsKPiAgCj4gLQlpZiAoY3J0Y19zdGF0ZS0+YmFzZS5hY3RpdmUgfHwgSEFTX0dNQ0hfRElTUExB WShkZXZfcHJpdikpIHsKPiArCWlmIChjcnRjX3N0YXRlLT5iYXNlLmFjdGl2ZSB8fCBIQVNfR01D SChkZXZfcHJpdikpIHsKPiAgCQkvKgo+ICAJCSAqIFdlIHN0YXJ0IG91dCB3aXRoIHVuZGVycnVu IHJlcG9ydGluZyBkaXNhYmxlZCB0byBhdm9pZCByYWNlcy4KPiAgCQkgKiBGb3IgY29ycmVjdCBi b29ra2VlcGluZyBtYXJrIHRoaXMgb24gYWN0aXZlIGNydGNzLgo+IEBAIC0xNjI3MSw3ICsxNjI3 MSw3IEBAIGludGVsX2Rpc3BsYXlfY2FwdHVyZV9lcnJvcl9zdGF0ZShzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAo+ICAJCWVycm9yLT5waXBlW2ldLnNvdXJjZSA9IEk5MTVf UkVBRChQSVBFU1JDKGkpKTsKPiAgCj4gLQkJaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYp KQo+ICsJCWlmIChIQVNfR01DSChkZXZfcHJpdikpCj4gIAkJCWVycm9yLT5waXBlW2ldLnN0YXQg PSBJOTE1X1JFQUQoUElQRVNUQVQoaSkpOwo+ICAJfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw LmMKPiBpbmRleCA2ODFlODg0MDVhZGEuLmMwOWM3NTExN2U5ZiAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHAuYwo+IEBAIC0yMTQxLDcgKzIxNDEsNyBAQCBpbnRlbF9kcF9jb21wdXRlX2NvbmZp ZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJCXJldHVybiByZXQ7Cj4gIAkJ fQo+ICAKPiAtCQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpCj4gKwkJaWYgKEhBU19H TUNIKGRldl9wcml2KSkKPiAgCQkJaW50ZWxfZ21jaF9wYW5lbF9maXR0aW5nKGludGVsX2NydGMs IHBpcGVfY29uZmlnLAo+ICAJCQkJCQkgY29ubl9zdGF0ZS0+c2NhbGluZ19tb2RlKTsKPiAgCQll bHNlCj4gQEAgLTIxNTIsNyArMjE1Miw3IEBAIGludGVsX2RwX2NvbXB1dGVfY29uZmlnKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJaWYgKGFkanVzdGVkX21vZGUtPmZsYWdzICYg RFJNX01PREVfRkxBR19EQkxTQ0FOKQo+ICAJCXJldHVybiAtRUlOVkFMOwo+ICAKPiAtCWlmIChI QVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSAmJgo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSAm Jgo+ICAJICAgIGFkanVzdGVkX21vZGUtPmZsYWdzICYgRFJNX01PREVfRkxBR19JTlRFUkxBQ0Up Cj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gIAo+IEBAIC01MzAwLDcgKzUzMDAsNyBAQCBib29sIGlu dGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIp Cj4gIHsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5j b2Rlci0+YmFzZS5kZXYpOwo+ICAKPiAtCWlmIChIQVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSkg ewo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSkgewo+ICAJCWlmIChJU19HTTQ1KGRldl9wcml2 KSkKPiAgCQkJcmV0dXJuIGdtNDVfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChlbmNvZGVyKTsKPiAg CQllbHNlCj4gQEAgLTYwMzgsNyArNjAzOCw3IEBAIGludGVsX2RwX2FkZF9wcm9wZXJ0aWVzKHN0 cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsIHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0Cj4g IAkJaW50ZWxfYXR0YWNoX2ZvcmNlX2F1ZGlvX3Byb3BlcnR5KGNvbm5lY3Rvcik7Cj4gIAo+ICAJ aW50ZWxfYXR0YWNoX2Jyb2FkY2FzdF9yZ2JfcHJvcGVydHkoY29ubmVjdG9yKTsKPiAtCWlmIChI QVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSkKPiArCWlmIChIQVNfR01DSChkZXZfcHJpdikpCj4g IAkJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfbWF4X2JwY19wcm9wZXJ0eShjb25uZWN0b3IsIDYsIDEw KTsKPiAgCWVsc2UgaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gNSkKPiAgCQlkcm1fY29ubmVj dG9yX2F0dGFjaF9tYXhfYnBjX3Byb3BlcnR5KGNvbm5lY3RvciwgNiwgMTIpOwo+IEBAIC02MDQ3 LDcgKzYwNDcsNyBAQCBpbnRlbF9kcF9hZGRfcHJvcGVydGllcyhzdHJ1Y3QgaW50ZWxfZHAgKmlu dGVsX2RwLCBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdAo+ICAJCXUzMiBhbGxvd2VkX3Nj YWxlcnM7Cj4gIAo+ICAJCWFsbG93ZWRfc2NhbGVycyA9IEJJVChEUk1fTU9ERV9TQ0FMRV9BU1BF Q1QpIHwgQklUKERSTV9NT0RFX1NDQUxFX0ZVTExTQ1JFRU4pOwo+IC0JCWlmICghSEFTX0dNQ0hf RElTUExBWShkZXZfcHJpdikpCj4gKwkJaWYgKCFIQVNfR01DSChkZXZfcHJpdikpCj4gIAkJCWFs bG93ZWRfc2NhbGVycyB8PSBCSVQoRFJNX01PREVfU0NBTEVfQ0VOVEVSKTsKPiAgCj4gIAkJZHJt X2Nvbm5lY3Rvcl9hdHRhY2hfc2NhbGluZ19tb2RlX3Byb3BlcnR5KGNvbm5lY3RvciwgYWxsb3dl ZF9zY2FsZXJzKTsKPiBAQCAtNjkxOSw3ICs2OTE5LDcgQEAgaW50ZWxfZHBfaW5pdF9jb25uZWN0 b3Ioc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQsCj4gIAlkcm1fY29u bmVjdG9yX2luaXQoZGV2LCBjb25uZWN0b3IsICZpbnRlbF9kcF9jb25uZWN0b3JfZnVuY3MsIHR5 cGUpOwo+ICAJZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKGNvbm5lY3RvciwgJmludGVsX2RwX2Nv bm5lY3Rvcl9oZWxwZXJfZnVuY3MpOwo+ICAKPiAtCWlmICghSEFTX0dNQ0hfRElTUExBWShkZXZf cHJpdikpCj4gKwlpZiAoIUhBU19HTUNIKGRldl9wcml2KSkKPiAgCQljb25uZWN0b3ItPmludGVy bGFjZV9hbGxvd2VkID0gdHJ1ZTsKPiAgCWNvbm5lY3Rvci0+ZG91Ymxlc2Nhbl9hbGxvd2VkID0g MDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZpZm9fdW5k ZXJydW4uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZpZm9fdW5kZXJydW4uYwo+IGlu ZGV4IDNiOTI4NTEzMGVmNS4uZjMzZGU0YmU0Yjg5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2ZpZm9fdW5kZXJydW4uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2ZpZm9fdW5kZXJydW4uYwo+IEBAIC0yNTgsNyArMjU4LDcgQEAgc3RhdGljIGJv b2wgX19pbnRlbF9zZXRfY3B1X2ZpZm9fdW5kZXJydW5fcmVwb3J0aW5nKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCj4gIAlvbGQgPSAhY3J0Yy0+Y3B1X2ZpZm9fdW5kZXJydW5fZGlzYWJsZWQ7Cj4g IAljcnRjLT5jcHVfZmlmb191bmRlcnJ1bl9kaXNhYmxlZCA9ICFlbmFibGU7Cj4gIAo+IC0JaWYg KEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKQo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSkK PiAgCQlpOXh4X3NldF9maWZvX3VuZGVycnVuX3JlcG9ydGluZyhkZXYsIHBpcGUsIGVuYWJsZSwg b2xkKTsKPiAgCWVsc2UgaWYgKElTX0dFTl9SQU5HRShkZXZfcHJpdiwgNSwgNikpCj4gIAkJaXJv bmxha2Vfc2V0X2ZpZm9fdW5kZXJydW5fcmVwb3J0aW5nKGRldiwgcGlwZSwgZW5hYmxlKTsKPiBA QCAtMzY5LDcgKzM2OSw3IEBAIHZvaWQgaW50ZWxfY3B1X2ZpZm9fdW5kZXJydW5faXJxX2hhbmRs ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCXJldHVybjsKPiAgCj4g IAkvKiBHTUNIIGNhbid0IGRpc2FibGUgZmlmbyB1bmRlcnJ1bnMsIGZpbHRlciB0aGVtLiAqLwo+ IC0JaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpICYmCj4gKwlpZiAoSEFTX0dNQ0goZGV2 X3ByaXYpICYmCj4gIAkgICAgY3J0Yy0+Y3B1X2ZpZm9fdW5kZXJydW5fZGlzYWJsZWQpCj4gIAkJ cmV0dXJuOwo+ICAKPiBAQCAtNDIxLDcgKzQyMSw3IEBAIHZvaWQgaW50ZWxfY2hlY2tfY3B1X2Zp Zm9fdW5kZXJydW5zKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgCQlpZiAo Y3J0Yy0+Y3B1X2ZpZm9fdW5kZXJydW5fZGlzYWJsZWQpCj4gIAkJCWNvbnRpbnVlOwo+ICAKPiAt CQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpCj4gKwkJaWYgKEhBU19HTUNIKGRldl9w cml2KSkKPiAgCQkJaTl4eF9jaGVja19maWZvX3VuZGVycnVucyhjcnRjKTsKPiAgCQllbHNlIGlm IChJU19HRU4oZGV2X3ByaXYsIDcpKQo+ICAJCQlpdnlicmlkZ2VfY2hlY2tfZmlmb191bmRlcnJ1 bnMoY3J0Yyk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWku YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+IGluZGV4IDk3YTk4ZTFiZWE1 Ni4uZjEyNWE2MmViYThjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2hkbWkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+IEBAIC0x NTg4LDcgKzE1ODgsNyBAQCBpbnRlbF9oZG1pX21vZGVfdmFsaWQoc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwKPiAgCj4gIAlpZiAoaGRtaS0+aGFzX2hkbWlfc2luayAmJiAhZm9yY2Vf ZHZpKSB7Cj4gIAkJLyogaWYgd2UgY2FuJ3QgZG8gOGJwYyB3ZSBtYXkgc3RpbGwgYmUgYWJsZSB0 byBkbyAxMmJwYyAqLwo+IC0JCWlmIChzdGF0dXMgIT0gTU9ERV9PSyAmJiAhSEFTX0dNQ0hfRElT UExBWShkZXZfcHJpdikpCj4gKwkJaWYgKHN0YXR1cyAhPSBNT0RFX09LICYmICFIQVNfR01DSChk ZXZfcHJpdikpCj4gIAkJCXN0YXR1cyA9IGhkbWlfcG9ydF9jbG9ja192YWxpZChoZG1pLCBjbG9j ayAqIDMgLyAyLAo+ICAJCQkJCQkgICAgICAgdHJ1ZSwgZm9yY2VfZHZpKTsKPiAgCj4gQEAgLTE2 MTMsNyArMTYxMyw3IEBAIHN0YXRpYyBib29sIGhkbWlfZGVlcF9jb2xvcl9wb3NzaWJsZShjb25z dCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAgCQkmY3J0Y19zdGF0ZS0+ YmFzZS5hZGp1c3RlZF9tb2RlOwo+ICAJaW50IGk7Cj4gIAo+IC0JaWYgKEhBU19HTUNIX0RJU1BM QVkoZGV2X3ByaXYpKQo+ICsJaWYgKEhBU19HTUNIKGRldl9wcml2KSkKPiAgCQlyZXR1cm4gZmFs c2U7Cj4gIAo+ICAJaWYgKGJwYyA9PSAxMCAmJiBJTlRFTF9HRU4oZGV2X3ByaXYpIDwgMTEpCj4g QEAgLTIxNTAsNyArMjE1MCw3IEBAIGludGVsX2hkbWlfYWRkX3Byb3BlcnRpZXMoc3RydWN0IGlu dGVsX2hkbWkgKmludGVsX2hkbWksIHN0cnVjdCBkcm1fY29ubmVjdG9yICpjCj4gIAlkcm1fY29u bmVjdG9yX2F0dGFjaF9jb250ZW50X3R5cGVfcHJvcGVydHkoY29ubmVjdG9yKTsKPiAgCWNvbm5l Y3Rvci0+c3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvID0gSERNSV9QSUNUVVJFX0FTUEVDVF9O T05FOwo+ICAKPiAtCWlmICghSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpCj4gKwlpZiAoIUhB U19HTUNIKGRldl9wcml2KSkKPiAgCQlkcm1fY29ubmVjdG9yX2F0dGFjaF9tYXhfYnBjX3Byb3Bl cnR5KGNvbm5lY3RvciwgOCwgMTIpOwo+ICB9Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9o b3RwbHVnLmMKPiBpbmRleCBlMDI3ZDJiNGFiZTUuLmI4OTM3Yzc4OGYwMyAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMKPiBAQCAtNDcwLDcgKzQ3MCw3IEBAIHZvaWQgaW50 ZWxfaHBkX2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAg CQkJICogaG90cGx1ZyBiaXRzIGl0c2VsZi4gU28gb25seSBXQVJOIGFib3V0IHVuZXhwZWN0ZWQK PiAgCQkJICogaW50ZXJydXB0cyBvbiBzYW5lciBwbGF0Zm9ybXMuCj4gIAkJCSAqLwo+IC0JCQlX QVJOX09OQ0UoIUhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpLAo+ICsJCQlXQVJOX09OQ0UoIUhB U19HTUNIKGRldl9wcml2KSwKPiAgCQkJCSAgIlJlY2VpdmVkIEhQRCBpbnRlcnJ1cHQgb24gcGlu ICVkIGFsdGhvdWdoIGRpc2FibGVkXG4iLCBwaW4pOwo+ICAJCQljb250aW51ZTsKPiAgCQl9Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2kyYy5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaTJjLmMKPiBpbmRleCA0ZjZkYzhjOTQ2MzQuLjVhNzMzZTcxMTM1 NSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2kyYy5jCj4gQEAgLTgyMyw3ICs4MjMsNyBAQCBp bnQgaW50ZWxfc2V0dXBfZ21idXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ ICAKPiAgCWlmIChJU19WQUxMRVlWSUVXKGRldl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRldl9w cml2KSkKPiAgCQlkZXZfcHJpdi0+Z3Bpb19tbWlvX2Jhc2UgPSBWTFZfRElTUExBWV9CQVNFOwo+ IC0JZWxzZSBpZiAoIUhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpKQo+ICsJZWxzZSBpZiAoIUhB U19HTUNIKGRldl9wcml2KSkKPiAgCQkvKgo+ICAJCSAqIEJyb3h0b24gdXNlcyB0aGUgc2FtZSBQ Q0ggb2Zmc2V0cyBmb3IgU291dGggRGlzcGxheSBFbmdpbmUsCj4gIAkJICogZXZlbiB0aG91Z2gg aXQgZG9lc24ndCBoYXZlIGEgUENILgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS92bHZfZHNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMKPiBpbmRleCA2OTZi NzUwYWNkMWQuLjY0MDM3MjhmZTc3OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS92bHZfZHNpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMKPiBAQCAt Mjc1LDcgKzI3NSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfZHNpX2NvbXB1dGVfY29uZmlnKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJaWYgKGZpeGVkX21vZGUpIHsKPiAgCQlpbnRl bF9maXhlZF9wYW5lbF9tb2RlKGZpeGVkX21vZGUsIGFkanVzdGVkX21vZGUpOwo+ICAKPiAtCQlp ZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpCj4gKwkJaWYgKEhBU19HTUNIKGRldl9wcml2 KSkKPiAgCQkJaW50ZWxfZ21jaF9wYW5lbF9maXR0aW5nKGNydGMsIHBpcGVfY29uZmlnLAo+ICAJ CQkJCQkgY29ubl9zdGF0ZS0+c2NhbGluZ19tb2RlKTsKPiAgCQllbHNlCj4gQEAgLTE2MzMsNyAr MTYzMyw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2RzaV9hZGRfcHJvcGVydGllcyhzdHJ1Y3QgaW50 ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCj4gIAkJdTMyIGFsbG93ZWRfc2NhbGVyczsKPiAgCj4g IAkJYWxsb3dlZF9zY2FsZXJzID0gQklUKERSTV9NT0RFX1NDQUxFX0FTUEVDVCkgfCBCSVQoRFJN X01PREVfU0NBTEVfRlVMTFNDUkVFTik7Cj4gLQkJaWYgKCFIQVNfR01DSF9ESVNQTEFZKGRldl9w cml2KSkKPiArCQlpZiAoIUhBU19HTUNIKGRldl9wcml2KSkKPiAgCQkJYWxsb3dlZF9zY2FsZXJz IHw9IEJJVChEUk1fTU9ERV9TQ0FMRV9DRU5URVIpOwo+ICAKPiAgCQlkcm1fY29ubmVjdG9yX2F0 dGFjaF9zY2FsaW5nX21vZGVfcHJvcGVydHkoJmNvbm5lY3Rvci0+YmFzZSwKPiAtLSAKPiAyLjIw LjEKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==