From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 01/13] drm/i915: Remove dereferences of crtc->config in set_pipeconf/misc functions. Date: Wed, 3 Oct 2018 16:54:31 +0300 Message-ID: <20181003135431.GT9144@intel.com> References: <20181003133715.3713-1-maarten.lankhorst@linux.intel.com> <20181003133715.3713-2-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 891EF6E187 for ; Wed, 3 Oct 2018 13:54:35 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20181003133715.3713-2-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBPY3QgMDMsIDIwMTggYXQgMDM6Mzc6MDNQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gT25lIG1vcmUgdXNlciBvZiBjcnRjLT5jb25maWcgZG93bi4gOikKPiAKPiBT aWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXgu aW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMg fCA3MiArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCAzNiBp bnNlcnRpb25zKCspLCAzNiBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jCj4gaW5kZXggMzY0MzRjNTM1OWIxLi4yNjRmZWVkNzZjMDggMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTE0MSwxNSArMTQxLDE1IEBAIHN0YXRp YyB2b2lkIGlyb25sYWtlX3BjaF9jbG9ja19nZXQoc3RydWN0IGludGVsX2NydGMgKmNydGMsCj4g IHN0YXRpYyBpbnQgaW50ZWxfZnJhbWVidWZmZXJfaW5pdChzdHJ1Y3QgaW50ZWxfZnJhbWVidWZm ZXIgKmlmYiwKPiAgCQkJCSAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKPiAgCQkJ CSAgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgKm1vZGVfY21kKTsKPiAtc3RhdGljIHZvaWQgaTl4 eF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMpOwo+ICtzdGF0aWMg dm9pZCBpOXh4X3NldF9waXBlY29uZihzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSk7CgpHcm91cCB0aGlzIHdpdGggdGhlIG90aGVycz8KCkkgdGhpbmsgdGhlIHN0YXRlIGNhbiBi ZSBjb25zdCBmb3IgYWxsIG9mIHRoZXNlLgoKPiAgc3RhdGljIHZvaWQgaW50ZWxfc2V0X3BpcGVf dGltaW5ncyhzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0Yyk7Cj4gIHN0YXRpYyB2b2lkIGlu dGVsX3NldF9waXBlX3NyY19zaXplKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjKTsKPiAg c3RhdGljIHZvaWQgaW50ZWxfY3B1X3RyYW5zY29kZXJfc2V0X21fbihzdHJ1Y3QgaW50ZWxfY3J0 YyAqY3J0YywKPiAgCQkJCQkgc3RydWN0IGludGVsX2xpbmtfbV9uICptX24sCj4gIAkJCQkJIHN0 cnVjdCBpbnRlbF9saW5rX21fbiAqbTJfbjIpOwo+IC1zdGF0aWMgdm9pZCBpcm9ubGFrZV9zZXRf cGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKPiAtc3RhdGljIHZvaWQgaGFzd2VsbF9z ZXRfcGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKPiAtc3RhdGljIHZvaWQgaGFzd2Vs bF9zZXRfcGlwZW1pc2Moc3RydWN0IGRybV9jcnRjICpjcnRjKTsKPiArc3RhdGljIHZvaWQgaXJv bmxha2Vfc2V0X3BpcGVjb25mKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsK PiArc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOwo+ICtzdGF0aWMgdm9pZCBoYXN3ZWxsX3NldF9waXBlbWlzYyhzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Cj4gIHN0YXRpYyB2b2lkIHZsdl9wcmVw YXJlX3BsbChzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCQkJICAgIGNvbnN0IHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7Cj4gIHN0YXRpYyB2b2lkIGNodl9wcmVwYXJl X3BsbChzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiBAQCAtNTYwNCw3ICs1NjA0LDcgQEAgc3Rh dGljIHZvaWQgaXJvbmxha2VfY3J0Y19lbmFibGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBp cGVfY29uZmlnLAo+ICAJCQkJICAgICAmaW50ZWxfY3J0Yy0+Y29uZmlnLT5mZGlfbV9uLCBOVUxM KTsKPiAgCX0KPiAgCj4gLQlpcm9ubGFrZV9zZXRfcGlwZWNvbmYoY3J0Yyk7Cj4gKwlpcm9ubGFr ZV9zZXRfcGlwZWNvbmYocGlwZV9jb25maWcpOwo+ICAKPiAgCWludGVsX2NydGMtPmFjdGl2ZSA9 IHRydWU7Cj4gIAo+IEBAIC01NzM3LDkgKzU3MzcsOSBAQCBzdGF0aWMgdm9pZCBoYXN3ZWxsX2Ny dGNfZW5hYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKPiAgCX0KPiAg Cj4gIAlpZiAoIXRyYW5zY29kZXJfaXNfZHNpKGNwdV90cmFuc2NvZGVyKSkKPiAtCQloYXN3ZWxs X3NldF9waXBlY29uZihjcnRjKTsKPiArCQloYXN3ZWxsX3NldF9waXBlY29uZihwaXBlX2NvbmZp Zyk7Cj4gIAo+IC0JaGFzd2VsbF9zZXRfcGlwZW1pc2MoY3J0Yyk7Cj4gKwloYXN3ZWxsX3NldF9w aXBlbWlzYyhwaXBlX2NvbmZpZyk7Cj4gIAo+ICAJaW50ZWxfY29sb3Jfc2V0X2NzYygmcGlwZV9j b25maWctPmJhc2UpOwo+ICAKPiBAQCAtNjA3Myw3ICs2MDczLDcgQEAgc3RhdGljIHZvaWQgdmFs bGV5dmlld19jcnRjX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcs Cj4gIAkJSTkxNV9XUklURShDSFZfQ0FOVkFTKHBpcGUpLCAwKTsKPiAgCX0KPiAgCj4gLQlpOXh4 X3NldF9waXBlY29uZihpbnRlbF9jcnRjKTsKPiArCWk5eHhfc2V0X3BpcGVjb25mKHBpcGVfY29u ZmlnKTsKPiAgCj4gIAlpbnRlbF9jb2xvcl9zZXRfY3NjKCZwaXBlX2NvbmZpZy0+YmFzZSk7Cj4g IAo+IEBAIC02MTM4LDcgKzYxMzgsNyBAQCBzdGF0aWMgdm9pZCBpOXh4X2NydGNfZW5hYmxlKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKPiAgCWludGVsX3NldF9waXBlX3Rp bWluZ3MoaW50ZWxfY3J0Yyk7Cj4gIAlpbnRlbF9zZXRfcGlwZV9zcmNfc2l6ZShpbnRlbF9jcnRj KTsKPiAgCj4gLQlpOXh4X3NldF9waXBlY29uZihpbnRlbF9jcnRjKTsKPiArCWk5eHhfc2V0X3Bp cGVjb25mKHBpcGVfY29uZmlnKTsKPiAgCj4gIAlpbnRlbF9jcnRjLT5hY3RpdmUgPSB0cnVlOwo+ ICAKPiBAQCAtNzQ4MCw4ICs3NDgwLDkgQEAgdm9pZCBpbnRlbF9tb2RlX2Zyb21fcGlwZV9jb25m aWcoc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsCj4gIAlkcm1fbW9kZV9zZXRfbmFtZSht b2RlKTsKPiAgfQo+ICAKPiAtc3RhdGljIHZvaWQgaTl4eF9zZXRfcGlwZWNvbmYoc3RydWN0IGlu dGVsX2NydGMgKmludGVsX2NydGMpCj4gK3N0YXRpYyB2b2lkIGk5eHhfc2V0X3BpcGVjb25mKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICB7Cj4gKwlzdHJ1Y3QgaW50ZWxf Y3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsK CnMvaW50ZWxfY3J0Yy9jcnRjLyB3aGlsZSBhdCBpdD8KCnNhbWUgaW4gdGhlIG90aGVyIGZ1bmN0 aW9ucy4KCj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGlu dGVsX2NydGMtPmJhc2UuZGV2KTsKPiAgCXVpbnQzMl90IHBpcGVjb25mOwo+ICAKPiBAQCAtNzQ5 MSwxOCArNzQ5MiwxOCBAQCBzdGF0aWMgdm9pZCBpOXh4X3NldF9waXBlY29uZihzdHJ1Y3QgaW50 ZWxfY3J0YyAqaW50ZWxfY3J0YykKPiAgCWlmIChJU19JODMwKGRldl9wcml2KSkKPiAgCQlwaXBl Y29uZiB8PSBJOTE1X1JFQUQoUElQRUNPTkYoaW50ZWxfY3J0Yy0+cGlwZSkpICYgUElQRUNPTkZf RU5BQkxFOwo+ICAKPiAtCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmRvdWJsZV93aWRlKQo+ICsJ aWYgKGNydGNfc3RhdGUtPmRvdWJsZV93aWRlKQo+ICAJCXBpcGVjb25mIHw9IFBJUEVDT05GX0RP VUJMRV9XSURFOwo+ICAKPiAgCS8qIG9ubHkgZzR4IGFuZCBsYXRlciBoYXZlIGZhbmN5IGJwYy9k aXRoZXIgY29udHJvbHMgKi8KPiAgCWlmIChJU19HNFgoZGV2X3ByaXYpIHx8IElTX1ZBTExFWVZJ RVcoZGV2X3ByaXYpIHx8Cj4gIAkgICAgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpIHsKPiAgCQkv KiBCc3BlYyBjbGFpbXMgdGhhdCB3ZSBjYW4ndCB1c2UgZGl0aGVyaW5nIGZvciAzMGJwcCBwaXBl cy4gKi8KPiAtCQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5kaXRoZXIgJiYgaW50ZWxfY3J0Yy0+ Y29uZmlnLT5waXBlX2JwcCAhPSAzMCkKPiArCQlpZiAoY3J0Y19zdGF0ZS0+ZGl0aGVyICYmIGNy dGNfc3RhdGUtPnBpcGVfYnBwICE9IDMwKQo+ICAJCQlwaXBlY29uZiB8PSBQSVBFQ09ORl9ESVRI RVJfRU4gfAo+ICAJCQkJICAgIFBJUEVDT05GX0RJVEhFUl9UWVBFX1NQOwo+ICAKPiAtCQlzd2l0 Y2ggKGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9icHApIHsKPiArCQlzd2l0Y2ggKGNydGNfc3Rh dGUtPnBpcGVfYnBwKSB7Cj4gIAkJY2FzZSAxODoKPiAgCQkJcGlwZWNvbmYgfD0gUElQRUNPTkZf NkJQQzsKPiAgCQkJYnJlYWs7Cj4gQEAgLTc1MTgsOSArNzUxOSw5IEBAIHN0YXRpYyB2b2lkIGk5 eHhfc2V0X3BpcGVjb25mKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjKQo+ICAJCX0KPiAg CX0KPiAgCj4gLQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuZmxh Z3MgJiBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSkgewo+ICsJaWYgKGNydGNfc3RhdGUtPmJhc2Uu YWRqdXN0ZWRfbW9kZS5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFKSB7Cj4gIAkJaWYg KElOVEVMX0dFTihkZXZfcHJpdikgPCA0IHx8Cj4gLQkJICAgIGludGVsX2NydGNfaGFzX3R5cGUo aW50ZWxfY3J0Yy0+Y29uZmlnLCBJTlRFTF9PVVRQVVRfU0RWTykpCj4gKwkJICAgIGludGVsX2Ny dGNfaGFzX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVUX1NEVk8pKQo+ICAJCQlwaXBlY29u ZiB8PSBQSVBFQ09ORl9JTlRFUkxBQ0VfV19GSUVMRF9JTkRJQ0FUSU9OOwo+ICAJCWVsc2UKPiAg CQkJcGlwZWNvbmYgfD0gUElQRUNPTkZfSU5URVJMQUNFX1dfU1lOQ19TSElGVDsKPiBAQCAtNzUy OCw3ICs3NTI5LDcgQEAgc3RhdGljIHZvaWQgaTl4eF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVs X2NydGMgKmludGVsX2NydGMpCj4gIAkJcGlwZWNvbmYgfD0gUElQRUNPTkZfUFJPR1JFU1NJVkU7 Cj4gIAo+ICAJaWYgKChJU19WQUxMRVlWSUVXKGRldl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRl dl9wcml2KSkgJiYKPiAtCSAgICAgaW50ZWxfY3J0Yy0+Y29uZmlnLT5saW1pdGVkX2NvbG9yX3Jh bmdlKQo+ICsJICAgICBjcnRjX3N0YXRlLT5saW1pdGVkX2NvbG9yX3JhbmdlKQo+ICAJCXBpcGVj b25mIHw9IFBJUEVDT05GX0NPTE9SX1JBTkdFX1NFTEVDVDsKPiAgCj4gIAlJOTE1X1dSSVRFKFBJ UEVDT05GKGludGVsX2NydGMtPnBpcGUpLCBwaXBlY29uZik7Cj4gQEAgLTg0MzEsMTYgKzg0MzIs MTYgQEAgdm9pZCBpbnRlbF9pbml0X3BjaF9yZWZjbGsoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQo+ICAJCWxwdF9pbml0X3BjaF9yZWZjbGsoZGV2X3ByaXYpOwo+ICB9Cj4gIAo+ IC1zdGF0aWMgdm9pZCBpcm9ubGFrZV9zZXRfcGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRj KQo+ICtzdGF0aWMgdm9pZCBpcm9ubGFrZV9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGNf c3RhdGUgKmNydGNfc3RhdGUpCj4gIHsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IHRvX2k5MTUoY3J0Yy0+ZGV2KTsKPiAtCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9j cnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKPiArCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9j cnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOwo+ICsJc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShpbnRlbF9jcnRjLT5iYXNlLmRldik7 Cj4gIAlpbnQgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7CgpzL2ludC9lbnVtIHBpcGUvIHdoaWxl IGF0IGl0PwoKQXBhcnQgZnJvbSB0aG9zZSBsZ3RtClJldmlld2VkLWJ5OiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgoKPiAgCXVpbnQzMl90IHZhbDsKPiAg Cj4gIAl2YWwgPSAwOwo+ICAKPiAtCXN3aXRjaCAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX2Jw cCkgewo+ICsJc3dpdGNoIChjcnRjX3N0YXRlLT5waXBlX2JwcCkgewo+ICAJY2FzZSAxODoKPiAg CQl2YWwgfD0gUElQRUNPTkZfNkJQQzsKPiAgCQlicmVhazsKPiBAQCAtODQ1OCwzMiArODQ1OSwz MiBAQCBzdGF0aWMgdm9pZCBpcm9ubGFrZV9zZXRfcGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpj cnRjKQo+ICAJCUJVRygpOwo+ICAJfQo+ICAKPiAtCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmRp dGhlcikKPiArCWlmIChjcnRjX3N0YXRlLT5kaXRoZXIpCj4gIAkJdmFsIHw9IChQSVBFQ09ORl9E SVRIRVJfRU4gfCBQSVBFQ09ORl9ESVRIRVJfVFlQRV9TUCk7Cj4gIAo+IC0JaWYgKGludGVsX2Ny dGMtPmNvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlLmZsYWdzICYgRFJNX01PREVfRkxBR19JTlRF UkxBQ0UpCj4gKwlpZiAoY3J0Y19zdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLmZsYWdzICYgRFJN X01PREVfRkxBR19JTlRFUkxBQ0UpCj4gIAkJdmFsIHw9IFBJUEVDT05GX0lOVEVSTEFDRURfSUxL Owo+ICAJZWxzZQo+ICAJCXZhbCB8PSBQSVBFQ09ORl9QUk9HUkVTU0lWRTsKPiAgCj4gLQlpZiAo aW50ZWxfY3J0Yy0+Y29uZmlnLT5saW1pdGVkX2NvbG9yX3JhbmdlKQo+ICsJaWYgKGNydGNfc3Rh dGUtPmxpbWl0ZWRfY29sb3JfcmFuZ2UpCj4gIAkJdmFsIHw9IFBJUEVDT05GX0NPTE9SX1JBTkdF X1NFTEVDVDsKPiAgCj4gIAlJOTE1X1dSSVRFKFBJUEVDT05GKHBpcGUpLCB2YWwpOwo+ICAJUE9T VElOR19SRUFEKFBJUEVDT05GKHBpcGUpKTsKPiAgfQo+ICAKPiAtc3RhdGljIHZvaWQgaGFzd2Vs bF9zZXRfcGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ICtzdGF0aWMgdm9pZCBoYXN3 ZWxsX3NldF9waXBlY29uZihzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAg ewo+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5k ZXYpOwo+IC0Jc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNy dGMpOwo+IC0JZW51bSB0cmFuc2NvZGVyIGNwdV90cmFuc2NvZGVyID0gaW50ZWxfY3J0Yy0+Y29u ZmlnLT5jcHVfdHJhbnNjb2RlcjsKPiArCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0g dG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOwo+ICsJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShpbnRlbF9jcnRjLT5iYXNlLmRldik7Cj4gKwll bnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBjcnRjX3N0YXRlLT5jcHVfdHJhbnNjb2Rl cjsKPiAgCXUzMiB2YWwgPSAwOwo+ICAKPiAtCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSAmJiBp bnRlbF9jcnRjLT5jb25maWctPmRpdGhlcikKPiArCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSAm JiBjcnRjX3N0YXRlLT5kaXRoZXIpCj4gIAkJdmFsIHw9IChQSVBFQ09ORl9ESVRIRVJfRU4gfCBQ SVBFQ09ORl9ESVRIRVJfVFlQRV9TUCk7Cj4gIAo+IC0JaWYgKGludGVsX2NydGMtPmNvbmZpZy0+ YmFzZS5hZGp1c3RlZF9tb2RlLmZsYWdzICYgRFJNX01PREVfRkxBR19JTlRFUkxBQ0UpCj4gKwlp ZiAoY3J0Y19zdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLmZsYWdzICYgRFJNX01PREVfRkxBR19J TlRFUkxBQ0UpCj4gIAkJdmFsIHw9IFBJUEVDT05GX0lOVEVSTEFDRURfSUxLOwo+ICAJZWxzZQo+ ICAJCXZhbCB8PSBQSVBFQ09ORl9QUk9HUkVTU0lWRTsKPiBAQCAtODQ5MiwxNiArODQ5MywxNSBA QCBzdGF0aWMgdm9pZCBoYXN3ZWxsX3NldF9waXBlY29uZihzdHJ1Y3QgZHJtX2NydGMgKmNydGMp Cj4gIAlQT1NUSU5HX1JFQUQoUElQRUNPTkYoY3B1X3RyYW5zY29kZXIpKTsKPiAgfQo+ICAKPiAt c3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZW1pc2Moc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ ICtzdGF0aWMgdm9pZCBoYXN3ZWxsX3NldF9waXBlbWlzYyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKPiAgewo+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gdG9faTkxNShjcnRjLT5kZXYpOwo+IC0Jc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMg PSB0b19pbnRlbF9jcnRjKGNydGMpOwo+IC0Jc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNvbmZp ZyA9IGludGVsX2NydGMtPmNvbmZpZzsKPiArCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRj ID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOwo+ICsJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShpbnRlbF9jcnRjLT5iYXNlLmRldik7Cj4g IAo+ICAJaWYgKElTX0JST0FEV0VMTChkZXZfcHJpdikgfHwgSU5URUxfR0VOKGRldl9wcml2KSA+ PSA5KSB7Cj4gIAkJdTMyIHZhbCA9IDA7Cj4gIAo+IC0JCXN3aXRjaCAoaW50ZWxfY3J0Yy0+Y29u ZmlnLT5waXBlX2JwcCkgewo+ICsJCXN3aXRjaCAoY3J0Y19zdGF0ZS0+cGlwZV9icHApIHsKPiAg CQljYXNlIDE4Ogo+ICAJCQl2YWwgfD0gUElQRU1JU0NfRElUSEVSXzZfQlBDOwo+ICAJCQlicmVh azsKPiBAQCAtODUxOSwxMCArODUxOSwxMCBAQCBzdGF0aWMgdm9pZCBoYXN3ZWxsX3NldF9waXBl bWlzYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIAkJCUJVRygpOwo+ICAJCX0KPiAgCj4gLQkJ aWYgKGludGVsX2NydGMtPmNvbmZpZy0+ZGl0aGVyKQo+ICsJCWlmIChjcnRjX3N0YXRlLT5kaXRo ZXIpCj4gIAkJCXZhbCB8PSBQSVBFTUlTQ19ESVRIRVJfRU5BQkxFIHwgUElQRU1JU0NfRElUSEVS X1RZUEVfU1A7Cj4gIAo+IC0JCWlmIChjb25maWctPnljYmNyNDIwKSB7Cj4gKwkJaWYgKGNydGNf c3RhdGUtPnljYmNyNDIwKSB7Cj4gIAkJCXZhbCB8PSBQSVBFTUlTQ19PVVRQVVRfQ09MT1JTUEFD RV9ZVVYgfAo+ICAJCQkJUElQRU1JU0NfWVVWNDIwX0VOQUJMRSB8Cj4gIAkJCQlQSVBFTUlTQ19Z VVY0MjBfTU9ERV9GVUxMX0JMRU5EOwo+IC0tIAo+IDIuMTkuMAo+IAo+IF9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzD pApJbnRlbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK