From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 02/15] drm/i915: Pass atomic state to crtc enable/disable functions Date: Thu, 18 Aug 2016 15:19:37 +0200 Message-ID: <20160818131937.GE6232@phenom.ffwll.local> References: <1470755054-32699-1-git-send-email-maarten.lankhorst@linux.intel.com> <1470755054-32699-3-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id 554096EA2E for ; Thu, 18 Aug 2016 13:19:41 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id o80so5616315wme.0 for ; Thu, 18 Aug 2016 06:19:41 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1470755054-32699-3-git-send-email-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 T24gVHVlLCBBdWcgMDksIDIwMTYgYXQgMDU6MDQ6MDFQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gVGhpcyBpcyByZXF1aXJlZCBmb3Igc3VwcG9ydGluZyBub25ibG9ja2luZyBt b2Rlc2V0cy4gSXRlcmF0aW5nIG92ZXIKPiB0aGUgY29ubmVjdG9yIGxpc3Qgd2lsbCBubyBsb25n ZXIgYmUgYWxsb3dlZCB3aGVuIHdlIGRvbid0IGhvbGQKPiBjb25uZWN0aW9uX211dGV4LCBzbyB3 ZSBoYXZlIHRvIHVzZSB0aGUgYXRvbWljIHN0YXRlLgo+IAo+IEZpeCBkaXNhYmxlX25vYXRvbWlj IGJ5IHBvcHVsYXRpbmcgdGhlIG1pbmltYWwgc3RhdGUgcmVxdWlyZWQgdG8KPiBkaXNhYmxlIGEg Y29ubmVjdG9yLgo+IAo+IFNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVu Lmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmggICAgICB8ICA2ICsrLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jIHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCj4gIDIg ZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCj4gaW5kZXggYzM2ZDE3NjU5ZWJlLi42MDMwZDBlZGNmOGYgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBAQCAtNjI4LDggKzYyOCwxMCBAQCBzdHJ1Y3Qg ZHJtX2k5MTVfZGlzcGxheV9mdW5jcyB7Cj4gIAkJCQkJIHN0cnVjdCBpbnRlbF9pbml0aWFsX3Bs YW5lX2NvbmZpZyAqKTsKPiAgCWludCAoKmNydGNfY29tcHV0ZV9jbG9jaykoc3RydWN0IGludGVs X2NydGMgKmNydGMsCj4gIAkJCQkgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KTsKPiAtCXZvaWQgKCpjcnRjX2VuYWJsZSkoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKPiAtCXZv aWQgKCpjcnRjX2Rpc2FibGUpKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4gKwl2b2lkICgqY3J0 Y19lbmFibGUpKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKPiArCQkJICAg IHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpOwo+ICsJdm9pZCAoKmNydGNfZGlz YWJsZSkoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAo+ICsJCQkgICAg IHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpOwo+ICAJdm9pZCAoKmF1ZGlvX2Nv ZGVjX2VuYWJsZSkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAgCQkJCSAgIHN0 cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkJICAgY29uc3Qgc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKPiBpbmRleCA5Y2JmNTQzMWMxZTMuLmFlNTU1YjQyNDBjNiAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtNDY5NCwxNSArNDY5NCwxNSBAQCBzdGF0aWMg dm9pZCBpbnRlbF9jcnRjX2Rpc2FibGVfcGxhbmVzKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgdW5z aWduZWQgcGxhbmVfbWFzawo+ICAJaW50ZWxfZnJvbnRidWZmZXJfZmxpcCh0b19pOTE1KGRldiks IElOVEVMX0ZST05UQlVGRkVSX0FMTF9NQVNLKHBpcGUpKTsKPiAgfQo+ICAKPiAtc3RhdGljIHZv aWQgaXJvbmxha2VfY3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ICtzdGF0aWMg dm9pZCBpcm9ubGFrZV9jcnRjX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9j b25maWcsCj4gKwkJCQkgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKm9sZF9zdGF0ZSkKPiAgewo+ ICsJc3RydWN0IGRybV9jcnRjICpjcnRjID0gcGlwZV9jb25maWctPmJhc2UuY3J0YzsKPiAgCXN0 cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50 ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4gIAlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlcjsKPiAgCWludCBwaXBlID0gaW50ZWxfY3J0Yy0+cGlwZTsKPiAtCXN0cnVjdCBpbnRl bF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyA9Cj4gLQkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRj LT5zdGF0ZSk7Cj4gIAo+ICAJaWYgKFdBUk5fT04oaW50ZWxfY3J0Yy0+YWN0aXZlKSkKPiAgCQly ZXR1cm47Cj4gQEAgLTQ3OTEsMTYgKzQ3OTEsMTYgQEAgc3RhdGljIGJvb2wgaHN3X2NydGNfc3Vw cG9ydHNfaXBzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ICAJcmV0dXJuIEhBU19JUFMoY3J0 Yy0+YmFzZS5kZXYpICYmIGNydGMtPnBpcGUgPT0gUElQRV9BOwo+ICB9Cj4gIAo+IC1zdGF0aWMg dm9pZCBoYXN3ZWxsX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiArc3RhdGlj IHZvaWQgaGFzd2VsbF9jcnRjX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9j b25maWcsCj4gKwkJCQlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRlKQo+ICB7Cj4g KwlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBwaXBlX2NvbmZpZy0+YmFzZS5jcnRjOwo+ICAJc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICppbnRl bF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKPiAgCXN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyOwo+ICAJaW50IHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlLCBoc3dfd29ya2Fyb3VuZF9w aXBlOwo+ICAJZW51bSB0cmFuc2NvZGVyIGNwdV90cmFuc2NvZGVyID0gaW50ZWxfY3J0Yy0+Y29u ZmlnLT5jcHVfdHJhbnNjb2RlcjsKPiAtCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2Nv bmZpZyA9Cj4gLQkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSk7Cj4gIAo+ICAJaWYg KFdBUk5fT04oaW50ZWxfY3J0Yy0+YWN0aXZlKSkKPiAgCQlyZXR1cm47Cj4gQEAgLTQ5MzAsOCAr NDkzMCwxMCBAQCBzdGF0aWMgdm9pZCBpcm9ubGFrZV9wZml0X2Rpc2FibGUoc3RydWN0IGludGVs X2NydGMgKmNydGMsIGJvb2wgZm9yY2UpCj4gIAl9Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGly b25sYWtlX2NydGNfZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gK3N0YXRpYyB2b2lk IGlyb25sYWtlX2NydGNfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNf c3RhdGUsCj4gKwkJCQkgIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCj4gIHsK PiArCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IG9sZF9jcnRjX3N0YXRlLT5iYXNlLmNydGM7Cj4g IAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2Owo+ICAJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ICAJc3RydWN0IGludGVsX2NydGMg KmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+IEBAIC00OTkzLDggKzQ5OTUsMTAg QEAgc3RhdGljIHZvaWQgaXJvbmxha2VfY3J0Y19kaXNhYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YykKPiAgCWludGVsX3NldF9wY2hfZmlmb191bmRlcnJ1bl9yZXBvcnRpbmcoZGV2X3ByaXYsIHBp cGUsIHRydWUpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBoYXN3ZWxsX2NydGNfZGlzYWJsZShz dHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gK3N0YXRpYyB2b2lkIGhhc3dlbGxfY3J0Y19kaXNhYmxl KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSwKPiArCQkJCSBzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRlKQo+ICB7Cj4gKwlzdHJ1Y3QgZHJtX2NydGMgKmNy dGMgPSBvbGRfY3J0Y19zdGF0ZS0+YmFzZS5jcnRjOwo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRl diA9IGNydGMtPmRldjsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoZGV2KTsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxf Y3J0YyhjcnRjKTsKPiBAQCAtNjA5OCwxNCArNjEwMiwxNCBAQCBzdGF0aWMgdm9pZCB2YWxsZXl2 aWV3X21vZGVzZXRfY29tbWl0X2NkY2xrKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3Rh dGUpCj4gIAlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX1BJ UEVfQSk7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIHZhbGxleXZpZXdfY3J0Y19lbmFibGUoc3Ry dWN0IGRybV9jcnRjICpjcnRjKQo+ICtzdGF0aWMgdm9pZCB2YWxsZXl2aWV3X2NydGNfZW5hYmxl KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKPiArCQkJCSAgIHN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCj4gIHsKPiArCXN0cnVjdCBkcm1fY3J0YyAqY3J0 YyA9IHBpcGVfY29uZmlnLT5iYXNlLmNydGM7Cj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0g Y3J0Yy0+ZGV2Owo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkx NShkZXYpOwo+ICAJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRj KGNydGMpOwo+ICAJc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXI7Cj4gLQlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcgPQo+IC0JCXRvX2ludGVsX2NydGNfc3RhdGUoY3J0 Yy0+c3RhdGUpOwo+ICAJaW50IHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwo+ICAKPiAgCWlmIChX QVJOX09OKGludGVsX2NydGMtPmFjdGl2ZSkpCj4gQEAgLTYxNjksMTQgKzYxNzMsMTQgQEAgc3Rh dGljIHZvaWQgaTl4eF9zZXRfcGxsX2RpdmlkZXJzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ ICAJSTkxNV9XUklURShGUDEoY3J0Yy0+cGlwZSksIGNydGMtPmNvbmZpZy0+ZHBsbF9od19zdGF0 ZS5mcDEpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBpOXh4X2NydGNfZW5hYmxlKHN0cnVjdCBk cm1fY3J0YyAqY3J0YykKPiArc3RhdGljIHZvaWQgaTl4eF9jcnRjX2VuYWJsZShzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcsCj4gKwkJCSAgICAgc3RydWN0IGRybV9hdG9taWNf c3RhdGUgKm9sZF9zdGF0ZSkKPiAgewo+ICsJc3RydWN0IGRybV9jcnRjICpjcnRjID0gcGlwZV9j b25maWctPmJhc2UuY3J0YzsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7 Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4g IAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4g IAlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcjsKPiAtCXN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpwaXBlX2NvbmZpZyA9Cj4gLQkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSk7 Cj4gIAllbnVtIHBpcGUgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7Cj4gIAo+ICAJaWYgKFdBUk5f T04oaW50ZWxfY3J0Yy0+YWN0aXZlKSkKPiBAQCAtNjIzMiw4ICs2MjM2LDEwIEBAIHN0YXRpYyB2 b2lkIGk5eHhfcGZpdF9kaXNhYmxlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ICAJSTkxNV9X UklURShQRklUX0NPTlRST0wsIDApOwo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBpOXh4X2NydGNf ZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gK3N0YXRpYyB2b2lkIGk5eHhfY3J0Y19k aXNhYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSwKPiArCQkJICAg ICAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKm9sZF9zdGF0ZSkKPiAgewo+ICsJc3RydWN0IGRy bV9jcnRjICpjcnRjID0gb2xkX2NydGNfc3RhdGUtPmJhc2UuY3J0YzsKPiAgCXN0cnVjdCBkcm1f ZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9 IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4gQEAgLTYyODUsNiArNjI5MSw5IEBAIHN0YXRpYyB2b2lk IGludGVsX2NydGNfZGlzYWJsZV9ub2F0b21pYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIAlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmRldik7Cj4g IAllbnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIGRvbWFpbjsKPiAgCXVuc2lnbmVkIGxv bmcgZG9tYWluczsKPiArCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiArCXN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ICsJaW50IHJldDsKPiAgCj4gIAlpZiAo IWludGVsX2NydGMtPmFjdGl2ZSkKPiAgCQlyZXR1cm47Cj4gQEAgLTYyOTgsNyArNjMwNywxOCBA QCBzdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2Rpc2FibGVfbm9hdG9taWMoc3RydWN0IGRybV9jcnRj ICpjcnRjKQo+ICAJCXRvX2ludGVsX3BsYW5lX3N0YXRlKGNydGMtPnByaW1hcnktPnN0YXRlKS0+ dmlzaWJsZSA9IGZhbHNlOwo+ICAJfQo+ICAKPiAtCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlz YWJsZShjcnRjKTsKPiArCXN0YXRlID0gZHJtX2F0b21pY19zdGF0ZV9hbGxvYyhjcnRjLT5kZXYp Owo+ICsJc3RhdGUtPmFjcXVpcmVfY3R4ID0gY3J0Yy0+ZGV2LT5tb2RlX2NvbmZpZy5hY3F1aXJl X2N0eDsKClVnaCwgcmVhbGx5IG5vdCBuaWNlIHRvIG5vdCBwYXNzIHRoZSBhY3F1aXJlX2N0eCBl eHBsaWNpdGx5IGFyb3VuZCBoZXJlLgpBbnl3YXksIHRoaXMgaXMKClJldmlld2VkLWJ5OiBEYW5p ZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgoKPiArCj4gKwkvKiBFdmVyeXRoaW5n J3MgYWxyZWFkeSBsb2NrZWQsIC1FREVBRExLIGNhbid0IGhhcHBlbi4gKi8KPiArCWNydGNfc3Rh dGUgPSBpbnRlbF9hdG9taWNfZ2V0X2NydGNfc3RhdGUoc3RhdGUsIGludGVsX2NydGMpOwo+ICsJ cmV0ID0gZHJtX2F0b21pY19hZGRfYWZmZWN0ZWRfY29ubmVjdG9ycyhzdGF0ZSwgY3J0Yyk7Cj4g Kwo+ICsJV0FSTl9PTihJU19FUlIoY3J0Y19zdGF0ZSkgfHwgcmV0KTsKPiArCj4gKwlkZXZfcHJp di0+ZGlzcGxheS5jcnRjX2Rpc2FibGUoY3J0Y19zdGF0ZSwgc3RhdGUpOwo+ICsKPiArCWRybV9h dG9taWNfc3RhdGVfZnJlZShzdGF0ZSk7Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygiW0NSVEM6JWQ6 JXNdIGh3IHN0YXRlIGFkanVzdGVkLCB3YXMgZW5hYmxlZCwgbm93IGRpc2FibGVkXG4iLAo+ICAJ CSAgICAgIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+IEBAIC0xMzY2OSw3ICsxMzY4OSw3 IEBAIHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSAqc3RhdGUpCj4gIAo+ICAJCWlmIChvbGRfY3J0Y19zdGF0ZS0+YWN0aXZlKSB7Cj4g IAkJCWludGVsX2NydGNfZGlzYWJsZV9wbGFuZXMoY3J0Yywgb2xkX2NydGNfc3RhdGUtPnBsYW5l X21hc2spOwo+IC0JCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUoY3J0Yyk7Cj4gKwkJ CWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSh0b19pbnRlbF9jcnRjX3N0YXRlKG9sZF9j cnRjX3N0YXRlKSwgc3RhdGUpOwo+ICAJCQlpbnRlbF9jcnRjLT5hY3RpdmUgPSBmYWxzZTsKPiAg CQkJaW50ZWxfZmJjX2Rpc2FibGUoaW50ZWxfY3J0Yyk7Cj4gIAkJCWludGVsX2Rpc2FibGVfc2hh cmVkX2RwbGwoaW50ZWxfY3J0Yyk7Cj4gQEAgLTEzNzEwLDcgKzEzNzMwLDcgQEAgc3RhdGljIHZv aWQgaW50ZWxfYXRvbWljX2NvbW1pdF90YWlsKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0 ZSkKPiAgCj4gIAkJaWYgKG1vZGVzZXQgJiYgY3J0Yy0+c3RhdGUtPmFjdGl2ZSkgewo+ICAJCQl1 cGRhdGVfc2NhbmxpbmVfb2Zmc2V0KHRvX2ludGVsX2NydGMoY3J0YykpOwo+IC0JCQlkZXZfcHJp di0+ZGlzcGxheS5jcnRjX2VuYWJsZShjcnRjKTsKPiArCQkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0 Y19lbmFibGUocGlwZV9jb25maWcsIHN0YXRlKTsKPiAgCQl9Cj4gIAo+ICAJCS8qIENvbXBsZXRl IGV2ZW50cyBmb3Igbm93IGRpc2FibGUgcGlwZXMgaGVyZS4gKi8KPiAtLSAKPiAyLjcuNAo+IAo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0g CkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6 Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=