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:39:59 +0200 Message-ID: <20191118173959.GW1208@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 mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA2D689DB8 for ; Mon, 18 Nov 2019 17:40:02 +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 c2l6ZSkKPiAgCQkJcmV0dXJuIDA7Cj4gIAkJaWYgKGNvbm5lY3Rvci0+dGlsZV9oX2xvYyA9PSBj b25uZWN0b3ItPm51bV9oX3RpbGUgLSAxICYmCj4gIAkJICAgIGNvbm5lY3Rvci0+dGlsZV92X2xv YyA9PSBjb25uZWN0b3ItPm51bV92X3RpbGUgLSAxKQo+IEBAIC0xMjUwNiw3ICsxMjUwMyw3IEBA IHN0YXRpYyB2b2lkIGludGVsX2R1bXBfcGlwZV9jb25maWcoY29uc3Qgc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKnBpcGVfY29uZmlnLAo+ICAJCWludGVsX2R1bXBfaW5mb2ZyYW1lKGRldl9wcml2 LCAmcGlwZV9jb25maWctPmluZm9mcmFtZXMuaGRtaSk7Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygi cmVxdWVzdGVkIG1vZGU6XG4iKTsKPiAtCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoJnBp cGVfY29uZmlnLT5ody5tb2RlKTsKPiArCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoJnBp cGVfY29uZmlnLT51YXBpLm1vZGUpOwo+ICAJRFJNX0RFQlVHX0tNUygiYWRqdXN0ZWQgbW9kZTpc biIpOwo+ICAJZHJtX21vZGVfZGVidWdfcHJpbnRtb2RlbGluZSgmcGlwZV9jb25maWctPmh3LmFk anVzdGVkX21vZGUpOwo+ICAJaW50ZWxfZHVtcF9jcnRjX3RpbWluZ3MoJnBpcGVfY29uZmlnLT5o dy5hZGp1c3RlZF9tb2RlKTsKPiBAQCAtMTI2NDAsMTYgKzEyNjM3LDE2IEBAIGludGVsX2NydGNf Y29weV91YXBpX3RvX2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQo+ICB7Cj4gIAljcnRjX3N0YXRlLT5ody5lbmFibGUgPSBjcnRjX3N0YXRlLT51YXBpLmVuYWJs ZTsKPiAgCWNydGNfc3RhdGUtPmh3LmFjdGl2ZSA9IGNydGNfc3RhdGUtPnVhcGkuYWN0aXZlOwo+ IC0JY3J0Y19zdGF0ZS0+aHcubW9kZSA9IGNydGNfc3RhdGUtPnVhcGkubW9kZTsKPiAgCWNydGNf c3RhdGUtPmh3LmFkanVzdGVkX21vZGUgPSBjcnRjX3N0YXRlLT51YXBpLmFkanVzdGVkX21vZGU7 Cj4gIAlpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZV9ub21vZGVzZXQoY3J0Y19zdGF0 ZSk7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGludGVsX2NydGNfY29weV9od190b191YXBpX3N0 YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICtzdGF0aWMgdm9pZCBp bnRlbF9jcnRjX2NvcHlfaHdfdG9fdWFwaV9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSwKPiArCQkJCQkgICAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICp1c2VyX21v ZGUpCj4gIHsKPiAgCWNydGNfc3RhdGUtPnVhcGkuZW5hYmxlID0gY3J0Y19zdGF0ZS0+aHcuZW5h YmxlOwo+ICAJY3J0Y19zdGF0ZS0+dWFwaS5hY3RpdmUgPSBjcnRjX3N0YXRlLT5ody5hY3RpdmU7 Cj4gLQlXQVJOX09OKGRybV9hdG9taWNfc2V0X21vZGVfZm9yX2NydGMoJmNydGNfc3RhdGUtPnVh cGksICZjcnRjX3N0YXRlLT5ody5tb2RlKSA8IDApOwo+ICsJV0FSTl9PTihkcm1fYXRvbWljX3Nl dF9tb2RlX2Zvcl9jcnRjKCZjcnRjX3N0YXRlLT51YXBpLCB1c2VyX21vZGUpIDwgMCk7Cj4gIAo+ ICAJY3J0Y19zdGF0ZS0+dWFwaS5hZGp1c3RlZF9tb2RlID0gY3J0Y19zdGF0ZS0+aHcuYWRqdXN0 ZWRfbW9kZTsKPiAgCj4gQEAgLTEyNzAyLDYgKzEyNjk5LDEwIEBAIGludGVsX2NydGNfcHJlcGFy ZV9jbGVhcmVkX3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICAJ bWVtY3B5KGNydGNfc3RhdGUsIHNhdmVkX3N0YXRlLCBzaXplb2YoKmNydGNfc3RhdGUpKTsKPiAg CWtmcmVlKHNhdmVkX3N0YXRlKTsKPiAgCj4gKwkvKiBDbGVhciBJOTE1X01PREVfRkxBR19JTkhF UklURUQgKi8KPiArCWNydGNfc3RhdGUtPnVhcGkubW9kZS5wcml2YXRlX2ZsYWdzID0gMDsKPiAr CWNydGNfc3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2ZsYWdzID0gMDsKPiArCj4g IAlpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZShjcnRjX3N0YXRlKTsKPiAgCj4gIAly ZXR1cm4gMDsKPiBAQCAtMTI3NTAsNyArMTI3NTEsNyBAQCBpbnRlbF9tb2Rlc2V0X3BpcGVfY29u ZmlnKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKPiAgCSAqIGNvbXB1dGF0 aW9uIHRvIGNsZWFybHkgZGlzdGluZ3Vpc2ggaXQgZnJvbSB0aGUgYWRqdXN0ZWQgbW9kZSwgd2hp Y2gKPiAgCSAqIGNhbiBiZSBjaGFuZ2VkIGJ5IHRoZSBjb25uZWN0b3JzIGluIHRoZSBiZWxvdyBy ZXRyeSBsb29wLgo+ICAJICovCj4gLQlkcm1fbW9kZV9nZXRfaHZfdGltaW5nKCZwaXBlX2NvbmZp Zy0+aHcubW9kZSwKPiArCWRybV9tb2RlX2dldF9odl90aW1pbmcoJnBpcGVfY29uZmlnLT5ody5w aXBlX21vZGUsCj4gIAkJCSAgICAgICAmcGlwZV9jb25maWctPnBpcGVfc3JjX3csCj4gIAkJCSAg ICAgICAmcGlwZV9jb25maWctPnBpcGVfc3JjX2gpOwo+ICAKPiBAQCAtMTI4NTIsNiArMTI4NTMs OCBAQCBpbnRlbF9tb2Rlc2V0X3BpcGVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpw aXBlX2NvbmZpZykKPiAgCSAqLwo+ICAJcGlwZV9jb25maWctPnVhcGkuYWRqdXN0ZWRfbW9kZSA9 IHBpcGVfY29uZmlnLT5ody5hZGp1c3RlZF9tb2RlOwo+ICAKPiArCS8qIHdpdGhvdXQgYmlnam9p bmVyLCBwaXBlX21vZGUgPT0gYWRqdXN0ZWRfbW9kZSAqLwo+ICsJcGlwZV9jb25maWctPmh3LnBp cGVfbW9kZSA9IHBpcGVfY29uZmlnLT5ody5hZGp1c3RlZF9tb2RlOwo+ICAJcmV0dXJuIDA7Cj4g IH0KPiAgCj4gQEAgLTEyOTk1LDggKzEyOTk4LDggQEAgaW50ZWxfcGlwZV9jb25maWdfY29tcGFy ZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3VycmVudF9jb25maWcsCj4gIAlib29s IHJldCA9IHRydWU7Cj4gIAl1MzIgYnBfZ2FtbWEgPSAwOwo+ICAJYm9vbCBmaXh1cF9pbmhlcml0 ZWQgPSBmYXN0c2V0ICYmCj4gLQkJKGN1cnJlbnRfY29uZmlnLT5ody5tb2RlLnByaXZhdGVfZmxh Z3MgJiBJOTE1X01PREVfRkxBR19JTkhFUklURUQpICYmCj4gLQkJIShwaXBlX2NvbmZpZy0+aHcu bW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKTsKPiArCQkoY3Vy cmVudF9jb25maWctPmh3LmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9G TEFHX0lOSEVSSVRFRCkgJiYKPiArCQkhKHBpcGVfY29uZmlnLT5ody5hZGp1c3RlZF9tb2RlLnBy aXZhdGVfZmxhZ3MgJiBJOTE1X01PREVfRkxBR19JTkhFUklURUQpOwo+ICAKPiAgCWlmIChmaXh1 cF9pbmhlcml0ZWQgJiYgIWZhc3Rib290X2VuYWJsZWQoZGV2X3ByaXYpKSB7Cj4gIAkJRFJNX0RF QlVHX0tNUygiaW5pdGlhbCBtb2Rlc2V0IGFuZCBmYXN0Ym9vdCBub3Qgc2V0XG4iKTsKPiBAQCAt MTQxMDYsOCArMTQxMDksOCBAQCBzdGF0aWMgaW50IGludGVsX2F0b21pY19jaGVjayhzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LAo+ICAJLyogQ2F0Y2ggSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEICov Cj4gIAlmb3JfZWFjaF9vbGRuZXdfaW50ZWxfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywgb2xk X2NydGNfc3RhdGUsCj4gIAkJCQkJICAgIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gLQkJaWYgKG5l d19jcnRjX3N0YXRlLT5ody5tb2RlLnByaXZhdGVfZmxhZ3MgIT0KPiAtCQkgICAgb2xkX2NydGNf c3RhdGUtPmh3Lm1vZGUucHJpdmF0ZV9mbGFncykKPiArCQlpZiAobmV3X2NydGNfc3RhdGUtPmh3 LmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFncyAhPQo+ICsJCSAgICBvbGRfY3J0Y19zdGF0ZS0+ aHcuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2ZsYWdzKQo+ICAJCQluZXdfY3J0Y19zdGF0ZS0+dWFw aS5tb2RlX2NoYW5nZWQgPSB0cnVlOwo+ICAJfQo+ICAKPiBAQCAtMTQzNjEsNyArMTQzNjQsNyBA QCBzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVfY3J0YyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywK PiAgCSAqIG9mIGVuYWJsaW5nIHRoZW0gb24gdGhlIENSVEMncyBmaXJzdCBmYXN0c2V0Lgo+ICAJ ICovCj4gIAlpZiAobmV3X2NydGNfc3RhdGUtPnVwZGF0ZV9waXBlICYmICFtb2Rlc2V0ICYmCj4g LQkgICAgb2xkX2NydGNfc3RhdGUtPmh3Lm1vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9G TEFHX0lOSEVSSVRFRCkKPiArCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5w cml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKQo+ICAJCWludGVsX2NydGNf YXJtX2ZpZm9fdW5kZXJydW4oY3J0YywgbmV3X2NydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IEBAIC0x NDU1OCw3ICsxNDU2MSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3Bvc3RfY3J0Y19lbmFibGVfdXBk YXRlcyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCSAqIG9mIGVuYWJsaW5nIHRoZW0gb24g dGhlIENSVEMncyBmaXJzdCBmYXN0c2V0Lgo+ICAJICovCj4gIAlpZiAobmV3X2NydGNfc3RhdGUt PnVwZGF0ZV9waXBlICYmICFtb2Rlc2V0ICYmCj4gLQkgICAgb2xkX2NydGNfc3RhdGUtPmh3Lm1v ZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9GTEFHX0lOSEVSSVRFRCkKPiArCSAgICBvbGRf Y3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZM QUdfSU5IRVJJVEVEKQo+ICAJCWludGVsX2NydGNfYXJtX2ZpZm9fdW5kZXJydW4oY3J0YywgbmV3 X2NydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IEBAIC0xNzUyNCwxNSArMTc1MjcsMTEgQEAgc3RhdGlj IHZvaWQgaW50ZWxfbW9kZXNldF9yZWFkb3V0X2h3X3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpCj4gIAkJaW50IG1pbl9jZGNsayA9IDA7Cj4gIAo+ICAJCWlmIChjcnRjX3N0YXRlLT5ody5h Y3RpdmUpIHsKPiAtCQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUgPSAmY3J0Y19zdGF0 ZS0+aHcubW9kZTsKPiArCQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgbW9kZTsKPiAgCj4gIAkJ CWludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZygmY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9k ZSwKPiAgCQkJCQkJICAgIGNydGNfc3RhdGUpOwo+ICAKPiAtCQkJKm1vZGUgPSBjcnRjX3N0YXRl LT5ody5hZGp1c3RlZF9tb2RlOwo+IC0JCQltb2RlLT5oZGlzcGxheSA9IGNydGNfc3RhdGUtPnBp cGVfc3JjX3c7Cj4gLQkJCW1vZGUtPnZkaXNwbGF5ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfaDsK PiAtCj4gIAkJCS8qCj4gIAkJCSAqIFRoZSBpbml0aWFsIG1vZGUgbmVlZHMgdG8gYmUgc2V0IGlu IG9yZGVyIHRvIGtlZXAKPiAgCQkJICogdGhlIGF0b21pYyBjb3JlIGhhcHB5LiBJdCB3YW50cyBh IHZhbGlkIG1vZGUgaWYgdGhlCj4gQEAgLTE3NTQyLDEzICsxNzU0MSwxNyBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9tb2Rlc2V0X3JlYWRvdXRfaHdfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikK PiAgCQkJICogc2V0IGEgZmxhZyB0byBpbmRpY2F0ZSB0aGF0IGEgZnVsbCByZWNhbGN1bGF0aW9u IGlzCj4gIAkJCSAqIG5lZWRlZCBvbiB0aGUgbmV4dCBjb21taXQuCj4gIAkJCSAqLwo+IC0JCQlt b2RlLT5wcml2YXRlX2ZsYWdzID0gSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEOwo+ICsJCQljcnRj X3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLnByaXZhdGVfZmxhZ3MgPSBJOTE1X01PREVfRkxBR19J TkhFUklURUQ7Cj4gKwo+ICsJCQltb2RlID0gY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZTsK PiArCQkJbW9kZS5oZGlzcGxheSA9IGNydGNfc3RhdGUtPnBpcGVfc3JjX3c7Cj4gKwkJCW1vZGUu dmRpc3BsYXkgPSBjcnRjX3N0YXRlLT5waXBlX3NyY19oOwo+ICAKPiAgCQkJaW50ZWxfY3J0Y19j b21wdXRlX3BpeGVsX3JhdGUoY3J0Y19zdGF0ZSk7Cj4gIAo+ICAJCQlpbnRlbF9jcnRjX3VwZGF0 ZV9hY3RpdmVfdGltaW5ncyhjcnRjX3N0YXRlKTsKPiAgCj4gLQkJCWludGVsX2NydGNfY29weV9o d190b191YXBpX3N0YXRlKGNydGNfc3RhdGUpOwo+ICsJCQlpbnRlbF9jcnRjX2NvcHlfaHdfdG9f dWFwaV9zdGF0ZShjcnRjX3N0YXRlLCAmbW9kZSk7Cj4gIAkJfQo+ICAKPiAgCQlmb3JfZWFjaF9p bnRlbF9wbGFuZV9vbl9jcnRjKCZkZXZfcHJpdi0+ZHJtLCBjcnRjLCBwbGFuZSkgewo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCj4g aW5kZXggODNlYTA0MTQ5Yjc3Li4wZjIwYzcxOTBlZWQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAo+IEBAIC04MDIsNyAr ODAyLDcgQEAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgewo+ICAJc3RydWN0IHsKPiAgCQlib29s IGFjdGl2ZSwgZW5hYmxlOwo+ICAJCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqZGVnYW1tYV9s dXQsICpnYW1tYV9sdXQsICpjdG07Cj4gLQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgbW9kZSwg YWRqdXN0ZWRfbW9kZTsKPiArCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBhZGp1c3RlZF9tb2Rl Owo+ICAJfSBodzsKPiAgCj4gIAkvKioKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZHZvLmMKPiBpbmRleCBhNzRkYzViOTE1ZDEuLmFkOGU5OTU5ZDZlMSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2R2by5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYwo+IEBAIC0yMDcsNyArMjA3LDcgQEAg c3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX2R2byhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rl ciwKPiAgCXUzMiB0ZW1wID0gSTkxNV9SRUFEKGR2b19yZWcpOwo+ICAKPiAgCWludGVsX2R2by0+ ZGV2LmRldl9vcHMtPm1vZGVfc2V0KCZpbnRlbF9kdm8tPmRldiwKPiAtCQkJCQkgJnBpcGVfY29u ZmlnLT5ody5tb2RlLAo+ICsJCQkJCSAmcGlwZV9jb25maWctPmh3LmFkanVzdGVkX21vZGUsCj4g IAkJCQkJICZwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZSk7CgpUaGlzIGxvb2tzIHZlcnkg d3JvbmcuCgo+ICAKPiAgCUk5MTVfV1JJVEUoZHZvX3JlZywgdGVtcCB8IERWT19FTkFCTEUpOwo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Nkdm8uYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc2R2by5jCj4gaW5kZXggYTRiMTMz OWZjYzAwLi40YmE3NjQ4YTMxNDUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9zZHZvLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX3Nkdm8uYwo+IEBAIC0xMjEzLDcgKzEyMTMsNiBAQCBpbnRlbF9zZHZvX3NldF9vdXRw dXRfdGltaW5nc19mcm9tX21vZGUoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8sCj4gIHN0 YXRpYyBib29sCj4gIGludGVsX3Nkdm9fZ2V0X3ByZWZlcnJlZF9pbnB1dF9tb2RlKHN0cnVjdCBp bnRlbF9zZHZvICppbnRlbF9zZHZvLAo+ICAJCQkJICAgIHN0cnVjdCBpbnRlbF9zZHZvX2Nvbm5l Y3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3IsCj4gLQkJCQkgICAgY29uc3Qgc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKm1vZGUsCj4gIAkJCQkgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFk anVzdGVkX21vZGUpCj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9zZHZvX2R0ZCBpbnB1dF9kdGQ7Cj4g QEAgLTEyMjQsOSArMTIyMyw5IEBAIGludGVsX3Nkdm9fZ2V0X3ByZWZlcnJlZF9pbnB1dF9tb2Rl KHN0cnVjdCBpbnRlbF9zZHZvICppbnRlbF9zZHZvLAo+ICAKPiAgCWlmICghaW50ZWxfc2R2b19j cmVhdGVfcHJlZmVycmVkX2lucHV0X3RpbWluZyhpbnRlbF9zZHZvLAo+ICAJCQkJCQkgICAgICBp bnRlbF9zZHZvX2Nvbm5lY3RvciwKPiAtCQkJCQkJICAgICAgbW9kZS0+Y2xvY2sgLyAxMCwKPiAt CQkJCQkJICAgICAgbW9kZS0+aGRpc3BsYXksCj4gLQkJCQkJCSAgICAgIG1vZGUtPnZkaXNwbGF5 KSkKPiArCQkJCQkJICAgICAgYWRqdXN0ZWRfbW9kZS0+Y2xvY2sgLyAxMCwKPiArCQkJCQkJICAg ICAgYWRqdXN0ZWRfbW9kZS0+aGRpc3BsYXksCj4gKwkJCQkJCSAgICAgIGFkanVzdGVkX21vZGUt PnZkaXNwbGF5KSkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICAJaWYgKCFpbnRlbF9zZHZvX2dl dF9wcmVmZXJyZWRfaW5wdXRfdGltaW5nKGludGVsX3Nkdm8sCj4gQEAgLTEyNzcsNyArMTI3Niw2 IEBAIHN0YXRpYyBpbnQgaW50ZWxfc2R2b19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqZW5jb2RlciwKPiAgCXN0cnVjdCBpbnRlbF9zZHZvX2Nvbm5lY3RvciAqaW50ZWxfc2R2 b19jb25uZWN0b3IgPQo+ICAJCXRvX2ludGVsX3Nkdm9fY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNv bm5lY3Rvcik7Cj4gIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZw aXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsKPiAtCXN0cnVjdCBkcm1fZGlzcGxheV9tb2Rl ICptb2RlID0gJnBpcGVfY29uZmlnLT5ody5tb2RlOwo+ICAKPiAgCURSTV9ERUJVR19LTVMoImZv cmNpbmcgYnBjIHRvIDggZm9yIFNEVk9cbiIpOwo+ICAJcGlwZV9jb25maWctPnBpcGVfYnBwID0g OCozOwo+IEBAIC0xMjkzLDEyICsxMjkxLDEyIEBAIHN0YXRpYyBpbnQgaW50ZWxfc2R2b19jb21w dXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCSAqIHRoZSBzZXF1 ZW5jZSB0byBkbyBpdC4gT2ggd2VsbC4KPiAgCSAqLwo+ICAJaWYgKElTX1RWKGludGVsX3Nkdm9f Y29ubmVjdG9yKSkgewo+IC0JCWlmICghaW50ZWxfc2R2b19zZXRfb3V0cHV0X3RpbWluZ3NfZnJv bV9tb2RlKGludGVsX3Nkdm8sIG1vZGUpKQo+ICsJCWlmICghaW50ZWxfc2R2b19zZXRfb3V0cHV0 X3RpbWluZ3NfZnJvbV9tb2RlKGludGVsX3Nkdm8sCj4gKwkJCQkJCQkgICAgIGFkanVzdGVkX21v ZGUpKQo+ICAJCQlyZXR1cm4gLUVJTlZBTDsKPiAgCj4gIAkJKHZvaWQpIGludGVsX3Nkdm9fZ2V0 X3ByZWZlcnJlZF9pbnB1dF9tb2RlKGludGVsX3Nkdm8sCj4gIAkJCQkJCQkgICBpbnRlbF9zZHZv X2Nvbm5lY3RvciwKPiAtCQkJCQkJCSAgIG1vZGUsCj4gIAkJCQkJCQkgICBhZGp1c3RlZF9tb2Rl KTsKPiAgCQlwaXBlX2NvbmZpZy0+c2R2b190dl9jbG9jayA9IHRydWU7Cj4gIAl9IGVsc2UgaWYg KElTX0xWRFMoaW50ZWxfc2R2b19jb25uZWN0b3IpKSB7Cj4gQEAgLTEzMDgsNyArMTMwNiw2IEBA IHN0YXRpYyBpbnQgaW50ZWxfc2R2b19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciwKPiAgCj4gIAkJKHZvaWQpIGludGVsX3Nkdm9fZ2V0X3ByZWZlcnJlZF9pbnB1 dF9tb2RlKGludGVsX3Nkdm8sCj4gIAkJCQkJCQkgICBpbnRlbF9zZHZvX2Nvbm5lY3RvciwKPiAt CQkJCQkJCSAgIG1vZGUsCj4gIAkJCQkJCQkgICBhZGp1c3RlZF9tb2RlKTsKPiAgCX0KPiAgCj4g QEAgLTE0MzUsNyArMTQzMiw2IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nkdm9fcHJlX2VuYWJsZShz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciwKPiAgCQl0b19pbnRlbF9zZHZvX2Nv bm5lY3Rvcl9zdGF0ZShjb25uX3N0YXRlKTsKPiAgCWNvbnN0IHN0cnVjdCBpbnRlbF9zZHZvX2Nv bm5lY3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3IgPQo+ICAJCXRvX2ludGVsX3Nkdm9fY29ubmVj dG9yKGNvbm5fc3RhdGUtPmNvbm5lY3Rvcik7Cj4gLQljb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqbW9kZSA9ICZjcnRjX3N0YXRlLT5ody5tb2RlOwo+ICAJc3RydWN0IGludGVsX3Nkdm8g KmludGVsX3Nkdm8gPSB0b19zZHZvKGludGVsX2VuY29kZXIpOwo+ICAJdTMyIHNkdm94Owo+ICAJ c3RydWN0IGludGVsX3Nkdm9faW5fb3V0X21hcCBpbl9vdXQ7Cj4gQEAgLTE0NjgsNyArMTQ2NCw3 IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nkdm9fcHJlX2VuYWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqaW50ZWxfZW5jb2RlciwKPiAgCQlpbnRlbF9zZHZvX2dldF9kdGRfZnJvbV9tb2RlKCZvdXRw dXRfZHRkLAo+ICAJCQkJCSAgICAgaW50ZWxfc2R2b19jb25uZWN0b3ItPmJhc2UucGFuZWwuZml4 ZWRfbW9kZSk7Cj4gIAllbHNlCj4gLQkJaW50ZWxfc2R2b19nZXRfZHRkX2Zyb21fbW9kZSgmb3V0 cHV0X2R0ZCwgbW9kZSk7Cj4gKwkJaW50ZWxfc2R2b19nZXRfZHRkX2Zyb21fbW9kZSgmb3V0cHV0 X2R0ZCwgYWRqdXN0ZWRfbW9kZSk7Cj4gIAlpZiAoIWludGVsX3Nkdm9fc2V0X291dHB1dF90aW1p bmcoaW50ZWxfc2R2bywgJm91dHB1dF9kdGQpKQo+ICAJCURSTV9JTkZPKCJTZXR0aW5nIG91dHB1 dCB0aW1pbmdzIG9uICVzIGZhaWxlZFxuIiwKPiAgCQkJIFNEVk9fTkFNRShpbnRlbF9zZHZvKSk7 Cj4gLS0gCj4gMi4yNC4wCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA== 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 18669C43215 for ; Mon, 18 Nov 2019 17:40:05 +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 EF02A2186D for ; Mon, 18 Nov 2019 17:40:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EF02A2186D 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 7184E89DB8; Mon, 18 Nov 2019 17:40:04 +0000 (UTC) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA2D689DB8 for ; Mon, 18 Nov 2019 17:40:02 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Nov 2019 09:40:02 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,321,1569308400"; d="scan'208";a="215341470" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by fmsmga001.fm.intel.com with SMTP; 18 Nov 2019 09:40:00 -0800 Received: by stinkbox (sSMTP sendmail emulation); Mon, 18 Nov 2019 19:39:59 +0200 Date: Mon, 18 Nov 2019 19:39:59 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Maarten Lankhorst Message-ID: <20191118173959.GW1208@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: <20191118173959.BPPXwTvb6AIrpTwFusiO8lSwcQ3nDIlC4aDPzsP9Pwg@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 c2l6ZSkKPiAgCQkJcmV0dXJuIDA7Cj4gIAkJaWYgKGNvbm5lY3Rvci0+dGlsZV9oX2xvYyA9PSBj b25uZWN0b3ItPm51bV9oX3RpbGUgLSAxICYmCj4gIAkJICAgIGNvbm5lY3Rvci0+dGlsZV92X2xv YyA9PSBjb25uZWN0b3ItPm51bV92X3RpbGUgLSAxKQo+IEBAIC0xMjUwNiw3ICsxMjUwMyw3IEBA IHN0YXRpYyB2b2lkIGludGVsX2R1bXBfcGlwZV9jb25maWcoY29uc3Qgc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKnBpcGVfY29uZmlnLAo+ICAJCWludGVsX2R1bXBfaW5mb2ZyYW1lKGRldl9wcml2 LCAmcGlwZV9jb25maWctPmluZm9mcmFtZXMuaGRtaSk7Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygi cmVxdWVzdGVkIG1vZGU6XG4iKTsKPiAtCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoJnBp cGVfY29uZmlnLT5ody5tb2RlKTsKPiArCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoJnBp cGVfY29uZmlnLT51YXBpLm1vZGUpOwo+ICAJRFJNX0RFQlVHX0tNUygiYWRqdXN0ZWQgbW9kZTpc biIpOwo+ICAJZHJtX21vZGVfZGVidWdfcHJpbnRtb2RlbGluZSgmcGlwZV9jb25maWctPmh3LmFk anVzdGVkX21vZGUpOwo+ICAJaW50ZWxfZHVtcF9jcnRjX3RpbWluZ3MoJnBpcGVfY29uZmlnLT5o dy5hZGp1c3RlZF9tb2RlKTsKPiBAQCAtMTI2NDAsMTYgKzEyNjM3LDE2IEBAIGludGVsX2NydGNf Y29weV91YXBpX3RvX2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQo+ICB7Cj4gIAljcnRjX3N0YXRlLT5ody5lbmFibGUgPSBjcnRjX3N0YXRlLT51YXBpLmVuYWJs ZTsKPiAgCWNydGNfc3RhdGUtPmh3LmFjdGl2ZSA9IGNydGNfc3RhdGUtPnVhcGkuYWN0aXZlOwo+ IC0JY3J0Y19zdGF0ZS0+aHcubW9kZSA9IGNydGNfc3RhdGUtPnVhcGkubW9kZTsKPiAgCWNydGNf c3RhdGUtPmh3LmFkanVzdGVkX21vZGUgPSBjcnRjX3N0YXRlLT51YXBpLmFkanVzdGVkX21vZGU7 Cj4gIAlpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZV9ub21vZGVzZXQoY3J0Y19zdGF0 ZSk7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGludGVsX2NydGNfY29weV9od190b191YXBpX3N0 YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICtzdGF0aWMgdm9pZCBp bnRlbF9jcnRjX2NvcHlfaHdfdG9fdWFwaV9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSwKPiArCQkJCQkgICAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICp1c2VyX21v ZGUpCj4gIHsKPiAgCWNydGNfc3RhdGUtPnVhcGkuZW5hYmxlID0gY3J0Y19zdGF0ZS0+aHcuZW5h YmxlOwo+ICAJY3J0Y19zdGF0ZS0+dWFwaS5hY3RpdmUgPSBjcnRjX3N0YXRlLT5ody5hY3RpdmU7 Cj4gLQlXQVJOX09OKGRybV9hdG9taWNfc2V0X21vZGVfZm9yX2NydGMoJmNydGNfc3RhdGUtPnVh cGksICZjcnRjX3N0YXRlLT5ody5tb2RlKSA8IDApOwo+ICsJV0FSTl9PTihkcm1fYXRvbWljX3Nl dF9tb2RlX2Zvcl9jcnRjKCZjcnRjX3N0YXRlLT51YXBpLCB1c2VyX21vZGUpIDwgMCk7Cj4gIAo+ ICAJY3J0Y19zdGF0ZS0+dWFwaS5hZGp1c3RlZF9tb2RlID0gY3J0Y19zdGF0ZS0+aHcuYWRqdXN0 ZWRfbW9kZTsKPiAgCj4gQEAgLTEyNzAyLDYgKzEyNjk5LDEwIEBAIGludGVsX2NydGNfcHJlcGFy ZV9jbGVhcmVkX3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICAJ bWVtY3B5KGNydGNfc3RhdGUsIHNhdmVkX3N0YXRlLCBzaXplb2YoKmNydGNfc3RhdGUpKTsKPiAg CWtmcmVlKHNhdmVkX3N0YXRlKTsKPiAgCj4gKwkvKiBDbGVhciBJOTE1X01PREVfRkxBR19JTkhF UklURUQgKi8KPiArCWNydGNfc3RhdGUtPnVhcGkubW9kZS5wcml2YXRlX2ZsYWdzID0gMDsKPiAr CWNydGNfc3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2ZsYWdzID0gMDsKPiArCj4g IAlpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZShjcnRjX3N0YXRlKTsKPiAgCj4gIAly ZXR1cm4gMDsKPiBAQCAtMTI3NTAsNyArMTI3NTEsNyBAQCBpbnRlbF9tb2Rlc2V0X3BpcGVfY29u ZmlnKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKPiAgCSAqIGNvbXB1dGF0 aW9uIHRvIGNsZWFybHkgZGlzdGluZ3Vpc2ggaXQgZnJvbSB0aGUgYWRqdXN0ZWQgbW9kZSwgd2hp Y2gKPiAgCSAqIGNhbiBiZSBjaGFuZ2VkIGJ5IHRoZSBjb25uZWN0b3JzIGluIHRoZSBiZWxvdyBy ZXRyeSBsb29wLgo+ICAJICovCj4gLQlkcm1fbW9kZV9nZXRfaHZfdGltaW5nKCZwaXBlX2NvbmZp Zy0+aHcubW9kZSwKPiArCWRybV9tb2RlX2dldF9odl90aW1pbmcoJnBpcGVfY29uZmlnLT5ody5w aXBlX21vZGUsCj4gIAkJCSAgICAgICAmcGlwZV9jb25maWctPnBpcGVfc3JjX3csCj4gIAkJCSAg ICAgICAmcGlwZV9jb25maWctPnBpcGVfc3JjX2gpOwo+ICAKPiBAQCAtMTI4NTIsNiArMTI4NTMs OCBAQCBpbnRlbF9tb2Rlc2V0X3BpcGVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpw aXBlX2NvbmZpZykKPiAgCSAqLwo+ICAJcGlwZV9jb25maWctPnVhcGkuYWRqdXN0ZWRfbW9kZSA9 IHBpcGVfY29uZmlnLT5ody5hZGp1c3RlZF9tb2RlOwo+ICAKPiArCS8qIHdpdGhvdXQgYmlnam9p bmVyLCBwaXBlX21vZGUgPT0gYWRqdXN0ZWRfbW9kZSAqLwo+ICsJcGlwZV9jb25maWctPmh3LnBp cGVfbW9kZSA9IHBpcGVfY29uZmlnLT5ody5hZGp1c3RlZF9tb2RlOwo+ICAJcmV0dXJuIDA7Cj4g IH0KPiAgCj4gQEAgLTEyOTk1LDggKzEyOTk4LDggQEAgaW50ZWxfcGlwZV9jb25maWdfY29tcGFy ZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3VycmVudF9jb25maWcsCj4gIAlib29s IHJldCA9IHRydWU7Cj4gIAl1MzIgYnBfZ2FtbWEgPSAwOwo+ICAJYm9vbCBmaXh1cF9pbmhlcml0 ZWQgPSBmYXN0c2V0ICYmCj4gLQkJKGN1cnJlbnRfY29uZmlnLT5ody5tb2RlLnByaXZhdGVfZmxh Z3MgJiBJOTE1X01PREVfRkxBR19JTkhFUklURUQpICYmCj4gLQkJIShwaXBlX2NvbmZpZy0+aHcu bW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKTsKPiArCQkoY3Vy cmVudF9jb25maWctPmh3LmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9G TEFHX0lOSEVSSVRFRCkgJiYKPiArCQkhKHBpcGVfY29uZmlnLT5ody5hZGp1c3RlZF9tb2RlLnBy aXZhdGVfZmxhZ3MgJiBJOTE1X01PREVfRkxBR19JTkhFUklURUQpOwo+ICAKPiAgCWlmIChmaXh1 cF9pbmhlcml0ZWQgJiYgIWZhc3Rib290X2VuYWJsZWQoZGV2X3ByaXYpKSB7Cj4gIAkJRFJNX0RF QlVHX0tNUygiaW5pdGlhbCBtb2Rlc2V0IGFuZCBmYXN0Ym9vdCBub3Qgc2V0XG4iKTsKPiBAQCAt MTQxMDYsOCArMTQxMDksOCBAQCBzdGF0aWMgaW50IGludGVsX2F0b21pY19jaGVjayhzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LAo+ICAJLyogQ2F0Y2ggSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEICov Cj4gIAlmb3JfZWFjaF9vbGRuZXdfaW50ZWxfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywgb2xk X2NydGNfc3RhdGUsCj4gIAkJCQkJICAgIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gLQkJaWYgKG5l d19jcnRjX3N0YXRlLT5ody5tb2RlLnByaXZhdGVfZmxhZ3MgIT0KPiAtCQkgICAgb2xkX2NydGNf c3RhdGUtPmh3Lm1vZGUucHJpdmF0ZV9mbGFncykKPiArCQlpZiAobmV3X2NydGNfc3RhdGUtPmh3 LmFkanVzdGVkX21vZGUucHJpdmF0ZV9mbGFncyAhPQo+ICsJCSAgICBvbGRfY3J0Y19zdGF0ZS0+ aHcuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2ZsYWdzKQo+ICAJCQluZXdfY3J0Y19zdGF0ZS0+dWFw aS5tb2RlX2NoYW5nZWQgPSB0cnVlOwo+ICAJfQo+ICAKPiBAQCAtMTQzNjEsNyArMTQzNjQsNyBA QCBzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVfY3J0YyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywK PiAgCSAqIG9mIGVuYWJsaW5nIHRoZW0gb24gdGhlIENSVEMncyBmaXJzdCBmYXN0c2V0Lgo+ICAJ ICovCj4gIAlpZiAobmV3X2NydGNfc3RhdGUtPnVwZGF0ZV9waXBlICYmICFtb2Rlc2V0ICYmCj4g LQkgICAgb2xkX2NydGNfc3RhdGUtPmh3Lm1vZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9G TEFHX0lOSEVSSVRFRCkKPiArCSAgICBvbGRfY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5w cml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKQo+ICAJCWludGVsX2NydGNf YXJtX2ZpZm9fdW5kZXJydW4oY3J0YywgbmV3X2NydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IEBAIC0x NDU1OCw3ICsxNDU2MSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3Bvc3RfY3J0Y19lbmFibGVfdXBk YXRlcyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCSAqIG9mIGVuYWJsaW5nIHRoZW0gb24g dGhlIENSVEMncyBmaXJzdCBmYXN0c2V0Lgo+ICAJICovCj4gIAlpZiAobmV3X2NydGNfc3RhdGUt PnVwZGF0ZV9waXBlICYmICFtb2Rlc2V0ICYmCj4gLQkgICAgb2xkX2NydGNfc3RhdGUtPmh3Lm1v ZGUucHJpdmF0ZV9mbGFncyAmIEk5MTVfTU9ERV9GTEFHX0lOSEVSSVRFRCkKPiArCSAgICBvbGRf Y3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5wcml2YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZM QUdfSU5IRVJJVEVEKQo+ICAJCWludGVsX2NydGNfYXJtX2ZpZm9fdW5kZXJydW4oY3J0YywgbmV3 X2NydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IEBAIC0xNzUyNCwxNSArMTc1MjcsMTEgQEAgc3RhdGlj IHZvaWQgaW50ZWxfbW9kZXNldF9yZWFkb3V0X2h3X3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpCj4gIAkJaW50IG1pbl9jZGNsayA9IDA7Cj4gIAo+ICAJCWlmIChjcnRjX3N0YXRlLT5ody5h Y3RpdmUpIHsKPiAtCQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUgPSAmY3J0Y19zdGF0 ZS0+aHcubW9kZTsKPiArCQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgbW9kZTsKPiAgCj4gIAkJ CWludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZygmY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9k ZSwKPiAgCQkJCQkJICAgIGNydGNfc3RhdGUpOwo+ICAKPiAtCQkJKm1vZGUgPSBjcnRjX3N0YXRl LT5ody5hZGp1c3RlZF9tb2RlOwo+IC0JCQltb2RlLT5oZGlzcGxheSA9IGNydGNfc3RhdGUtPnBp cGVfc3JjX3c7Cj4gLQkJCW1vZGUtPnZkaXNwbGF5ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfaDsK PiAtCj4gIAkJCS8qCj4gIAkJCSAqIFRoZSBpbml0aWFsIG1vZGUgbmVlZHMgdG8gYmUgc2V0IGlu IG9yZGVyIHRvIGtlZXAKPiAgCQkJICogdGhlIGF0b21pYyBjb3JlIGhhcHB5LiBJdCB3YW50cyBh IHZhbGlkIG1vZGUgaWYgdGhlCj4gQEAgLTE3NTQyLDEzICsxNzU0MSwxNyBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9tb2Rlc2V0X3JlYWRvdXRfaHdfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikK PiAgCQkJICogc2V0IGEgZmxhZyB0byBpbmRpY2F0ZSB0aGF0IGEgZnVsbCByZWNhbGN1bGF0aW9u IGlzCj4gIAkJCSAqIG5lZWRlZCBvbiB0aGUgbmV4dCBjb21taXQuCj4gIAkJCSAqLwo+IC0JCQlt b2RlLT5wcml2YXRlX2ZsYWdzID0gSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEOwo+ICsJCQljcnRj X3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLnByaXZhdGVfZmxhZ3MgPSBJOTE1X01PREVfRkxBR19J TkhFUklURUQ7Cj4gKwo+ICsJCQltb2RlID0gY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZTsK PiArCQkJbW9kZS5oZGlzcGxheSA9IGNydGNfc3RhdGUtPnBpcGVfc3JjX3c7Cj4gKwkJCW1vZGUu dmRpc3BsYXkgPSBjcnRjX3N0YXRlLT5waXBlX3NyY19oOwo+ICAKPiAgCQkJaW50ZWxfY3J0Y19j b21wdXRlX3BpeGVsX3JhdGUoY3J0Y19zdGF0ZSk7Cj4gIAo+ICAJCQlpbnRlbF9jcnRjX3VwZGF0 ZV9hY3RpdmVfdGltaW5ncyhjcnRjX3N0YXRlKTsKPiAgCj4gLQkJCWludGVsX2NydGNfY29weV9o d190b191YXBpX3N0YXRlKGNydGNfc3RhdGUpOwo+ICsJCQlpbnRlbF9jcnRjX2NvcHlfaHdfdG9f dWFwaV9zdGF0ZShjcnRjX3N0YXRlLCAmbW9kZSk7Cj4gIAkJfQo+ICAKPiAgCQlmb3JfZWFjaF9p bnRlbF9wbGFuZV9vbl9jcnRjKCZkZXZfcHJpdi0+ZHJtLCBjcnRjLCBwbGFuZSkgewo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCj4g aW5kZXggODNlYTA0MTQ5Yjc3Li4wZjIwYzcxOTBlZWQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAo+IEBAIC04MDIsNyAr ODAyLDcgQEAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgewo+ICAJc3RydWN0IHsKPiAgCQlib29s IGFjdGl2ZSwgZW5hYmxlOwo+ICAJCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqZGVnYW1tYV9s dXQsICpnYW1tYV9sdXQsICpjdG07Cj4gLQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgbW9kZSwg YWRqdXN0ZWRfbW9kZTsKPiArCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBhZGp1c3RlZF9tb2Rl Owo+ICAJfSBodzsKPiAgCj4gIAkvKioKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZHZvLmMKPiBpbmRleCBhNzRkYzViOTE1ZDEuLmFkOGU5OTU5ZDZlMSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2R2by5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYwo+IEBAIC0yMDcsNyArMjA3LDcgQEAg c3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX2R2byhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rl ciwKPiAgCXUzMiB0ZW1wID0gSTkxNV9SRUFEKGR2b19yZWcpOwo+ICAKPiAgCWludGVsX2R2by0+ ZGV2LmRldl9vcHMtPm1vZGVfc2V0KCZpbnRlbF9kdm8tPmRldiwKPiAtCQkJCQkgJnBpcGVfY29u ZmlnLT5ody5tb2RlLAo+ICsJCQkJCSAmcGlwZV9jb25maWctPmh3LmFkanVzdGVkX21vZGUsCj4g IAkJCQkJICZwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZSk7CgpUaGlzIGxvb2tzIHZlcnkg d3JvbmcuCgo+ICAKPiAgCUk5MTVfV1JJVEUoZHZvX3JlZywgdGVtcCB8IERWT19FTkFCTEUpOwo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Nkdm8uYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc2R2by5jCj4gaW5kZXggYTRiMTMz OWZjYzAwLi40YmE3NjQ4YTMxNDUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9zZHZvLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX3Nkdm8uYwo+IEBAIC0xMjEzLDcgKzEyMTMsNiBAQCBpbnRlbF9zZHZvX3NldF9vdXRw dXRfdGltaW5nc19mcm9tX21vZGUoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8sCj4gIHN0 YXRpYyBib29sCj4gIGludGVsX3Nkdm9fZ2V0X3ByZWZlcnJlZF9pbnB1dF9tb2RlKHN0cnVjdCBp bnRlbF9zZHZvICppbnRlbF9zZHZvLAo+ICAJCQkJICAgIHN0cnVjdCBpbnRlbF9zZHZvX2Nvbm5l Y3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3IsCj4gLQkJCQkgICAgY29uc3Qgc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKm1vZGUsCj4gIAkJCQkgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFk anVzdGVkX21vZGUpCj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9zZHZvX2R0ZCBpbnB1dF9kdGQ7Cj4g QEAgLTEyMjQsOSArMTIyMyw5IEBAIGludGVsX3Nkdm9fZ2V0X3ByZWZlcnJlZF9pbnB1dF9tb2Rl KHN0cnVjdCBpbnRlbF9zZHZvICppbnRlbF9zZHZvLAo+ICAKPiAgCWlmICghaW50ZWxfc2R2b19j cmVhdGVfcHJlZmVycmVkX2lucHV0X3RpbWluZyhpbnRlbF9zZHZvLAo+ICAJCQkJCQkgICAgICBp bnRlbF9zZHZvX2Nvbm5lY3RvciwKPiAtCQkJCQkJICAgICAgbW9kZS0+Y2xvY2sgLyAxMCwKPiAt CQkJCQkJICAgICAgbW9kZS0+aGRpc3BsYXksCj4gLQkJCQkJCSAgICAgIG1vZGUtPnZkaXNwbGF5 KSkKPiArCQkJCQkJICAgICAgYWRqdXN0ZWRfbW9kZS0+Y2xvY2sgLyAxMCwKPiArCQkJCQkJICAg ICAgYWRqdXN0ZWRfbW9kZS0+aGRpc3BsYXksCj4gKwkJCQkJCSAgICAgIGFkanVzdGVkX21vZGUt PnZkaXNwbGF5KSkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICAJaWYgKCFpbnRlbF9zZHZvX2dl dF9wcmVmZXJyZWRfaW5wdXRfdGltaW5nKGludGVsX3Nkdm8sCj4gQEAgLTEyNzcsNyArMTI3Niw2 IEBAIHN0YXRpYyBpbnQgaW50ZWxfc2R2b19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqZW5jb2RlciwKPiAgCXN0cnVjdCBpbnRlbF9zZHZvX2Nvbm5lY3RvciAqaW50ZWxfc2R2 b19jb25uZWN0b3IgPQo+ICAJCXRvX2ludGVsX3Nkdm9fY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNv bm5lY3Rvcik7Cj4gIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZw aXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsKPiAtCXN0cnVjdCBkcm1fZGlzcGxheV9tb2Rl ICptb2RlID0gJnBpcGVfY29uZmlnLT5ody5tb2RlOwo+ICAKPiAgCURSTV9ERUJVR19LTVMoImZv cmNpbmcgYnBjIHRvIDggZm9yIFNEVk9cbiIpOwo+ICAJcGlwZV9jb25maWctPnBpcGVfYnBwID0g OCozOwo+IEBAIC0xMjkzLDEyICsxMjkxLDEyIEBAIHN0YXRpYyBpbnQgaW50ZWxfc2R2b19jb21w dXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCSAqIHRoZSBzZXF1 ZW5jZSB0byBkbyBpdC4gT2ggd2VsbC4KPiAgCSAqLwo+ICAJaWYgKElTX1RWKGludGVsX3Nkdm9f Y29ubmVjdG9yKSkgewo+IC0JCWlmICghaW50ZWxfc2R2b19zZXRfb3V0cHV0X3RpbWluZ3NfZnJv bV9tb2RlKGludGVsX3Nkdm8sIG1vZGUpKQo+ICsJCWlmICghaW50ZWxfc2R2b19zZXRfb3V0cHV0 X3RpbWluZ3NfZnJvbV9tb2RlKGludGVsX3Nkdm8sCj4gKwkJCQkJCQkgICAgIGFkanVzdGVkX21v ZGUpKQo+ICAJCQlyZXR1cm4gLUVJTlZBTDsKPiAgCj4gIAkJKHZvaWQpIGludGVsX3Nkdm9fZ2V0 X3ByZWZlcnJlZF9pbnB1dF9tb2RlKGludGVsX3Nkdm8sCj4gIAkJCQkJCQkgICBpbnRlbF9zZHZv X2Nvbm5lY3RvciwKPiAtCQkJCQkJCSAgIG1vZGUsCj4gIAkJCQkJCQkgICBhZGp1c3RlZF9tb2Rl KTsKPiAgCQlwaXBlX2NvbmZpZy0+c2R2b190dl9jbG9jayA9IHRydWU7Cj4gIAl9IGVsc2UgaWYg KElTX0xWRFMoaW50ZWxfc2R2b19jb25uZWN0b3IpKSB7Cj4gQEAgLTEzMDgsNyArMTMwNiw2IEBA IHN0YXRpYyBpbnQgaW50ZWxfc2R2b19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciwKPiAgCj4gIAkJKHZvaWQpIGludGVsX3Nkdm9fZ2V0X3ByZWZlcnJlZF9pbnB1 dF9tb2RlKGludGVsX3Nkdm8sCj4gIAkJCQkJCQkgICBpbnRlbF9zZHZvX2Nvbm5lY3RvciwKPiAt CQkJCQkJCSAgIG1vZGUsCj4gIAkJCQkJCQkgICBhZGp1c3RlZF9tb2RlKTsKPiAgCX0KPiAgCj4g QEAgLTE0MzUsNyArMTQzMiw2IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nkdm9fcHJlX2VuYWJsZShz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciwKPiAgCQl0b19pbnRlbF9zZHZvX2Nv bm5lY3Rvcl9zdGF0ZShjb25uX3N0YXRlKTsKPiAgCWNvbnN0IHN0cnVjdCBpbnRlbF9zZHZvX2Nv bm5lY3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3IgPQo+ICAJCXRvX2ludGVsX3Nkdm9fY29ubmVj dG9yKGNvbm5fc3RhdGUtPmNvbm5lY3Rvcik7Cj4gLQljb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqbW9kZSA9ICZjcnRjX3N0YXRlLT5ody5tb2RlOwo+ICAJc3RydWN0IGludGVsX3Nkdm8g KmludGVsX3Nkdm8gPSB0b19zZHZvKGludGVsX2VuY29kZXIpOwo+ICAJdTMyIHNkdm94Owo+ICAJ c3RydWN0IGludGVsX3Nkdm9faW5fb3V0X21hcCBpbl9vdXQ7Cj4gQEAgLTE0NjgsNyArMTQ2NCw3 IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nkdm9fcHJlX2VuYWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqaW50ZWxfZW5jb2RlciwKPiAgCQlpbnRlbF9zZHZvX2dldF9kdGRfZnJvbV9tb2RlKCZvdXRw dXRfZHRkLAo+ICAJCQkJCSAgICAgaW50ZWxfc2R2b19jb25uZWN0b3ItPmJhc2UucGFuZWwuZml4 ZWRfbW9kZSk7Cj4gIAllbHNlCj4gLQkJaW50ZWxfc2R2b19nZXRfZHRkX2Zyb21fbW9kZSgmb3V0 cHV0X2R0ZCwgbW9kZSk7Cj4gKwkJaW50ZWxfc2R2b19nZXRfZHRkX2Zyb21fbW9kZSgmb3V0cHV0 X2R0ZCwgYWRqdXN0ZWRfbW9kZSk7Cj4gIAlpZiAoIWludGVsX3Nkdm9fc2V0X291dHB1dF90aW1p bmcoaW50ZWxfc2R2bywgJm91dHB1dF9kdGQpKQo+ICAJCURSTV9JTkZPKCJTZXR0aW5nIG91dHB1 dCB0aW1pbmdzIG9uICVzIGZhaWxlZFxuIiwKPiAgCQkJIFNEVk9fTkFNRShpbnRlbF9zZHZvKSk7 Cj4gLS0gCj4gMi4yNC4wCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==