From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 02/11] drm/i915: Remove hw.mode Date: Mon, 18 Nov 2019 19:17:45 +0200 Message-ID: <20191118171745.GV1208@intel.com> References: <20191114160522.9699-1-maarten.lankhorst@linux.intel.com> <20191114160522.9699-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 mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8E49A89E3E for ; Mon, 18 Nov 2019 17:17:48 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20191114160522.9699-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 T24gVGh1LCBOb3YgMTQsIDIwMTkgYXQgMDU6MDU6MTNQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gVGhlIG1lbWJlcnMgaW4gaHcubW9kZSBjYW4gYmUgdXNlZCBmcm9tIGFkanVz dGVkX21vZGUgYXMgd2VsbCwKPiB1c2UgdGhhdCB3aGVuIGF2YWlsYWJsZS4KPiAKPiBTb21lIHBs YWNlcyB0aGF0IHVzZSBody5tb2RlIGNhbiBiZSBjb252ZXJ0ZWQgdG8gdXNlIGFkanVzdGVkX21v ZGUKPiBhcyB3ZWxsLgo+IAo+IFNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFy dGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jICB8IDQ5ICsrKysrKysrKystLS0tLS0tLS0KPiAg Li4uL2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oICAgIHwgIDIgKy0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYyAgICAgIHwgIDIgKy0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zZHZvLmMgICAgIHwgMTYgKysrLS0t Cj4gIDQgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMzUgZGVsZXRpb25zKC0pCj4g Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRl eCBhZGY1MGM0YjM4YWQuLjE4YWNlY2MzNjQyZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTg0NDAsOSArODQ0MCw2IEBAIHN0YXRp YyB2b2lkIGludGVsX2dldF9waXBlX3NyY19zaXplKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ ICAJdG1wID0gSTkxNV9SRUFEKFBJUEVTUkMoY3J0Yy0+cGlwZSkpOwo+ICAJcGlwZV9jb25maWct PnBpcGVfc3JjX2ggPSAodG1wICYgMHhmZmZmKSArIDE7Cj4gIAlwaXBlX2NvbmZpZy0+cGlwZV9z cmNfdyA9ICgodG1wID4+IDE2KSAmIDB4ZmZmZikgKyAxOwo+IC0KPiAtCXBpcGVfY29uZmlnLT5o dy5tb2RlLnZkaXNwbGF5ID0gcGlwZV9jb25maWctPnBpcGVfc3JjX2g7Cj4gLQlwaXBlX2NvbmZp Zy0+aHcubW9kZS5oZGlzcGxheSA9IHBpcGVfY29uZmlnLT5waXBlX3NyY193Owo+ICB9Cj4gIAo+ ICB2b2lkIGludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZyhzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9k ZSAqbW9kZSwKPiBAQCAtMTIwOTgsOCArMTIwOTUsOCBAQCBzdGF0aWMgaW50IGljbF9hZGRfc3lu Y19tb2RlX2NydGNzKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICAJCQlj b250aW51ZTsKPiAgCQlpZiAoIWNvbm5lY3Rvci0+aGFzX3RpbGUpCj4gIAkJCWNvbnRpbnVlOwo+ IC0JCWlmIChjcnRjX3N0YXRlLT5ody5tb2RlLmhkaXNwbGF5ICE9IGNvbm5lY3Rvci0+dGlsZV9o X3NpemUgfHwKPiAtCQkgICAgY3J0Y19zdGF0ZS0+aHcubW9kZS52ZGlzcGxheSAhPSBjb25uZWN0 b3ItPnRpbGVfdl9zaXplKQo+ICsJCWlmIChjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLmNy dGNfaGRpc3BsYXkgIT0gY29ubmVjdG9yLT50aWxlX2hfc2l6ZSB8fAo+ICsJCSAgICBjcnRjX3N0 YXRlLT5ody5hZGp1c3RlZF9tb2RlLmNydGNfdmRpc3BsYXkgIT0gY29ubmVjdG9yLT50aWxlX3Zf c2l6ZSkKClVzaW5nIGFkanVzdGVkX21vZGUgYmVmb3JlIC5jb21wdXRlX2NvbmZpZygpIHNlZW1z IGxpa2UgYSBiYWQgaWRlYS4KCj4gIAkJCXJldHVybiAwOwo+ICAJCWlmIChjb25uZWN0b3ItPnRp bGVfaF9sb2MgPT0gY29ubmVjdG9yLT5udW1faF90aWxlIC0gMSAmJgo+ICAJCSAgICBjb25uZWN0 b3ItPnRpbGVfdl9sb2MgPT0gY29ubmVjdG9yLT5udW1fdl90aWxlIC0gMSkKPiBAQCAtMTI1MDYs NyArMTI1MDMsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kdW1wX3BpcGVfY29uZmlnKGNvbnN0IHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKPiAgCQlpbnRlbF9kdW1wX2luZm9m cmFtZShkZXZfcHJpdiwgJnBpcGVfY29uZmlnLT5pbmZvZnJhbWVzLmhkbWkpOwo+ICAKPiAgCURS TV9ERUJVR19LTVMoInJlcXVlc3RlZCBtb2RlOlxuIik7Cj4gLQlkcm1fbW9kZV9kZWJ1Z19wcmlu dG1vZGVsaW5lKCZwaXBlX2NvbmZpZy0+aHcubW9kZSk7Cj4gKwlkcm1fbW9kZV9kZWJ1Z19wcmlu dG1vZGVsaW5lKCZwaXBlX2NvbmZpZy0+dWFwaS5tb2RlKTsKPiAgCURSTV9ERUJVR19LTVMoImFk anVzdGVkIG1vZGU6XG4iKTsKPiAgCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoJnBpcGVf Y29uZmlnLT5ody5hZGp1c3RlZF9tb2RlKTsKPiAgCWludGVsX2R1bXBfY3J0Y190aW1pbmdzKCZw aXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZSk7Cj4gQEAgLTEyNjQwLDE2ICsxMjYzNywxNiBA QCBpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKPiAgewo+ICAJY3J0Y19zdGF0ZS0+aHcuZW5hYmxlID0gY3J0Y19zdGF0 ZS0+dWFwaS5lbmFibGU7Cj4gIAljcnRjX3N0YXRlLT5ody5hY3RpdmUgPSBjcnRjX3N0YXRlLT51 YXBpLmFjdGl2ZTsKPiAtCWNydGNfc3RhdGUtPmh3Lm1vZGUgPSBjcnRjX3N0YXRlLT51YXBpLm1v ZGU7Cj4gIAljcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlID0gY3J0Y19zdGF0ZS0+dWFwaS5h ZGp1c3RlZF9tb2RlOwo+ICAJaW50ZWxfY3J0Y19jb3B5X3VhcGlfdG9faHdfc3RhdGVfbm9tb2Rl c2V0KGNydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2NvcHlf aHdfdG9fdWFwaV9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAr c3RhdGljIHZvaWQgaW50ZWxfY3J0Y19jb3B5X2h3X3RvX3VhcGlfc3RhdGUoc3RydWN0IGludGVs X2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gKwkJCQkJICAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqdXNlcl9tb2RlKQo+ICB7Cj4gIAljcnRjX3N0YXRlLT51YXBpLmVuYWJsZSA9IGNydGNf c3RhdGUtPmh3LmVuYWJsZTsKPiAgCWNydGNfc3RhdGUtPnVhcGkuYWN0aXZlID0gY3J0Y19zdGF0 ZS0+aHcuYWN0aXZlOwo+IC0JV0FSTl9PTihkcm1fYXRvbWljX3NldF9tb2RlX2Zvcl9jcnRjKCZj cnRjX3N0YXRlLT51YXBpLCAmY3J0Y19zdGF0ZS0+aHcubW9kZSkgPCAwKTsKPiArCVdBUk5fT04o ZHJtX2F0b21pY19zZXRfbW9kZV9mb3JfY3J0YygmY3J0Y19zdGF0ZS0+dWFwaSwgdXNlcl9tb2Rl KSA8IDApOwo+ICAKPiAgCWNydGNfc3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZSA9IGNydGNfc3Rh dGUtPmh3LmFkanVzdGVkX21vZGU7Cj4gIAo+IEBAIC0xMjcwMiw2ICsxMjY5OSwxMCBAQCBpbnRl bF9jcnRjX3ByZXBhcmVfY2xlYXJlZF9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0 Y19zdGF0ZSkKPiAgCW1lbWNweShjcnRjX3N0YXRlLCBzYXZlZF9zdGF0ZSwgc2l6ZW9mKCpjcnRj X3N0YXRlKSk7Cj4gIAlrZnJlZShzYXZlZF9zdGF0ZSk7Cj4gIAo+ICsJLyogQ2xlYXIgSTkxNV9N T0RFX0ZMQUdfSU5IRVJJVEVEICovCj4gKwljcnRjX3N0YXRlLT51YXBpLm1vZGUucHJpdmF0ZV9m bGFncyA9IDA7Cj4gKwljcnRjX3N0YXRlLT51YXBpLmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFn cyA9IDA7Cj4gKwo+ICAJaW50ZWxfY3J0Y19jb3B5X3VhcGlfdG9faHdfc3RhdGUoY3J0Y19zdGF0 ZSk7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gQEAgLTEyNzUwLDcgKzEyNzUxLDcgQEAgaW50ZWxfbW9k ZXNldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4g IAkgKiBjb21wdXRhdGlvbiB0byBjbGVhcmx5IGRpc3Rpbmd1aXNoIGl0IGZyb20gdGhlIGFkanVz dGVkIG1vZGUsIHdoaWNoCj4gIAkgKiBjYW4gYmUgY2hhbmdlZCBieSB0aGUgY29ubmVjdG9ycyBp biB0aGUgYmVsb3cgcmV0cnkgbG9vcC4KPiAgCSAqLwo+IC0JZHJtX21vZGVfZ2V0X2h2X3RpbWlu ZygmcGlwZV9jb25maWctPmh3Lm1vZGUsCj4gKwlkcm1fbW9kZV9nZXRfaHZfdGltaW5nKCZwaXBl X2NvbmZpZy0+aHcucGlwZV9tb2RlLAo+ICAJCQkgICAgICAgJnBpcGVfY29uZmlnLT5waXBlX3Ny Y193LAo+ICAJCQkgICAgICAgJnBpcGVfY29uZmlnLT5waXBlX3NyY19oKTsKPiAgCj4gQEAgLTEy ODUyLDYgKzEyODUzLDggQEAgaW50ZWxfbW9kZXNldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4gIAkgKi8KPiAgCXBpcGVfY29uZmlnLT51YXBpLmFk anVzdGVkX21vZGUgPSBwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsKPiAgCj4gKwkvKiB3 aXRob3V0IGJpZ2pvaW5lciwgcGlwZV9tb2RlID09IGFkanVzdGVkX21vZGUgKi8KPiArCXBpcGVf Y29uZmlnLT5ody5waXBlX21vZGUgPSBwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsKCk1p c3BsYWNlZCBodW5rcz8KCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMTI5OTUsOCArMTI5 OTgsOCBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjdXJyZW50X2NvbmZpZywKPiAgCWJvb2wgcmV0ID0gdHJ1ZTsKPiAgCXUzMiBicF9n YW1tYSA9IDA7Cj4gIAlib29sIGZpeHVwX2luaGVyaXRlZCA9IGZhc3RzZXQgJiYKPiAtCQkoY3Vy cmVudF9jb25maWctPmh3Lm1vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9GTEFHX0lOSEVS SVRFRCkgJiYKPiAtCQkhKHBpcGVfY29uZmlnLT5ody5tb2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1 X01PREVfRkxBR19JTkhFUklURUQpOwo+ICsJCShjdXJyZW50X2NvbmZpZy0+aHcuYWRqdXN0ZWRf bW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKSAmJgo+ICsJCSEo cGlwZV9jb25maWctPmh3LmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9G TEFHX0lOSEVSSVRFRCk7Cj4gIAo+ICAJaWYgKGZpeHVwX2luaGVyaXRlZCAmJiAhZmFzdGJvb3Rf ZW5hYmxlZChkZXZfcHJpdikpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJpbml0aWFsIG1vZGVzZXQg YW5kIGZhc3Rib290IG5vdCBzZXRcbiIpOwo+IEBAIC0xNDEwNiw4ICsxNDEwOSw4IEBAIHN0YXRp YyBpbnQgaW50ZWxfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkvKiBD YXRjaCBJOTE1X01PREVfRkxBR19JTkhFUklURUQgKi8KPiAgCWZvcl9lYWNoX29sZG5ld19pbnRl bF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwKPiAgCQkJCQkgICAg bmV3X2NydGNfc3RhdGUsIGkpIHsKPiAtCQlpZiAobmV3X2NydGNfc3RhdGUtPmh3Lm1vZGUucHJp dmF0ZV9mbGFncyAhPQo+IC0JCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcubW9kZS5wcml2YXRlX2Zs YWdzKQo+ICsJCWlmIChuZXdfY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2Zs YWdzICE9Cj4gKwkJICAgIG9sZF9jcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLnByaXZhdGVf ZmxhZ3MpCj4gIAkJCW5ld19jcnRjX3N0YXRlLT51YXBpLm1vZGVfY2hhbmdlZCA9IHRydWU7Cj4g IAl9Cj4gIAo+IEBAIC0xNDM2MSw3ICsxNDM2NCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3VwZGF0 ZV9jcnRjKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ICAJICogb2YgZW5hYmxpbmcgdGhlbSBv biB0aGUgQ1JUQydzIGZpcnN0IGZhc3RzZXQuCj4gIAkgKi8KPiAgCWlmIChuZXdfY3J0Y19zdGF0 ZS0+dXBkYXRlX3BpcGUgJiYgIW1vZGVzZXQgJiYKPiAtCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcu bW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKQo+ICsJICAgIG9s ZF9jcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1X01PREVf RkxBR19JTkhFUklURUQpCj4gIAkJaW50ZWxfY3J0Y19hcm1fZmlmb191bmRlcnJ1bihjcnRjLCBu ZXdfY3J0Y19zdGF0ZSk7Cj4gIH0KPiAgCj4gQEAgLTE0NTU4LDcgKzE0NTYxLDcgQEAgc3RhdGlj IHZvaWQgaW50ZWxfcG9zdF9jcnRjX2VuYWJsZV91cGRhdGVzKHN0cnVjdCBpbnRlbF9jcnRjICpj cnRjLAo+ICAJICogb2YgZW5hYmxpbmcgdGhlbSBvbiB0aGUgQ1JUQydzIGZpcnN0IGZhc3RzZXQu Cj4gIAkgKi8KPiAgCWlmIChuZXdfY3J0Y19zdGF0ZS0+dXBkYXRlX3BpcGUgJiYgIW1vZGVzZXQg JiYKPiAtCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcubW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9N T0RFX0ZMQUdfSU5IRVJJVEVEKQo+ICsJICAgIG9sZF9jcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9t b2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1X01PREVfRkxBR19JTkhFUklURUQpCj4gIAkJaW50ZWxf Y3J0Y19hcm1fZmlmb191bmRlcnJ1bihjcnRjLCBuZXdfY3J0Y19zdGF0ZSk7Cj4gIH0KPiAgCj4g QEAgLTE3NTI0LDE1ICsxNzUyNywxMSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rlc2V0X3JlYWRv dXRfaHdfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQlpbnQgbWluX2NkY2xrID0g MDsKPiAgCj4gIAkJaWYgKGNydGNfc3RhdGUtPmh3LmFjdGl2ZSkgewo+IC0JCQlzdHJ1Y3QgZHJt X2Rpc3BsYXlfbW9kZSAqbW9kZSA9ICZjcnRjX3N0YXRlLT5ody5tb2RlOwo+ICsJCQlzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSBtb2RlOwo+ICAKPiAgCQkJaW50ZWxfbW9kZV9mcm9tX3BpcGVfY29u ZmlnKCZjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLAo+ICAJCQkJCQkgICAgY3J0Y19zdGF0 ZSk7Cj4gIAo+IC0JCQkqbW9kZSA9IGNydGNfc3RhdGUtPmh3LmFkanVzdGVkX21vZGU7Cj4gLQkJ CW1vZGUtPmhkaXNwbGF5ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfdzsKPiAtCQkJbW9kZS0+dmRp c3BsYXkgPSBjcnRjX3N0YXRlLT5waXBlX3NyY19oOwo+IC0KPiAgCQkJLyoKPiAgCQkJICogVGhl IGluaXRpYWwgbW9kZSBuZWVkcyB0byBiZSBzZXQgaW4gb3JkZXIgdG8ga2VlcAo+ICAJCQkgKiB0 aGUgYXRvbWljIGNvcmUgaGFwcHkuIEl0IHdhbnRzIGEgdmFsaWQgbW9kZSBpZiB0aGUKPiBAQCAt MTc1NDIsMTMgKzE3NTQxLDE3IEBAIHN0YXRpYyB2b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9o d19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCQkgKiBzZXQgYSBmbGFnIHRvIGlu ZGljYXRlIHRoYXQgYSBmdWxsIHJlY2FsY3VsYXRpb24gaXMKPiAgCQkJICogbmVlZGVkIG9uIHRo ZSBuZXh0IGNvbW1pdC4KPiAgCQkJICovCj4gLQkJCW1vZGUtPnByaXZhdGVfZmxhZ3MgPSBJOTE1 X01PREVfRkxBR19JTkhFUklURUQ7Cj4gKwkJCWNydGNfc3RhdGUtPmh3LmFkanVzdGVkX21vZGUu cHJpdmF0ZV9mbGFncyA9IEk5MTVfTU9ERV9GTEFHX0lOSEVSSVRFRDsKPiArCj4gKwkJCW1vZGUg PSBjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlOwo+ICsJCQltb2RlLmhkaXNwbGF5ID0gY3J0 Y19zdGF0ZS0+cGlwZV9zcmNfdzsKPiArCQkJbW9kZS52ZGlzcGxheSA9IGNydGNfc3RhdGUtPnBp cGVfc3JjX2g7Cj4gIAo+ICAJCQlpbnRlbF9jcnRjX2NvbXB1dGVfcGl4ZWxfcmF0ZShjcnRjX3N0 YXRlKTsKPiAgCj4gIAkJCWludGVsX2NydGNfdXBkYXRlX2FjdGl2ZV90aW1pbmdzKGNydGNfc3Rh dGUpOwo+ICAKPiAtCQkJaW50ZWxfY3J0Y19jb3B5X2h3X3RvX3VhcGlfc3RhdGUoY3J0Y19zdGF0 ZSk7Cj4gKwkJCWludGVsX2NydGNfY29weV9od190b191YXBpX3N0YXRlKGNydGNfc3RhdGUsICZt b2RlKTsKPiAgCQl9Cj4gIAo+ICAJCWZvcl9lYWNoX2ludGVsX3BsYW5lX29uX2NydGMoJmRldl9w cml2LT5kcm0sIGNydGMsIHBsYW5lKSB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgKPiBpbmRleCA4M2VhMDQxNDliNzcuLjBmMjBj NzE5MGVlZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2Rpc3BsYXlfdHlwZXMuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheV90eXBlcy5oCj4gQEAgLTgwMiw3ICs4MDIsNyBAQCBzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSB7Cj4gIAlzdHJ1Y3Qgewo+ICAJCWJvb2wgYWN0aXZlLCBlbmFibGU7Cj4gIAkJc3Ry dWN0IGRybV9wcm9wZXJ0eV9ibG9iICpkZWdhbW1hX2x1dCwgKmdhbW1hX2x1dCwgKmN0bTsKPiAt CQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBtb2RlLCBhZGp1c3RlZF9tb2RlOwo+ICsJCXN0cnVj dCBkcm1fZGlzcGxheV9tb2RlIGFkanVzdGVkX21vZGU7Cj4gIAl9IGh3Owo+ICAKPiAgCS8qKgo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2R2by5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYwo+IGluZGV4IGE3NGRjNWI5 MTVkMS4uYWQ4ZTk5NTlkNmUxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfZHZvLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2R2by5jCj4gQEAgLTIwNyw3ICsyMDcsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9lbmFibGVf ZHZvKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJdTMyIHRlbXAgPSBJOTE1X1JF QUQoZHZvX3JlZyk7Cj4gIAo+ICAJaW50ZWxfZHZvLT5kZXYuZGV2X29wcy0+bW9kZV9zZXQoJmlu dGVsX2R2by0+ZGV2LAo+IC0JCQkJCSAmcGlwZV9jb25maWctPmh3Lm1vZGUsCj4gKwkJCQkJICZw aXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZSwKPiAgCQkJCQkgJnBpcGVfY29uZmlnLT5ody5h ZGp1c3RlZF9tb2RlKTsKPiAgCj4gIAlJOTE1X1dSSVRFKGR2b19yZWcsIHRlbXAgfCBEVk9fRU5B QkxFKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9z ZHZvLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Nkdm8uYwo+IGluZGV4 IGE0YjEzMzlmY2MwMC4uNGJhNzY0OGEzMTQ1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfc2R2by5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9zZHZvLmMKPiBAQCAtMTIxMyw3ICsxMjEzLDYgQEAgaW50ZWxfc2R2b19z ZXRfb3V0cHV0X3RpbWluZ3NfZnJvbV9tb2RlKHN0cnVjdCBpbnRlbF9zZHZvICppbnRlbF9zZHZv LAo+ICBzdGF0aWMgYm9vbAo+ICBpbnRlbF9zZHZvX2dldF9wcmVmZXJyZWRfaW5wdXRfbW9kZShz dHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKPiAgCQkJCSAgICBzdHJ1Y3QgaW50ZWxfc2R2 b19jb25uZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yLAo+IC0JCQkJICAgIGNvbnN0IHN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAo+ICAJCQkJICAgIHN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICphZGp1c3RlZF9tb2RlKQo+ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxfc2R2b19kdGQgaW5wdXRf ZHRkOwo+IEBAIC0xMjI0LDkgKzEyMjMsOSBAQCBpbnRlbF9zZHZvX2dldF9wcmVmZXJyZWRfaW5w dXRfbW9kZShzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKPiAgCj4gIAlpZiAoIWludGVs X3Nkdm9fY3JlYXRlX3ByZWZlcnJlZF9pbnB1dF90aW1pbmcoaW50ZWxfc2R2bywKPiAgCQkJCQkJ ICAgICAgaW50ZWxfc2R2b19jb25uZWN0b3IsCj4gLQkJCQkJCSAgICAgIG1vZGUtPmNsb2NrIC8g MTAsCj4gLQkJCQkJCSAgICAgIG1vZGUtPmhkaXNwbGF5LAo+IC0JCQkJCQkgICAgICBtb2RlLT52 ZGlzcGxheSkpCj4gKwkJCQkJCSAgICAgIGFkanVzdGVkX21vZGUtPmNsb2NrIC8gMTAsCj4gKwkJ CQkJCSAgICAgIGFkanVzdGVkX21vZGUtPmhkaXNwbGF5LAo+ICsJCQkJCQkgICAgICBhZGp1c3Rl ZF9tb2RlLT52ZGlzcGxheSkpCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAKPiAgCWlmICghaW50ZWxf c2R2b19nZXRfcHJlZmVycmVkX2lucHV0X3RpbWluZyhpbnRlbF9zZHZvLAo+IEBAIC0xMjc3LDcg KzEyNzYsNiBAQCBzdGF0aWMgaW50IGludGVsX3Nkdm9fY29tcHV0ZV9jb25maWcoc3RydWN0IGlu dGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAlzdHJ1Y3QgaW50ZWxfc2R2b19jb25uZWN0b3IgKmlu dGVsX3Nkdm9fY29ubmVjdG9yID0KPiAgCQl0b19pbnRlbF9zZHZvX2Nvbm5lY3Rvcihjb25uX3N0 YXRlLT5jb25uZWN0b3IpOwo+ICAJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21v ZGUgPSAmcGlwZV9jb25maWctPmh3LmFkanVzdGVkX21vZGU7Cj4gLQlzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqbW9kZSA9ICZwaXBlX2NvbmZpZy0+aHcubW9kZTsKPiAgCj4gIAlEUk1fREVCVUdf S01TKCJmb3JjaW5nIGJwYyB0byA4IGZvciBTRFZPXG4iKTsKPiAgCXBpcGVfY29uZmlnLT5waXBl X2JwcCA9IDgqMzsKPiBAQCAtMTI5MywxMiArMTI5MSwxMiBAQCBzdGF0aWMgaW50IGludGVsX3Nk dm9fY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkgKiB0 aGUgc2VxdWVuY2UgdG8gZG8gaXQuIE9oIHdlbGwuCj4gIAkgKi8KPiAgCWlmIChJU19UVihpbnRl bF9zZHZvX2Nvbm5lY3RvcikpIHsKPiAtCQlpZiAoIWludGVsX3Nkdm9fc2V0X291dHB1dF90aW1p bmdzX2Zyb21fbW9kZShpbnRlbF9zZHZvLCBtb2RlKSkKPiArCQlpZiAoIWludGVsX3Nkdm9fc2V0 X291dHB1dF90aW1pbmdzX2Zyb21fbW9kZShpbnRlbF9zZHZvLAo+ICsJCQkJCQkJICAgICBhZGp1 c3RlZF9tb2RlKSkKPiAgCQkJcmV0dXJuIC1FSU5WQUw7Cj4gIAo+ICAJCSh2b2lkKSBpbnRlbF9z ZHZvX2dldF9wcmVmZXJyZWRfaW5wdXRfbW9kZShpbnRlbF9zZHZvLAo+ICAJCQkJCQkJICAgaW50 ZWxfc2R2b19jb25uZWN0b3IsCj4gLQkJCQkJCQkgICBtb2RlLAo+ICAJCQkJCQkJICAgYWRqdXN0 ZWRfbW9kZSk7Cj4gIAkJcGlwZV9jb25maWctPnNkdm9fdHZfY2xvY2sgPSB0cnVlOwo+ICAJfSBl bHNlIGlmIChJU19MVkRTKGludGVsX3Nkdm9fY29ubmVjdG9yKSkgewo+IEBAIC0xMzA4LDcgKzEz MDYsNiBAQCBzdGF0aWMgaW50IGludGVsX3Nkdm9fY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVs X2VuY29kZXIgKmVuY29kZXIsCj4gIAo+ICAJCSh2b2lkKSBpbnRlbF9zZHZvX2dldF9wcmVmZXJy ZWRfaW5wdXRfbW9kZShpbnRlbF9zZHZvLAo+ICAJCQkJCQkJICAgaW50ZWxfc2R2b19jb25uZWN0 b3IsCj4gLQkJCQkJCQkgICBtb2RlLAo+ICAJCQkJCQkJICAgYWRqdXN0ZWRfbW9kZSk7Cj4gIAl9 Cj4gIAo+IEBAIC0xNDM1LDcgKzE0MzIsNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX3ByZV9l bmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIsCj4gIAkJdG9faW50ZWxf c2R2b19jb25uZWN0b3Jfc3RhdGUoY29ubl9zdGF0ZSk7Cj4gIAljb25zdCBzdHJ1Y3QgaW50ZWxf c2R2b19jb25uZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yID0KPiAgCQl0b19pbnRlbF9zZHZv X2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3IpOwo+IC0JY29uc3Qgc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKm1vZGUgPSAmY3J0Y19zdGF0ZS0+aHcubW9kZTsKPiAgCXN0cnVjdCBpbnRl bF9zZHZvICppbnRlbF9zZHZvID0gdG9fc2R2byhpbnRlbF9lbmNvZGVyKTsKPiAgCXUzMiBzZHZv eDsKPiAgCXN0cnVjdCBpbnRlbF9zZHZvX2luX291dF9tYXAgaW5fb3V0Owo+IEBAIC0xNDY4LDcg KzE0NjQsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX3ByZV9lbmFibGUoc3RydWN0IGludGVs X2VuY29kZXIgKmludGVsX2VuY29kZXIsCj4gIAkJaW50ZWxfc2R2b19nZXRfZHRkX2Zyb21fbW9k ZSgmb3V0cHV0X2R0ZCwKPiAgCQkJCQkgICAgIGludGVsX3Nkdm9fY29ubmVjdG9yLT5iYXNlLnBh bmVsLmZpeGVkX21vZGUpOwo+ICAJZWxzZQo+IC0JCWludGVsX3Nkdm9fZ2V0X2R0ZF9mcm9tX21v ZGUoJm91dHB1dF9kdGQsIG1vZGUpOwo+ICsJCWludGVsX3Nkdm9fZ2V0X2R0ZF9mcm9tX21vZGUo Jm91dHB1dF9kdGQsIGFkanVzdGVkX21vZGUpOwo+ICAJaWYgKCFpbnRlbF9zZHZvX3NldF9vdXRw dXRfdGltaW5nKGludGVsX3Nkdm8sICZvdXRwdXRfZHRkKSkKPiAgCQlEUk1fSU5GTygiU2V0dGlu ZyBvdXRwdXQgdGltaW5ncyBvbiAlcyBmYWlsZWRcbiIsCj4gIAkJCSBTRFZPX05BTUUoaW50ZWxf c2R2bykpOwo+IC0tIAo+IDIuMjQuMAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbApfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.4 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, UNWANTED_LANGUAGE_BODY,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id ECCCCC432C0 for ; Mon, 18 Nov 2019 17:17:50 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C717A20409 for ; Mon, 18 Nov 2019 17:17:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C717A20409 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 699ED89E3E; Mon, 18 Nov 2019 17:17:50 +0000 (UTC) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8E49A89E3E for ; Mon, 18 Nov 2019 17:17:48 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Nov 2019 09:17:48 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,320,1569308400"; d="scan'208";a="258463297" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by FMSMGA003.fm.intel.com with SMTP; 18 Nov 2019 09:17:46 -0800 Received: by stinkbox (sSMTP sendmail emulation); Mon, 18 Nov 2019 19:17:45 +0200 Date: Mon, 18 Nov 2019 19:17:45 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Maarten Lankhorst Message-ID: <20191118171745.GV1208@intel.com> References: <20191114160522.9699-1-maarten.lankhorst@linux.intel.com> <20191114160522.9699-2-maarten.lankhorst@linux.intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191114160522.9699-2-maarten.lankhorst@linux.intel.com> User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [Intel-gfx] [PATCH 02/11] drm/i915: Remove hw.mode X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: intel-gfx@lists.freedesktop.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191118171745.dcVOTqWvk5C_9ceLOXSzWzbplNCbS885Xm1vfjCy5LE@z> T24gVGh1LCBOb3YgMTQsIDIwMTkgYXQgMDU6MDU6MTNQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gVGhlIG1lbWJlcnMgaW4gaHcubW9kZSBjYW4gYmUgdXNlZCBmcm9tIGFkanVz dGVkX21vZGUgYXMgd2VsbCwKPiB1c2UgdGhhdCB3aGVuIGF2YWlsYWJsZS4KPiAKPiBTb21lIHBs YWNlcyB0aGF0IHVzZSBody5tb2RlIGNhbiBiZSBjb252ZXJ0ZWQgdG8gdXNlIGFkanVzdGVkX21v ZGUKPiBhcyB3ZWxsLgo+IAo+IFNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFy dGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jICB8IDQ5ICsrKysrKysrKystLS0tLS0tLS0KPiAg Li4uL2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oICAgIHwgIDIgKy0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYyAgICAgIHwgIDIgKy0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zZHZvLmMgICAgIHwgMTYgKysrLS0t Cj4gIDQgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMzUgZGVsZXRpb25zKC0pCj4g Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRl eCBhZGY1MGM0YjM4YWQuLjE4YWNlY2MzNjQyZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTg0NDAsOSArODQ0MCw2IEBAIHN0YXRp YyB2b2lkIGludGVsX2dldF9waXBlX3NyY19zaXplKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ ICAJdG1wID0gSTkxNV9SRUFEKFBJUEVTUkMoY3J0Yy0+cGlwZSkpOwo+ICAJcGlwZV9jb25maWct PnBpcGVfc3JjX2ggPSAodG1wICYgMHhmZmZmKSArIDE7Cj4gIAlwaXBlX2NvbmZpZy0+cGlwZV9z cmNfdyA9ICgodG1wID4+IDE2KSAmIDB4ZmZmZikgKyAxOwo+IC0KPiAtCXBpcGVfY29uZmlnLT5o dy5tb2RlLnZkaXNwbGF5ID0gcGlwZV9jb25maWctPnBpcGVfc3JjX2g7Cj4gLQlwaXBlX2NvbmZp Zy0+aHcubW9kZS5oZGlzcGxheSA9IHBpcGVfY29uZmlnLT5waXBlX3NyY193Owo+ICB9Cj4gIAo+ ICB2b2lkIGludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZyhzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9k ZSAqbW9kZSwKPiBAQCAtMTIwOTgsOCArMTIwOTUsOCBAQCBzdGF0aWMgaW50IGljbF9hZGRfc3lu Y19tb2RlX2NydGNzKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICAJCQlj b250aW51ZTsKPiAgCQlpZiAoIWNvbm5lY3Rvci0+aGFzX3RpbGUpCj4gIAkJCWNvbnRpbnVlOwo+ IC0JCWlmIChjcnRjX3N0YXRlLT5ody5tb2RlLmhkaXNwbGF5ICE9IGNvbm5lY3Rvci0+dGlsZV9o X3NpemUgfHwKPiAtCQkgICAgY3J0Y19zdGF0ZS0+aHcubW9kZS52ZGlzcGxheSAhPSBjb25uZWN0 b3ItPnRpbGVfdl9zaXplKQo+ICsJCWlmIChjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLmNy dGNfaGRpc3BsYXkgIT0gY29ubmVjdG9yLT50aWxlX2hfc2l6ZSB8fAo+ICsJCSAgICBjcnRjX3N0 YXRlLT5ody5hZGp1c3RlZF9tb2RlLmNydGNfdmRpc3BsYXkgIT0gY29ubmVjdG9yLT50aWxlX3Zf c2l6ZSkKClVzaW5nIGFkanVzdGVkX21vZGUgYmVmb3JlIC5jb21wdXRlX2NvbmZpZygpIHNlZW1z IGxpa2UgYSBiYWQgaWRlYS4KCj4gIAkJCXJldHVybiAwOwo+ICAJCWlmIChjb25uZWN0b3ItPnRp bGVfaF9sb2MgPT0gY29ubmVjdG9yLT5udW1faF90aWxlIC0gMSAmJgo+ICAJCSAgICBjb25uZWN0 b3ItPnRpbGVfdl9sb2MgPT0gY29ubmVjdG9yLT5udW1fdl90aWxlIC0gMSkKPiBAQCAtMTI1MDYs NyArMTI1MDMsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kdW1wX3BpcGVfY29uZmlnKGNvbnN0IHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKPiAgCQlpbnRlbF9kdW1wX2luZm9m cmFtZShkZXZfcHJpdiwgJnBpcGVfY29uZmlnLT5pbmZvZnJhbWVzLmhkbWkpOwo+ICAKPiAgCURS TV9ERUJVR19LTVMoInJlcXVlc3RlZCBtb2RlOlxuIik7Cj4gLQlkcm1fbW9kZV9kZWJ1Z19wcmlu dG1vZGVsaW5lKCZwaXBlX2NvbmZpZy0+aHcubW9kZSk7Cj4gKwlkcm1fbW9kZV9kZWJ1Z19wcmlu dG1vZGVsaW5lKCZwaXBlX2NvbmZpZy0+dWFwaS5tb2RlKTsKPiAgCURSTV9ERUJVR19LTVMoImFk anVzdGVkIG1vZGU6XG4iKTsKPiAgCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoJnBpcGVf Y29uZmlnLT5ody5hZGp1c3RlZF9tb2RlKTsKPiAgCWludGVsX2R1bXBfY3J0Y190aW1pbmdzKCZw aXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZSk7Cj4gQEAgLTEyNjQwLDE2ICsxMjYzNywxNiBA QCBpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKPiAgewo+ICAJY3J0Y19zdGF0ZS0+aHcuZW5hYmxlID0gY3J0Y19zdGF0 ZS0+dWFwaS5lbmFibGU7Cj4gIAljcnRjX3N0YXRlLT5ody5hY3RpdmUgPSBjcnRjX3N0YXRlLT51 YXBpLmFjdGl2ZTsKPiAtCWNydGNfc3RhdGUtPmh3Lm1vZGUgPSBjcnRjX3N0YXRlLT51YXBpLm1v ZGU7Cj4gIAljcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlID0gY3J0Y19zdGF0ZS0+dWFwaS5h ZGp1c3RlZF9tb2RlOwo+ICAJaW50ZWxfY3J0Y19jb3B5X3VhcGlfdG9faHdfc3RhdGVfbm9tb2Rl c2V0KGNydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2NvcHlf aHdfdG9fdWFwaV9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAr c3RhdGljIHZvaWQgaW50ZWxfY3J0Y19jb3B5X2h3X3RvX3VhcGlfc3RhdGUoc3RydWN0IGludGVs X2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gKwkJCQkJICAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqdXNlcl9tb2RlKQo+ICB7Cj4gIAljcnRjX3N0YXRlLT51YXBpLmVuYWJsZSA9IGNydGNf c3RhdGUtPmh3LmVuYWJsZTsKPiAgCWNydGNfc3RhdGUtPnVhcGkuYWN0aXZlID0gY3J0Y19zdGF0 ZS0+aHcuYWN0aXZlOwo+IC0JV0FSTl9PTihkcm1fYXRvbWljX3NldF9tb2RlX2Zvcl9jcnRjKCZj cnRjX3N0YXRlLT51YXBpLCAmY3J0Y19zdGF0ZS0+aHcubW9kZSkgPCAwKTsKPiArCVdBUk5fT04o ZHJtX2F0b21pY19zZXRfbW9kZV9mb3JfY3J0YygmY3J0Y19zdGF0ZS0+dWFwaSwgdXNlcl9tb2Rl KSA8IDApOwo+ICAKPiAgCWNydGNfc3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZSA9IGNydGNfc3Rh dGUtPmh3LmFkanVzdGVkX21vZGU7Cj4gIAo+IEBAIC0xMjcwMiw2ICsxMjY5OSwxMCBAQCBpbnRl bF9jcnRjX3ByZXBhcmVfY2xlYXJlZF9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0 Y19zdGF0ZSkKPiAgCW1lbWNweShjcnRjX3N0YXRlLCBzYXZlZF9zdGF0ZSwgc2l6ZW9mKCpjcnRj X3N0YXRlKSk7Cj4gIAlrZnJlZShzYXZlZF9zdGF0ZSk7Cj4gIAo+ICsJLyogQ2xlYXIgSTkxNV9N T0RFX0ZMQUdfSU5IRVJJVEVEICovCj4gKwljcnRjX3N0YXRlLT51YXBpLm1vZGUucHJpdmF0ZV9m bGFncyA9IDA7Cj4gKwljcnRjX3N0YXRlLT51YXBpLmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFn cyA9IDA7Cj4gKwo+ICAJaW50ZWxfY3J0Y19jb3B5X3VhcGlfdG9faHdfc3RhdGUoY3J0Y19zdGF0 ZSk7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gQEAgLTEyNzUwLDcgKzEyNzUxLDcgQEAgaW50ZWxfbW9k ZXNldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4g IAkgKiBjb21wdXRhdGlvbiB0byBjbGVhcmx5IGRpc3Rpbmd1aXNoIGl0IGZyb20gdGhlIGFkanVz dGVkIG1vZGUsIHdoaWNoCj4gIAkgKiBjYW4gYmUgY2hhbmdlZCBieSB0aGUgY29ubmVjdG9ycyBp biB0aGUgYmVsb3cgcmV0cnkgbG9vcC4KPiAgCSAqLwo+IC0JZHJtX21vZGVfZ2V0X2h2X3RpbWlu ZygmcGlwZV9jb25maWctPmh3Lm1vZGUsCj4gKwlkcm1fbW9kZV9nZXRfaHZfdGltaW5nKCZwaXBl X2NvbmZpZy0+aHcucGlwZV9tb2RlLAo+ICAJCQkgICAgICAgJnBpcGVfY29uZmlnLT5waXBlX3Ny Y193LAo+ICAJCQkgICAgICAgJnBpcGVfY29uZmlnLT5waXBlX3NyY19oKTsKPiAgCj4gQEAgLTEy ODUyLDYgKzEyODUzLDggQEAgaW50ZWxfbW9kZXNldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4gIAkgKi8KPiAgCXBpcGVfY29uZmlnLT51YXBpLmFk anVzdGVkX21vZGUgPSBwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsKPiAgCj4gKwkvKiB3 aXRob3V0IGJpZ2pvaW5lciwgcGlwZV9tb2RlID09IGFkanVzdGVkX21vZGUgKi8KPiArCXBpcGVf Y29uZmlnLT5ody5waXBlX21vZGUgPSBwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsKCk1p c3BsYWNlZCBodW5rcz8KCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMTI5OTUsOCArMTI5 OTgsOCBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjdXJyZW50X2NvbmZpZywKPiAgCWJvb2wgcmV0ID0gdHJ1ZTsKPiAgCXUzMiBicF9n YW1tYSA9IDA7Cj4gIAlib29sIGZpeHVwX2luaGVyaXRlZCA9IGZhc3RzZXQgJiYKPiAtCQkoY3Vy cmVudF9jb25maWctPmh3Lm1vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9GTEFHX0lOSEVS SVRFRCkgJiYKPiAtCQkhKHBpcGVfY29uZmlnLT5ody5tb2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1 X01PREVfRkxBR19JTkhFUklURUQpOwo+ICsJCShjdXJyZW50X2NvbmZpZy0+aHcuYWRqdXN0ZWRf bW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKSAmJgo+ICsJCSEo cGlwZV9jb25maWctPmh3LmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9G TEFHX0lOSEVSSVRFRCk7Cj4gIAo+ICAJaWYgKGZpeHVwX2luaGVyaXRlZCAmJiAhZmFzdGJvb3Rf ZW5hYmxlZChkZXZfcHJpdikpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJpbml0aWFsIG1vZGVzZXQg YW5kIGZhc3Rib290IG5vdCBzZXRcbiIpOwo+IEBAIC0xNDEwNiw4ICsxNDEwOSw4IEBAIHN0YXRp YyBpbnQgaW50ZWxfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkvKiBD YXRjaCBJOTE1X01PREVfRkxBR19JTkhFUklURUQgKi8KPiAgCWZvcl9lYWNoX29sZG5ld19pbnRl bF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwKPiAgCQkJCQkgICAg bmV3X2NydGNfc3RhdGUsIGkpIHsKPiAtCQlpZiAobmV3X2NydGNfc3RhdGUtPmh3Lm1vZGUucHJp dmF0ZV9mbGFncyAhPQo+IC0JCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcubW9kZS5wcml2YXRlX2Zs YWdzKQo+ICsJCWlmIChuZXdfY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2Zs YWdzICE9Cj4gKwkJICAgIG9sZF9jcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLnByaXZhdGVf ZmxhZ3MpCj4gIAkJCW5ld19jcnRjX3N0YXRlLT51YXBpLm1vZGVfY2hhbmdlZCA9IHRydWU7Cj4g IAl9Cj4gIAo+IEBAIC0xNDM2MSw3ICsxNDM2NCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3VwZGF0 ZV9jcnRjKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ICAJICogb2YgZW5hYmxpbmcgdGhlbSBv biB0aGUgQ1JUQydzIGZpcnN0IGZhc3RzZXQuCj4gIAkgKi8KPiAgCWlmIChuZXdfY3J0Y19zdGF0 ZS0+dXBkYXRlX3BpcGUgJiYgIW1vZGVzZXQgJiYKPiAtCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcu bW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKQo+ICsJICAgIG9s ZF9jcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1X01PREVf RkxBR19JTkhFUklURUQpCj4gIAkJaW50ZWxfY3J0Y19hcm1fZmlmb191bmRlcnJ1bihjcnRjLCBu ZXdfY3J0Y19zdGF0ZSk7Cj4gIH0KPiAgCj4gQEAgLTE0NTU4LDcgKzE0NTYxLDcgQEAgc3RhdGlj IHZvaWQgaW50ZWxfcG9zdF9jcnRjX2VuYWJsZV91cGRhdGVzKHN0cnVjdCBpbnRlbF9jcnRjICpj cnRjLAo+ICAJICogb2YgZW5hYmxpbmcgdGhlbSBvbiB0aGUgQ1JUQydzIGZpcnN0IGZhc3RzZXQu Cj4gIAkgKi8KPiAgCWlmIChuZXdfY3J0Y19zdGF0ZS0+dXBkYXRlX3BpcGUgJiYgIW1vZGVzZXQg JiYKPiAtCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcubW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9N T0RFX0ZMQUdfSU5IRVJJVEVEKQo+ICsJICAgIG9sZF9jcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9t b2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1X01PREVfRkxBR19JTkhFUklURUQpCj4gIAkJaW50ZWxf Y3J0Y19hcm1fZmlmb191bmRlcnJ1bihjcnRjLCBuZXdfY3J0Y19zdGF0ZSk7Cj4gIH0KPiAgCj4g QEAgLTE3NTI0LDE1ICsxNzUyNywxMSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rlc2V0X3JlYWRv dXRfaHdfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQlpbnQgbWluX2NkY2xrID0g MDsKPiAgCj4gIAkJaWYgKGNydGNfc3RhdGUtPmh3LmFjdGl2ZSkgewo+IC0JCQlzdHJ1Y3QgZHJt X2Rpc3BsYXlfbW9kZSAqbW9kZSA9ICZjcnRjX3N0YXRlLT5ody5tb2RlOwo+ICsJCQlzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSBtb2RlOwo+ICAKPiAgCQkJaW50ZWxfbW9kZV9mcm9tX3BpcGVfY29u ZmlnKCZjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLAo+ICAJCQkJCQkgICAgY3J0Y19zdGF0 ZSk7Cj4gIAo+IC0JCQkqbW9kZSA9IGNydGNfc3RhdGUtPmh3LmFkanVzdGVkX21vZGU7Cj4gLQkJ CW1vZGUtPmhkaXNwbGF5ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfdzsKPiAtCQkJbW9kZS0+dmRp c3BsYXkgPSBjcnRjX3N0YXRlLT5waXBlX3NyY19oOwo+IC0KPiAgCQkJLyoKPiAgCQkJICogVGhl IGluaXRpYWwgbW9kZSBuZWVkcyB0byBiZSBzZXQgaW4gb3JkZXIgdG8ga2VlcAo+ICAJCQkgKiB0 aGUgYXRvbWljIGNvcmUgaGFwcHkuIEl0IHdhbnRzIGEgdmFsaWQgbW9kZSBpZiB0aGUKPiBAQCAt MTc1NDIsMTMgKzE3NTQxLDE3IEBAIHN0YXRpYyB2b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9o d19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCQkgKiBzZXQgYSBmbGFnIHRvIGlu ZGljYXRlIHRoYXQgYSBmdWxsIHJlY2FsY3VsYXRpb24gaXMKPiAgCQkJICogbmVlZGVkIG9uIHRo ZSBuZXh0IGNvbW1pdC4KPiAgCQkJICovCj4gLQkJCW1vZGUtPnByaXZhdGVfZmxhZ3MgPSBJOTE1 X01PREVfRkxBR19JTkhFUklURUQ7Cj4gKwkJCWNydGNfc3RhdGUtPmh3LmFkanVzdGVkX21vZGUu cHJpdmF0ZV9mbGFncyA9IEk5MTVfTU9ERV9GTEFHX0lOSEVSSVRFRDsKPiArCj4gKwkJCW1vZGUg PSBjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlOwo+ICsJCQltb2RlLmhkaXNwbGF5ID0gY3J0 Y19zdGF0ZS0+cGlwZV9zcmNfdzsKPiArCQkJbW9kZS52ZGlzcGxheSA9IGNydGNfc3RhdGUtPnBp cGVfc3JjX2g7Cj4gIAo+ICAJCQlpbnRlbF9jcnRjX2NvbXB1dGVfcGl4ZWxfcmF0ZShjcnRjX3N0 YXRlKTsKPiAgCj4gIAkJCWludGVsX2NydGNfdXBkYXRlX2FjdGl2ZV90aW1pbmdzKGNydGNfc3Rh dGUpOwo+ICAKPiAtCQkJaW50ZWxfY3J0Y19jb3B5X2h3X3RvX3VhcGlfc3RhdGUoY3J0Y19zdGF0 ZSk7Cj4gKwkJCWludGVsX2NydGNfY29weV9od190b191YXBpX3N0YXRlKGNydGNfc3RhdGUsICZt b2RlKTsKPiAgCQl9Cj4gIAo+ICAJCWZvcl9lYWNoX2ludGVsX3BsYW5lX29uX2NydGMoJmRldl9w cml2LT5kcm0sIGNydGMsIHBsYW5lKSB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgKPiBpbmRleCA4M2VhMDQxNDliNzcuLjBmMjBj NzE5MGVlZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2Rpc3BsYXlfdHlwZXMuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheV90eXBlcy5oCj4gQEAgLTgwMiw3ICs4MDIsNyBAQCBzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSB7Cj4gIAlzdHJ1Y3Qgewo+ICAJCWJvb2wgYWN0aXZlLCBlbmFibGU7Cj4gIAkJc3Ry dWN0IGRybV9wcm9wZXJ0eV9ibG9iICpkZWdhbW1hX2x1dCwgKmdhbW1hX2x1dCwgKmN0bTsKPiAt CQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBtb2RlLCBhZGp1c3RlZF9tb2RlOwo+ICsJCXN0cnVj dCBkcm1fZGlzcGxheV9tb2RlIGFkanVzdGVkX21vZGU7Cj4gIAl9IGh3Owo+ICAKPiAgCS8qKgo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2R2by5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYwo+IGluZGV4IGE3NGRjNWI5 MTVkMS4uYWQ4ZTk5NTlkNmUxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfZHZvLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2R2by5jCj4gQEAgLTIwNyw3ICsyMDcsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9lbmFibGVf ZHZvKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJdTMyIHRlbXAgPSBJOTE1X1JF QUQoZHZvX3JlZyk7Cj4gIAo+ICAJaW50ZWxfZHZvLT5kZXYuZGV2X29wcy0+bW9kZV9zZXQoJmlu dGVsX2R2by0+ZGV2LAo+IC0JCQkJCSAmcGlwZV9jb25maWctPmh3Lm1vZGUsCj4gKwkJCQkJICZw aXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZSwKPiAgCQkJCQkgJnBpcGVfY29uZmlnLT5ody5h ZGp1c3RlZF9tb2RlKTsKPiAgCj4gIAlJOTE1X1dSSVRFKGR2b19yZWcsIHRlbXAgfCBEVk9fRU5B QkxFKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9z ZHZvLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Nkdm8uYwo+IGluZGV4 IGE0YjEzMzlmY2MwMC4uNGJhNzY0OGEzMTQ1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfc2R2by5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9zZHZvLmMKPiBAQCAtMTIxMyw3ICsxMjEzLDYgQEAgaW50ZWxfc2R2b19z ZXRfb3V0cHV0X3RpbWluZ3NfZnJvbV9tb2RlKHN0cnVjdCBpbnRlbF9zZHZvICppbnRlbF9zZHZv LAo+ICBzdGF0aWMgYm9vbAo+ICBpbnRlbF9zZHZvX2dldF9wcmVmZXJyZWRfaW5wdXRfbW9kZShz dHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKPiAgCQkJCSAgICBzdHJ1Y3QgaW50ZWxfc2R2 b19jb25uZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yLAo+IC0JCQkJICAgIGNvbnN0IHN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAo+ICAJCQkJICAgIHN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICphZGp1c3RlZF9tb2RlKQo+ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxfc2R2b19kdGQgaW5wdXRf ZHRkOwo+IEBAIC0xMjI0LDkgKzEyMjMsOSBAQCBpbnRlbF9zZHZvX2dldF9wcmVmZXJyZWRfaW5w dXRfbW9kZShzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKPiAgCj4gIAlpZiAoIWludGVs X3Nkdm9fY3JlYXRlX3ByZWZlcnJlZF9pbnB1dF90aW1pbmcoaW50ZWxfc2R2bywKPiAgCQkJCQkJ ICAgICAgaW50ZWxfc2R2b19jb25uZWN0b3IsCj4gLQkJCQkJCSAgICAgIG1vZGUtPmNsb2NrIC8g MTAsCj4gLQkJCQkJCSAgICAgIG1vZGUtPmhkaXNwbGF5LAo+IC0JCQkJCQkgICAgICBtb2RlLT52 ZGlzcGxheSkpCj4gKwkJCQkJCSAgICAgIGFkanVzdGVkX21vZGUtPmNsb2NrIC8gMTAsCj4gKwkJ CQkJCSAgICAgIGFkanVzdGVkX21vZGUtPmhkaXNwbGF5LAo+ICsJCQkJCQkgICAgICBhZGp1c3Rl ZF9tb2RlLT52ZGlzcGxheSkpCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAKPiAgCWlmICghaW50ZWxf c2R2b19nZXRfcHJlZmVycmVkX2lucHV0X3RpbWluZyhpbnRlbF9zZHZvLAo+IEBAIC0xMjc3LDcg KzEyNzYsNiBAQCBzdGF0aWMgaW50IGludGVsX3Nkdm9fY29tcHV0ZV9jb25maWcoc3RydWN0IGlu dGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAlzdHJ1Y3QgaW50ZWxfc2R2b19jb25uZWN0b3IgKmlu dGVsX3Nkdm9fY29ubmVjdG9yID0KPiAgCQl0b19pbnRlbF9zZHZvX2Nvbm5lY3Rvcihjb25uX3N0 YXRlLT5jb25uZWN0b3IpOwo+ICAJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21v ZGUgPSAmcGlwZV9jb25maWctPmh3LmFkanVzdGVkX21vZGU7Cj4gLQlzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqbW9kZSA9ICZwaXBlX2NvbmZpZy0+aHcubW9kZTsKPiAgCj4gIAlEUk1fREVCVUdf S01TKCJmb3JjaW5nIGJwYyB0byA4IGZvciBTRFZPXG4iKTsKPiAgCXBpcGVfY29uZmlnLT5waXBl X2JwcCA9IDgqMzsKPiBAQCAtMTI5MywxMiArMTI5MSwxMiBAQCBzdGF0aWMgaW50IGludGVsX3Nk dm9fY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkgKiB0 aGUgc2VxdWVuY2UgdG8gZG8gaXQuIE9oIHdlbGwuCj4gIAkgKi8KPiAgCWlmIChJU19UVihpbnRl bF9zZHZvX2Nvbm5lY3RvcikpIHsKPiAtCQlpZiAoIWludGVsX3Nkdm9fc2V0X291dHB1dF90aW1p bmdzX2Zyb21fbW9kZShpbnRlbF9zZHZvLCBtb2RlKSkKPiArCQlpZiAoIWludGVsX3Nkdm9fc2V0 X291dHB1dF90aW1pbmdzX2Zyb21fbW9kZShpbnRlbF9zZHZvLAo+ICsJCQkJCQkJICAgICBhZGp1 c3RlZF9tb2RlKSkKPiAgCQkJcmV0dXJuIC1FSU5WQUw7Cj4gIAo+ICAJCSh2b2lkKSBpbnRlbF9z ZHZvX2dldF9wcmVmZXJyZWRfaW5wdXRfbW9kZShpbnRlbF9zZHZvLAo+ICAJCQkJCQkJICAgaW50 ZWxfc2R2b19jb25uZWN0b3IsCj4gLQkJCQkJCQkgICBtb2RlLAo+ICAJCQkJCQkJICAgYWRqdXN0 ZWRfbW9kZSk7Cj4gIAkJcGlwZV9jb25maWctPnNkdm9fdHZfY2xvY2sgPSB0cnVlOwo+ICAJfSBl bHNlIGlmIChJU19MVkRTKGludGVsX3Nkdm9fY29ubmVjdG9yKSkgewo+IEBAIC0xMzA4LDcgKzEz MDYsNiBAQCBzdGF0aWMgaW50IGludGVsX3Nkdm9fY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVs X2VuY29kZXIgKmVuY29kZXIsCj4gIAo+ICAJCSh2b2lkKSBpbnRlbF9zZHZvX2dldF9wcmVmZXJy ZWRfaW5wdXRfbW9kZShpbnRlbF9zZHZvLAo+ICAJCQkJCQkJICAgaW50ZWxfc2R2b19jb25uZWN0 b3IsCj4gLQkJCQkJCQkgICBtb2RlLAo+ICAJCQkJCQkJICAgYWRqdXN0ZWRfbW9kZSk7Cj4gIAl9 Cj4gIAo+IEBAIC0xNDM1LDcgKzE0MzIsNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX3ByZV9l bmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIsCj4gIAkJdG9faW50ZWxf c2R2b19jb25uZWN0b3Jfc3RhdGUoY29ubl9zdGF0ZSk7Cj4gIAljb25zdCBzdHJ1Y3QgaW50ZWxf c2R2b19jb25uZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yID0KPiAgCQl0b19pbnRlbF9zZHZv X2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3IpOwo+IC0JY29uc3Qgc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKm1vZGUgPSAmY3J0Y19zdGF0ZS0+aHcubW9kZTsKPiAgCXN0cnVjdCBpbnRl bF9zZHZvICppbnRlbF9zZHZvID0gdG9fc2R2byhpbnRlbF9lbmNvZGVyKTsKPiAgCXUzMiBzZHZv eDsKPiAgCXN0cnVjdCBpbnRlbF9zZHZvX2luX291dF9tYXAgaW5fb3V0Owo+IEBAIC0xNDY4LDcg KzE0NjQsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX3ByZV9lbmFibGUoc3RydWN0IGludGVs X2VuY29kZXIgKmludGVsX2VuY29kZXIsCj4gIAkJaW50ZWxfc2R2b19nZXRfZHRkX2Zyb21fbW9k ZSgmb3V0cHV0X2R0ZCwKPiAgCQkJCQkgICAgIGludGVsX3Nkdm9fY29ubmVjdG9yLT5iYXNlLnBh bmVsLmZpeGVkX21vZGUpOwo+ICAJZWxzZQo+IC0JCWludGVsX3Nkdm9fZ2V0X2R0ZF9mcm9tX21v ZGUoJm91dHB1dF9kdGQsIG1vZGUpOwo+ICsJCWludGVsX3Nkdm9fZ2V0X2R0ZF9mcm9tX21vZGUo Jm91dHB1dF9kdGQsIGFkanVzdGVkX21vZGUpOwo+ICAJaWYgKCFpbnRlbF9zZHZvX3NldF9vdXRw dXRfdGltaW5nKGludGVsX3Nkdm8sICZvdXRwdXRfZHRkKSkKPiAgCQlEUk1fSU5GTygiU2V0dGlu ZyBvdXRwdXQgdGltaW5ncyBvbiAlcyBmYWlsZWRcbiIsCj4gIAkJCSBTRFZPX05BTUUoaW50ZWxf c2R2bykpOwo+IC0tIAo+IDIuMjQuMAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbApfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=