From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anshuamn Gupta Subject: Re: [PATCH 3/3] drm/i915/dc3co: Avoid full modeset when EXITLINE needs to be changed Date: Sun, 17 Nov 2019 18:23:49 +0530 Message-ID: <20191117125348.GA22063@intel.com> References: <20191101001422.209326-1-jose.souza@intel.com> <20191101001422.209326-3-jose.souza@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 187F56E22A for ; Sun, 17 Nov 2019 13:01:37 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20191101001422.209326-3-jose.souza@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?utf-8?B?Sm9zw6k=?= Roberto de Souza Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gMjAxOS0xMC0zMSBhdCAxNzoxNDoyMiAtMDcwMCwgSm9zw6kgUm9iZXJ0byBkZSBTb3V6YSB3 cm90ZToKPiBBIHJlY2VudCBjaGFuZ2UgaW4gQlNwZWMgYWxsb3cgdXMgdG8gY2hhbmdlIEVYVExJ TkUgd2hpbGUgdHJhbnNjb2Rlcgo+IGlzIGVuYWJsZWQgc28gdGhpcyBhbGxvdyB1cyB0byBjaGFu Z2UgaXQgZXZlbiB3aGVuIGRvaW5nIHRoZSBmaXJzdAo+IGZhc3RzZXQgYWZ0ZXIgdGFraW5nIG92 ZXIgcHJldmlvdXMgaGFyZHdhcmUgc3RhdGUgc2V0IGJ5IEJJT1MuCj4gQklPUyBkb24ndCBlbmFi bGUgUFNSLCBzbyBpZiBzaW5rIHN1cHBvcnRzIFBTUiBpdCB3aWxsIGJlIGVuYWJsZWQgb24KPiB0 aGUgZmlyc3QgZmFzdHNldCwgc28gbW92aW5nIHRoZSBFWFRMSU5FIGNvbXB1dGUgYW5kIHNldCB0 byBQU1IgZmxvd3MKPiBhbGxvdyB1cyB0byBzaW1wbGZ5IGEgYnVuY2ggb2YgY29kZS4KPiAKPiBU aGlzIHdpbGwgc2F2ZSBhIGxvdCBvZiB0aW1lIGluIGFsbCB0aGUgSUdUIHRlc3RzIHRoYXQgdXNl cyBDUkMsIGFzCj4gd2hlbiBQU1IyIGlzIGVuYWJsZWQgQ1JDcyBhcmUgbm90IGdlbmVyYXRlZCwg c28gd2Ugc3dpdGNoIHRvIFBTUjEsIHNvCj4gdGhlIHByZXZpb3VzIGNvZGUgd291bGQgY29tcHV0 ZSBkYzNjb19leGl0bGluZT0wIGNhdXNpbmcgYSBmdWxsCj4gbW9kZXNldCB0aGF0IHdvdWxkIHNo dXRkb3duIHBpcGUsIGVuYWJsZSBhbmQgdHJhaW4gbGluay4KPiAKPiBCU3BlYzogNDkxOTYKPiBD YzogSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPgo+IENjOiBBbnNodW1hbiBHdXB0YSA8 YW5zaHVtYW4uZ3VwdGFAaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8g ZGUgU291emEgPGpvc2Uuc291emFAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jICAgICB8IDg2IC0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jIHwgIDEgLQo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jICAgICB8IDQ3ICsrKysrKysr KysrCj4gIDMgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgODcgZGVsZXRpb25zKC0p Cj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRp LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jCj4gaW5kZXggYjUx ZjI0NGFkN2E1Li5mNTJmYjc2MTlkNDYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kZGkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGRpLmMKPiBAQCAtMzMzOSw4NiArMzMzOSw2IEBAIHN0YXRpYyB2b2lkIGludGVs X2RkaV9kaXNhYmxlX2ZlY19zdGF0ZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAg CVBPU1RJTkdfUkVBRChpbnRlbF9kcC0+cmVncy5kcF90cF9jdGwpOwo+ICB9Cj4gIAo+IC1zdGF0 aWMgdm9pZAo+IC10Z2xfY2xlYXJfcHNyMl90cmFuc2NvZGVyX2V4aXRsaW5lKGNvbnN0IHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpCj4gLXsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3N0YXRlLT5iYXNlLmNydGMtPmRldik7Cj4gLQl1MzIg dmFsOwo+IC0KPiAtCWlmICghY3N0YXRlLT5kYzNjb19leGl0bGluZSkKPiAtCQlyZXR1cm47Cj4g LQo+IC0JdmFsID0gSTkxNV9SRUFEKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsK PiAtCXZhbCAmPSB+KEVYSVRMSU5FX01BU0sgfCBFWElUTElORV9FTkFCTEUpOwo+IC0JSTkxNV9X UklURShFWElUTElORShjc3RhdGUtPmNwdV90cmFuc2NvZGVyKSwgdmFsKTsKPiAtfQo+IC0KPiAt c3RhdGljIHZvaWQKPiAtdGdsX3NldF9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUoY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKPiAtewo+IC0JdTMyIHZhbCwgZXhpdF9zY2Fu bGluZXM7Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNz dGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+IC0KPiAtCWlmICghY3N0YXRlLT5kYzNjb19leGl0bGlu ZSkKPiAtCQlyZXR1cm47Cj4gLQo+IC0JZXhpdF9zY2FubGluZXMgPSBjc3RhdGUtPmRjM2NvX2V4 aXRsaW5lOwo+IC0JZXhpdF9zY2FubGluZXMgPDw9IEVYSVRMSU5FX1NISUZUOwo+IC0JdmFsID0g STkxNV9SRUFEKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsKPiAtCXZhbCAmPSB+ KEVYSVRMSU5FX01BU0sgfCBFWElUTElORV9FTkFCTEUpOwo+IC0JdmFsIHw9IGV4aXRfc2Nhbmxp bmVzOwo+IC0JdmFsIHw9IEVYSVRMSU5FX0VOQUJMRTsKPiAtCUk5MTVfV1JJVEUoRVhJVExJTkUo Y3N0YXRlLT5jcHVfdHJhbnNjb2RlciksIHZhbCk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2b2lkIHRn bF9kYzNjb19leGl0bGluZV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlciwKPiAtCQkJCQkgICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKQo+IC17 Cj4gLQl1MzIgZXhpdF9zY2FubGluZXM7Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KGNzdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+IC0JdTMyIGNydGNfdmRp c3BsYXkgPSBjc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZkaXNwbGF5Owo+IC0KPiAt CWNzdGF0ZS0+ZGMzY29fZXhpdGxpbmUgPSAwOwo+IC0KPiAtCWlmICghKGRldl9wcml2LT5jc3Iu YWxsb3dlZF9kY19tYXNrICYgRENfU1RBVEVfRU5fREMzQ08pKQo+IC0JCXJldHVybjsKPiAtCj4g LQkvKiBCLlNwZWNzOjQ5MTk2IERDM0NPIG9ubHkgd29ya3Mgd2l0aCBwaXBlQSBhbmQgRERJQS4q Lwo+IC0JaWYgKHRvX2ludGVsX2NydGMoY3N0YXRlLT5iYXNlLmNydGMpLT5waXBlICE9IFBJUEVf QSB8fAo+IC0JICAgIGVuY29kZXItPnBvcnQgIT0gUE9SVF9BKQo+IC0JCXJldHVybjsKPiAtCj4g LQlpZiAoIWNzdGF0ZS0+aGFzX3BzcjIgfHwgIWNzdGF0ZS0+YmFzZS5hY3RpdmUpCj4gLQkJcmV0 dXJuOwo+IC0KPiAtCS8qCj4gLQkgKiBEQzNDTyBFeGl0IHRpbWUgMjAwdXMgQi5TcGVjIDQ5MTk2 Cj4gLQkgKiBQU1IyIHRyYW5zY29kZXIgRWFybHkgRXhpdCBzY2FubGluZXMgPSBST1VORFVQKDIw MCAvIGxpbmUgdGltZSkgKyAxCj4gLQkgKi8KPiAtCWV4aXRfc2NhbmxpbmVzID0KPiAtCQlpbnRl bF91c2Vjc190b19zY2FubGluZXMoJmNzdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLCAyMDApICsg MTsKPiAtCj4gLQlpZiAoV0FSTl9PTihleGl0X3NjYW5saW5lcyA+IGNydGNfdmRpc3BsYXkpKQo+ IC0JCXJldHVybjsKPiAtCj4gLQljc3RhdGUtPmRjM2NvX2V4aXRsaW5lID0gY3J0Y192ZGlzcGxh eSAtIGV4aXRfc2NhbmxpbmVzOwo+IC0JRFJNX0RFQlVHX0tNUygiREMzQ08gZXhpdCBzY2FubGlu ZXMgJWRcbiIsIGNzdGF0ZS0+ZGMzY29fZXhpdGxpbmUpOwo+IC19Cj4gLQo+IC1zdGF0aWMgdm9p ZCB0Z2xfZGMzY29fZXhpdGxpbmVfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKPiAtewo+IC0JdTMyIHZhbDsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+IC0KPiAt CWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgMTIpCj4gLQkJcmV0dXJuOwo+IC0KPiAtCXZhbCA9 IEk5MTVfUkVBRChFWElUTElORShjcnRjX3N0YXRlLT5jcHVfdHJhbnNjb2RlcikpOwo+IC0KPiAt CWlmICh2YWwgJiBFWElUTElORV9FTkFCTEUpCj4gLQkJY3J0Y19zdGF0ZS0+ZGMzY29fZXhpdGxp bmUgPSB2YWwgJiBFWElUTElORV9NQVNLOwo+IC19Cj4gLQo+ICBzdGF0aWMgdm9pZCB0Z2xfZGRp X3ByZV9lbmFibGVfZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJCQkgIGNv bnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ICAJCQkJICBjb25zdCBz dHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSkKPiBAQCAtMzQzMSw3ICszMzUx LDYgQEAgc3RhdGljIHZvaWQgdGdsX2RkaV9wcmVfZW5hYmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyLAo+ICAJaW50IGxldmVsID0gaW50ZWxfZGRpX2RwX2xldmVsKGludGVsX2Rw KTsKPiAgCWVudW0gdHJhbnNjb2RlciB0cmFuc2NvZGVyID0gY3J0Y19zdGF0ZS0+Y3B1X3RyYW5z Y29kZXI7Cj4gIAo+IC0JdGdsX3NldF9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUoY3J0Y19zdGF0 ZSk7Cj4gIAlpbnRlbF9kcF9zZXRfbGlua19wYXJhbXMoaW50ZWxfZHAsIGNydGNfc3RhdGUtPnBv cnRfY2xvY2ssCj4gIAkJCQkgY3J0Y19zdGF0ZS0+bGFuZV9jb3VudCwgaXNfbXN0KTsKPiAgCj4g QEAgLTM3NjAsNyArMzY3OSw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2RkaV9wb3N0X2Rpc2FibGVf ZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJCQkJCSAgZGlnX3BvcnQtPmRk aV9pb19wb3dlcl9kb21haW4pOwo+ICAKPiAgCWludGVsX2RkaV9jbGtfZGlzYWJsZShlbmNvZGVy KTsKPiAtCXRnbF9jbGVhcl9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUob2xkX2NydGNfc3RhdGUp Owo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfcG9zdF9kaXNhYmxlX2hkbWkoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gQEAgLTQzMDgsOSArNDIyNiw2IEBAIHZvaWQg aW50ZWxfZGRpX2dldF9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJ YnJlYWs7Cj4gIAl9Cj4gIAo+IC0JaWYgKGVuY29kZXItPnR5cGUgPT0gSU5URUxfT1VUUFVUX0VE UCkKPiAtCQl0Z2xfZGMzY29fZXhpdGxpbmVfZ2V0X2NvbmZpZyhwaXBlX2NvbmZpZyk7Cj4gLQo+ ICAJcGlwZV9jb25maWctPmhhc19hdWRpbyA9Cj4gIAkJaW50ZWxfZGRpX2lzX2F1ZGlvX2VuYWJs ZWQoZGV2X3ByaXYsIGNwdV90cmFuc2NvZGVyKTsKPiAgCj4gQEAgLTQzOTIsNyArNDMwNyw2IEBA IHN0YXRpYyBpbnQgaW50ZWxfZGRpX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVy ICplbmNvZGVyLAo+ICAJCXJldCA9IGludGVsX2hkbWlfY29tcHV0ZV9jb25maWcoZW5jb2Rlciwg cGlwZV9jb25maWcsIGNvbm5fc3RhdGUpOwo+ICAJfSBlbHNlIHsKPiAgCQlyZXQgPSBpbnRlbF9k cF9jb21wdXRlX2NvbmZpZyhlbmNvZGVyLCBwaXBlX2NvbmZpZywgY29ubl9zdGF0ZSk7Cj4gLQkJ dGdsX2RjM2NvX2V4aXRsaW5lX2NvbXB1dGVfY29uZmlnKGVuY29kZXIsIHBpcGVfY29uZmlnKTsK PiAgCX0KPiAgCj4gIAlpZiAocmV0KQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfZGlzcGxheS5jCj4gaW5kZXggMzQ4Y2UwNDU2Njk2Li42YzFjOTNiMmE4MWYgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0x MzA5MSw3ICsxMzA5MSw2IEBAIGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmN1cnJlbnRfY29uZmlnLAo+ICAKPiAgCVBJUEVfQ09ORl9DSEVD S19JKHBpeGVsX211bHRpcGxpZXIpOwo+ICAJUElQRV9DT05GX0NIRUNLX0kob3V0cHV0X2Zvcm1h dCk7Cj4gLQlQSVBFX0NPTkZfQ0hFQ0tfSShkYzNjb19leGl0bGluZSk7Cj4gIAlQSVBFX0NPTkZf Q0hFQ0tfQk9PTChoYXNfaGRtaV9zaW5rKTsKPiAgCWlmICgoSU5URUxfR0VOKGRldl9wcml2KSA8 IDggJiYgIUlTX0hBU1dFTEwoZGV2X3ByaXYpKSB8fAo+ICAJICAgIElTX1ZBTExFWVZJRVcoZGV2 X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9wc3IuYwo+IGluZGV4IGJiOWI1MzQ5YjcyYS4uMDZhMGExYzk2MjFlIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jCj4gQEAgLTU5Niw2 ICs1OTYsMzcgQEAgc3RhdGljIHZvaWQgdGdsX2Rpc2FsbG93X2RjM2NvX29uX3BzcjJfZXhpdChz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAl0Z2xfcHNyMl9kaXNhYmxlX2Rj M2NvKGRldl9wcml2KTsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQKPiArdGdsX2RjM2NvX2V4aXRs aW5lX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCj4gKwkJCQkgIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICt7Cj4gKwljb25zdCB1MzIgY3J0 Y192ZGlzcGxheSA9IGNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZkaXNwbGF5 Owo+ICsJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQgPSBkcF90b19kaWdfcG9y dChpbnRlbF9kcCk7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90 b19pOTE1KGludGVsX2RwKTsKPiArCXUzMiBleGl0X3NjYW5saW5lczsKV2Ugd2FudGVkIHRvIGV4 cGxpY2l0bHkgY2xlYXIgZGMzY29fZXhpdGxpbmUgaW4gY2FzZSBpdCBpcyBub3QKc3VwcG9ydGVk Lgo+ICsKPiArCWlmICghKGRldl9wcml2LT5jc3IuYWxsb3dlZF9kY19tYXNrICYgRENfU1RBVEVf RU5fREMzQ08pKQo+ICsJCXJldHVybjsKPiArCj4gKwkvKiBCLlNwZWNzOjQ5MTk2IERDM0NPIG9u bHkgd29ya3Mgd2l0aCBwaXBlQSBhbmQgRERJQS4qLwo+ICsJaWYgKHRvX2ludGVsX2NydGMoY3J0 Y19zdGF0ZS0+YmFzZS5jcnRjKS0+cGlwZSAhPSBQSVBFX0EgfHwKPiArCSAgICBkaWdfcG9ydC0+ YmFzZS5wb3J0ICE9IFBPUlRfQSkKPiArCQlyZXR1cm47Cj4gKwo+ICsJLyoKPiArCSAqIERDM0NP IEV4aXQgdGltZSAyMDB1cyBCLlNwZWMgNDkxOTYKPiArCSAqIFBTUjIgdHJhbnNjb2RlciBFYXJs eSBFeGl0IHNjYW5saW5lcyA9IFJPVU5EVVAoMjAwIC8gbGluZSB0aW1lKSArIDEKPiArCSAqLwo+ ICsJZXhpdF9zY2FubGluZXMgPQo+ICsJCWludGVsX3VzZWNzX3RvX3NjYW5saW5lcygmY3J0Y19z dGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLCAyMDApICsgMTsKPiArCj4gKwlpZiAoV0FSTl9PTihl eGl0X3NjYW5saW5lcyA+IGNydGNfdmRpc3BsYXkpKQo+ICsJCXJldHVybjsKPiArCj4gKwljcnRj X3N0YXRlLT5kYzNjb19leGl0bGluZSA9IGNydGNfdmRpc3BsYXkgLSBleGl0X3NjYW5saW5lczsK PiArCURSTV9ERUJVR19LTVMoIkRDM0NPIGV4aXQgc2NhbmxpbmVzICVkXG4iLCBjcnRjX3N0YXRl LT5kYzNjb19leGl0bGluZSk7Cj4gK30KPiArCj4gIHN0YXRpYyBib29sIGludGVsX3BzcjJfY29u ZmlnX3ZhbGlkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCj4gIAkJCQkgICAgc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gIHsKPiBAQCAtNjU4LDYgKzY4OSw3IEBAIHN0 YXRpYyBib29sIGludGVsX3BzcjJfY29uZmlnX3ZhbGlkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxf ZHAsCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAJfQo+ICAKPiArCXRnbF9kYzNjb19leGl0bGluZV9j b21wdXRlX2NvbmZpZyhpbnRlbF9kcCwgY3J0Y19zdGF0ZSk7Cj4gIAlyZXR1cm4gdHJ1ZTsKPiAg fQo+ICAKPiBAQCAtNzc1LDYgKzgwNywyMSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wc3JfZW5hYmxl X3NvdXJjZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAJSTkxNV9XUklURShFRFBfUFNS X0RFQlVHKGRldl9wcml2LT5wc3IudHJhbnNjb2RlciksIG1hc2spOwo+ICAKPiAgCXBzcl9pcnFf Y29udHJvbChkZXZfcHJpdik7Cj4gKwo+ICsJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTIg JiYgZGV2X3ByaXYtPnBzci5wc3IyX2VuYWJsZWQpIHsKSU1ITyB3ZSBjYW4gdXNlIGRjM2NvX2Vu YWJsZWQgZmxhZyBoZXJlIGluc3RlYWQgb2YgcHNyMl9lbmFibGVkLCBhbmQgaXQgd291bGQgYmUg Cm5pY2UgdG8gaGF2ZSBhIHNlcGVyYXRlIGZ1bmN0aW9uIHRvIHNldCB0aGUgZXhpdGxpbmUgaGVy ZS4KVGhhbmtzLApBbnNodW1hbiBHdXB0YS4KPiArCQl1MzIgdmFsOwo+ICsKPiArCQkvKgo+ICsJ CSAqIFRPRE86IGlmIGZ1dHVyZSBwbGF0Zm9ybXMgc3VwcG9ydHMgREMzQ08gaW4gbW9yZSB0aGFu IG9uZQo+ICsJCSAqIHRyYW5zY29kZXIsIEVYSVRMSU5FIHdpbGwgbmVlZCB0byBiZSB1bnNldCB3 aGVuIGRpc2FibGluZyBQU1IKPiArCQkgKi8KPiArCQl2YWwgPSBJOTE1X1JFQUQoRVhJVExJTkUo Y3B1X3RyYW5zY29kZXIpKTsKPiArCQl2YWwgJj0gfihFWElUTElORV9NQVNLIHwgRVhJVExJTkVf RU5BQkxFKTsKPiArCQl2YWwgfD0gY3J0Y19zdGF0ZS0+ZGMzY29fZXhpdGxpbmUgPDwgRVhJVExJ TkVfU0hJRlQ7Cj4gKwkJaWYgKGNydGNfc3RhdGUtPmRjM2NvX2V4aXRsaW5lKQo+ICsJCQl2YWwg fD0gRVhJVExJTkVfRU5BQkxFOwo+ICsJCUk5MTVfV1JJVEUoRVhJVExJTkUoY3B1X3RyYW5zY29k ZXIpLCB2YWwpOwo+ICsJfQo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpbnRlbF9wc3JfZW5hYmxl X2xvY2tlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gLS0gCj4gMi4yMy4w Cj4gCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA== 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 823B0C432C0 for ; Sun, 17 Nov 2019 13:01:39 +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 4D6D02075C for ; Sun, 17 Nov 2019 13:01:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4D6D02075C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=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 90EFB6E22A; Sun, 17 Nov 2019 13:01:38 +0000 (UTC) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 187F56E22A for ; Sun, 17 Nov 2019 13:01:37 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Nov 2019 05:01:36 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,316,1569308400"; d="scan'208";a="208585273" Received: from genxfsim-desktop.iind.intel.com (HELO intel.com) ([10.223.74.120]) by orsmga003.jf.intel.com with ESMTP; 17 Nov 2019 05:01:34 -0800 Date: Sun, 17 Nov 2019 18:23:49 +0530 From: Anshuamn Gupta To: =?utf-8?B?Sm9zw6k=?= Roberto de Souza Message-ID: <20191117125348.GA22063@intel.com> References: <20191101001422.209326-1-jose.souza@intel.com> <20191101001422.209326-3-jose.souza@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191101001422.209326-3-jose.souza@intel.com> User-Agent: Mutt/1.5.24 (2015-08-30) Subject: Re: [Intel-gfx] [PATCH 3/3] drm/i915/dc3co: Avoid full modeset when EXITLINE needs to be changed 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: <20191117125349.UoGWdVLvvjdtXaOhKgPifYwHYn-huBjZvQAxd7FOmic@z> T24gMjAxOS0xMC0zMSBhdCAxNzoxNDoyMiAtMDcwMCwgSm9zw6kgUm9iZXJ0byBkZSBTb3V6YSB3 cm90ZToKPiBBIHJlY2VudCBjaGFuZ2UgaW4gQlNwZWMgYWxsb3cgdXMgdG8gY2hhbmdlIEVYVExJ TkUgd2hpbGUgdHJhbnNjb2Rlcgo+IGlzIGVuYWJsZWQgc28gdGhpcyBhbGxvdyB1cyB0byBjaGFu Z2UgaXQgZXZlbiB3aGVuIGRvaW5nIHRoZSBmaXJzdAo+IGZhc3RzZXQgYWZ0ZXIgdGFraW5nIG92 ZXIgcHJldmlvdXMgaGFyZHdhcmUgc3RhdGUgc2V0IGJ5IEJJT1MuCj4gQklPUyBkb24ndCBlbmFi bGUgUFNSLCBzbyBpZiBzaW5rIHN1cHBvcnRzIFBTUiBpdCB3aWxsIGJlIGVuYWJsZWQgb24KPiB0 aGUgZmlyc3QgZmFzdHNldCwgc28gbW92aW5nIHRoZSBFWFRMSU5FIGNvbXB1dGUgYW5kIHNldCB0 byBQU1IgZmxvd3MKPiBhbGxvdyB1cyB0byBzaW1wbGZ5IGEgYnVuY2ggb2YgY29kZS4KPiAKPiBU aGlzIHdpbGwgc2F2ZSBhIGxvdCBvZiB0aW1lIGluIGFsbCB0aGUgSUdUIHRlc3RzIHRoYXQgdXNl cyBDUkMsIGFzCj4gd2hlbiBQU1IyIGlzIGVuYWJsZWQgQ1JDcyBhcmUgbm90IGdlbmVyYXRlZCwg c28gd2Ugc3dpdGNoIHRvIFBTUjEsIHNvCj4gdGhlIHByZXZpb3VzIGNvZGUgd291bGQgY29tcHV0 ZSBkYzNjb19leGl0bGluZT0wIGNhdXNpbmcgYSBmdWxsCj4gbW9kZXNldCB0aGF0IHdvdWxkIHNo dXRkb3duIHBpcGUsIGVuYWJsZSBhbmQgdHJhaW4gbGluay4KPiAKPiBCU3BlYzogNDkxOTYKPiBD YzogSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPgo+IENjOiBBbnNodW1hbiBHdXB0YSA8 YW5zaHVtYW4uZ3VwdGFAaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8g ZGUgU291emEgPGpvc2Uuc291emFAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jICAgICB8IDg2IC0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jIHwgIDEgLQo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jICAgICB8IDQ3ICsrKysrKysr KysrCj4gIDMgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgODcgZGVsZXRpb25zKC0p Cj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRp LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jCj4gaW5kZXggYjUx ZjI0NGFkN2E1Li5mNTJmYjc2MTlkNDYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kZGkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGRpLmMKPiBAQCAtMzMzOSw4NiArMzMzOSw2IEBAIHN0YXRpYyB2b2lkIGludGVs X2RkaV9kaXNhYmxlX2ZlY19zdGF0ZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAg CVBPU1RJTkdfUkVBRChpbnRlbF9kcC0+cmVncy5kcF90cF9jdGwpOwo+ICB9Cj4gIAo+IC1zdGF0 aWMgdm9pZAo+IC10Z2xfY2xlYXJfcHNyMl90cmFuc2NvZGVyX2V4aXRsaW5lKGNvbnN0IHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpCj4gLXsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3N0YXRlLT5iYXNlLmNydGMtPmRldik7Cj4gLQl1MzIg dmFsOwo+IC0KPiAtCWlmICghY3N0YXRlLT5kYzNjb19leGl0bGluZSkKPiAtCQlyZXR1cm47Cj4g LQo+IC0JdmFsID0gSTkxNV9SRUFEKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsK PiAtCXZhbCAmPSB+KEVYSVRMSU5FX01BU0sgfCBFWElUTElORV9FTkFCTEUpOwo+IC0JSTkxNV9X UklURShFWElUTElORShjc3RhdGUtPmNwdV90cmFuc2NvZGVyKSwgdmFsKTsKPiAtfQo+IC0KPiAt c3RhdGljIHZvaWQKPiAtdGdsX3NldF9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUoY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKPiAtewo+IC0JdTMyIHZhbCwgZXhpdF9zY2Fu bGluZXM7Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNz dGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+IC0KPiAtCWlmICghY3N0YXRlLT5kYzNjb19leGl0bGlu ZSkKPiAtCQlyZXR1cm47Cj4gLQo+IC0JZXhpdF9zY2FubGluZXMgPSBjc3RhdGUtPmRjM2NvX2V4 aXRsaW5lOwo+IC0JZXhpdF9zY2FubGluZXMgPDw9IEVYSVRMSU5FX1NISUZUOwo+IC0JdmFsID0g STkxNV9SRUFEKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsKPiAtCXZhbCAmPSB+ KEVYSVRMSU5FX01BU0sgfCBFWElUTElORV9FTkFCTEUpOwo+IC0JdmFsIHw9IGV4aXRfc2Nhbmxp bmVzOwo+IC0JdmFsIHw9IEVYSVRMSU5FX0VOQUJMRTsKPiAtCUk5MTVfV1JJVEUoRVhJVExJTkUo Y3N0YXRlLT5jcHVfdHJhbnNjb2RlciksIHZhbCk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2b2lkIHRn bF9kYzNjb19leGl0bGluZV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlciwKPiAtCQkJCQkgICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKQo+IC17 Cj4gLQl1MzIgZXhpdF9zY2FubGluZXM7Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KGNzdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+IC0JdTMyIGNydGNfdmRp c3BsYXkgPSBjc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZkaXNwbGF5Owo+IC0KPiAt CWNzdGF0ZS0+ZGMzY29fZXhpdGxpbmUgPSAwOwo+IC0KPiAtCWlmICghKGRldl9wcml2LT5jc3Iu YWxsb3dlZF9kY19tYXNrICYgRENfU1RBVEVfRU5fREMzQ08pKQo+IC0JCXJldHVybjsKPiAtCj4g LQkvKiBCLlNwZWNzOjQ5MTk2IERDM0NPIG9ubHkgd29ya3Mgd2l0aCBwaXBlQSBhbmQgRERJQS4q Lwo+IC0JaWYgKHRvX2ludGVsX2NydGMoY3N0YXRlLT5iYXNlLmNydGMpLT5waXBlICE9IFBJUEVf QSB8fAo+IC0JICAgIGVuY29kZXItPnBvcnQgIT0gUE9SVF9BKQo+IC0JCXJldHVybjsKPiAtCj4g LQlpZiAoIWNzdGF0ZS0+aGFzX3BzcjIgfHwgIWNzdGF0ZS0+YmFzZS5hY3RpdmUpCj4gLQkJcmV0 dXJuOwo+IC0KPiAtCS8qCj4gLQkgKiBEQzNDTyBFeGl0IHRpbWUgMjAwdXMgQi5TcGVjIDQ5MTk2 Cj4gLQkgKiBQU1IyIHRyYW5zY29kZXIgRWFybHkgRXhpdCBzY2FubGluZXMgPSBST1VORFVQKDIw MCAvIGxpbmUgdGltZSkgKyAxCj4gLQkgKi8KPiAtCWV4aXRfc2NhbmxpbmVzID0KPiAtCQlpbnRl bF91c2Vjc190b19zY2FubGluZXMoJmNzdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLCAyMDApICsg MTsKPiAtCj4gLQlpZiAoV0FSTl9PTihleGl0X3NjYW5saW5lcyA+IGNydGNfdmRpc3BsYXkpKQo+ IC0JCXJldHVybjsKPiAtCj4gLQljc3RhdGUtPmRjM2NvX2V4aXRsaW5lID0gY3J0Y192ZGlzcGxh eSAtIGV4aXRfc2NhbmxpbmVzOwo+IC0JRFJNX0RFQlVHX0tNUygiREMzQ08gZXhpdCBzY2FubGlu ZXMgJWRcbiIsIGNzdGF0ZS0+ZGMzY29fZXhpdGxpbmUpOwo+IC19Cj4gLQo+IC1zdGF0aWMgdm9p ZCB0Z2xfZGMzY29fZXhpdGxpbmVfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKPiAtewo+IC0JdTMyIHZhbDsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwo+IC0KPiAt CWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgMTIpCj4gLQkJcmV0dXJuOwo+IC0KPiAtCXZhbCA9 IEk5MTVfUkVBRChFWElUTElORShjcnRjX3N0YXRlLT5jcHVfdHJhbnNjb2RlcikpOwo+IC0KPiAt CWlmICh2YWwgJiBFWElUTElORV9FTkFCTEUpCj4gLQkJY3J0Y19zdGF0ZS0+ZGMzY29fZXhpdGxp bmUgPSB2YWwgJiBFWElUTElORV9NQVNLOwo+IC19Cj4gLQo+ICBzdGF0aWMgdm9pZCB0Z2xfZGRp X3ByZV9lbmFibGVfZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJCQkgIGNv bnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ICAJCQkJICBjb25zdCBz dHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSkKPiBAQCAtMzQzMSw3ICszMzUx LDYgQEAgc3RhdGljIHZvaWQgdGdsX2RkaV9wcmVfZW5hYmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyLAo+ICAJaW50IGxldmVsID0gaW50ZWxfZGRpX2RwX2xldmVsKGludGVsX2Rw KTsKPiAgCWVudW0gdHJhbnNjb2RlciB0cmFuc2NvZGVyID0gY3J0Y19zdGF0ZS0+Y3B1X3RyYW5z Y29kZXI7Cj4gIAo+IC0JdGdsX3NldF9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUoY3J0Y19zdGF0 ZSk7Cj4gIAlpbnRlbF9kcF9zZXRfbGlua19wYXJhbXMoaW50ZWxfZHAsIGNydGNfc3RhdGUtPnBv cnRfY2xvY2ssCj4gIAkJCQkgY3J0Y19zdGF0ZS0+bGFuZV9jb3VudCwgaXNfbXN0KTsKPiAgCj4g QEAgLTM3NjAsNyArMzY3OSw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2RkaV9wb3N0X2Rpc2FibGVf ZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJCQkJCSAgZGlnX3BvcnQtPmRk aV9pb19wb3dlcl9kb21haW4pOwo+ICAKPiAgCWludGVsX2RkaV9jbGtfZGlzYWJsZShlbmNvZGVy KTsKPiAtCXRnbF9jbGVhcl9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUob2xkX2NydGNfc3RhdGUp Owo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfcG9zdF9kaXNhYmxlX2hkbWkoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gQEAgLTQzMDgsOSArNDIyNiw2IEBAIHZvaWQg aW50ZWxfZGRpX2dldF9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJ YnJlYWs7Cj4gIAl9Cj4gIAo+IC0JaWYgKGVuY29kZXItPnR5cGUgPT0gSU5URUxfT1VUUFVUX0VE UCkKPiAtCQl0Z2xfZGMzY29fZXhpdGxpbmVfZ2V0X2NvbmZpZyhwaXBlX2NvbmZpZyk7Cj4gLQo+ ICAJcGlwZV9jb25maWctPmhhc19hdWRpbyA9Cj4gIAkJaW50ZWxfZGRpX2lzX2F1ZGlvX2VuYWJs ZWQoZGV2X3ByaXYsIGNwdV90cmFuc2NvZGVyKTsKPiAgCj4gQEAgLTQzOTIsNyArNDMwNyw2IEBA IHN0YXRpYyBpbnQgaW50ZWxfZGRpX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVy ICplbmNvZGVyLAo+ICAJCXJldCA9IGludGVsX2hkbWlfY29tcHV0ZV9jb25maWcoZW5jb2Rlciwg cGlwZV9jb25maWcsIGNvbm5fc3RhdGUpOwo+ICAJfSBlbHNlIHsKPiAgCQlyZXQgPSBpbnRlbF9k cF9jb21wdXRlX2NvbmZpZyhlbmNvZGVyLCBwaXBlX2NvbmZpZywgY29ubl9zdGF0ZSk7Cj4gLQkJ dGdsX2RjM2NvX2V4aXRsaW5lX2NvbXB1dGVfY29uZmlnKGVuY29kZXIsIHBpcGVfY29uZmlnKTsK PiAgCX0KPiAgCj4gIAlpZiAocmV0KQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfZGlzcGxheS5jCj4gaW5kZXggMzQ4Y2UwNDU2Njk2Li42YzFjOTNiMmE4MWYgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0x MzA5MSw3ICsxMzA5MSw2IEBAIGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmN1cnJlbnRfY29uZmlnLAo+ICAKPiAgCVBJUEVfQ09ORl9DSEVD S19JKHBpeGVsX211bHRpcGxpZXIpOwo+ICAJUElQRV9DT05GX0NIRUNLX0kob3V0cHV0X2Zvcm1h dCk7Cj4gLQlQSVBFX0NPTkZfQ0hFQ0tfSShkYzNjb19leGl0bGluZSk7Cj4gIAlQSVBFX0NPTkZf Q0hFQ0tfQk9PTChoYXNfaGRtaV9zaW5rKTsKPiAgCWlmICgoSU5URUxfR0VOKGRldl9wcml2KSA8 IDggJiYgIUlTX0hBU1dFTEwoZGV2X3ByaXYpKSB8fAo+ICAJICAgIElTX1ZBTExFWVZJRVcoZGV2 X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9wc3IuYwo+IGluZGV4IGJiOWI1MzQ5YjcyYS4uMDZhMGExYzk2MjFlIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jCj4gQEAgLTU5Niw2 ICs1OTYsMzcgQEAgc3RhdGljIHZvaWQgdGdsX2Rpc2FsbG93X2RjM2NvX29uX3BzcjJfZXhpdChz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAl0Z2xfcHNyMl9kaXNhYmxlX2Rj M2NvKGRldl9wcml2KTsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQKPiArdGdsX2RjM2NvX2V4aXRs aW5lX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCj4gKwkJCQkgIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICt7Cj4gKwljb25zdCB1MzIgY3J0 Y192ZGlzcGxheSA9IGNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZkaXNwbGF5 Owo+ICsJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQgPSBkcF90b19kaWdfcG9y dChpbnRlbF9kcCk7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90 b19pOTE1KGludGVsX2RwKTsKPiArCXUzMiBleGl0X3NjYW5saW5lczsKV2Ugd2FudGVkIHRvIGV4 cGxpY2l0bHkgY2xlYXIgZGMzY29fZXhpdGxpbmUgaW4gY2FzZSBpdCBpcyBub3QKc3VwcG9ydGVk Lgo+ICsKPiArCWlmICghKGRldl9wcml2LT5jc3IuYWxsb3dlZF9kY19tYXNrICYgRENfU1RBVEVf RU5fREMzQ08pKQo+ICsJCXJldHVybjsKPiArCj4gKwkvKiBCLlNwZWNzOjQ5MTk2IERDM0NPIG9u bHkgd29ya3Mgd2l0aCBwaXBlQSBhbmQgRERJQS4qLwo+ICsJaWYgKHRvX2ludGVsX2NydGMoY3J0 Y19zdGF0ZS0+YmFzZS5jcnRjKS0+cGlwZSAhPSBQSVBFX0EgfHwKPiArCSAgICBkaWdfcG9ydC0+ YmFzZS5wb3J0ICE9IFBPUlRfQSkKPiArCQlyZXR1cm47Cj4gKwo+ICsJLyoKPiArCSAqIERDM0NP IEV4aXQgdGltZSAyMDB1cyBCLlNwZWMgNDkxOTYKPiArCSAqIFBTUjIgdHJhbnNjb2RlciBFYXJs eSBFeGl0IHNjYW5saW5lcyA9IFJPVU5EVVAoMjAwIC8gbGluZSB0aW1lKSArIDEKPiArCSAqLwo+ ICsJZXhpdF9zY2FubGluZXMgPQo+ICsJCWludGVsX3VzZWNzX3RvX3NjYW5saW5lcygmY3J0Y19z dGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLCAyMDApICsgMTsKPiArCj4gKwlpZiAoV0FSTl9PTihl eGl0X3NjYW5saW5lcyA+IGNydGNfdmRpc3BsYXkpKQo+ICsJCXJldHVybjsKPiArCj4gKwljcnRj X3N0YXRlLT5kYzNjb19leGl0bGluZSA9IGNydGNfdmRpc3BsYXkgLSBleGl0X3NjYW5saW5lczsK PiArCURSTV9ERUJVR19LTVMoIkRDM0NPIGV4aXQgc2NhbmxpbmVzICVkXG4iLCBjcnRjX3N0YXRl LT5kYzNjb19leGl0bGluZSk7Cj4gK30KPiArCj4gIHN0YXRpYyBib29sIGludGVsX3BzcjJfY29u ZmlnX3ZhbGlkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCj4gIAkJCQkgICAgc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gIHsKPiBAQCAtNjU4LDYgKzY4OSw3IEBAIHN0 YXRpYyBib29sIGludGVsX3BzcjJfY29uZmlnX3ZhbGlkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxf ZHAsCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAJfQo+ICAKPiArCXRnbF9kYzNjb19leGl0bGluZV9j b21wdXRlX2NvbmZpZyhpbnRlbF9kcCwgY3J0Y19zdGF0ZSk7Cj4gIAlyZXR1cm4gdHJ1ZTsKPiAg fQo+ICAKPiBAQCAtNzc1LDYgKzgwNywyMSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wc3JfZW5hYmxl X3NvdXJjZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAJSTkxNV9XUklURShFRFBfUFNS X0RFQlVHKGRldl9wcml2LT5wc3IudHJhbnNjb2RlciksIG1hc2spOwo+ICAKPiAgCXBzcl9pcnFf Y29udHJvbChkZXZfcHJpdik7Cj4gKwo+ICsJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTIg JiYgZGV2X3ByaXYtPnBzci5wc3IyX2VuYWJsZWQpIHsKSU1ITyB3ZSBjYW4gdXNlIGRjM2NvX2Vu YWJsZWQgZmxhZyBoZXJlIGluc3RlYWQgb2YgcHNyMl9lbmFibGVkLCBhbmQgaXQgd291bGQgYmUg Cm5pY2UgdG8gaGF2ZSBhIHNlcGVyYXRlIGZ1bmN0aW9uIHRvIHNldCB0aGUgZXhpdGxpbmUgaGVy ZS4KVGhhbmtzLApBbnNodW1hbiBHdXB0YS4KPiArCQl1MzIgdmFsOwo+ICsKPiArCQkvKgo+ICsJ CSAqIFRPRE86IGlmIGZ1dHVyZSBwbGF0Zm9ybXMgc3VwcG9ydHMgREMzQ08gaW4gbW9yZSB0aGFu IG9uZQo+ICsJCSAqIHRyYW5zY29kZXIsIEVYSVRMSU5FIHdpbGwgbmVlZCB0byBiZSB1bnNldCB3 aGVuIGRpc2FibGluZyBQU1IKPiArCQkgKi8KPiArCQl2YWwgPSBJOTE1X1JFQUQoRVhJVExJTkUo Y3B1X3RyYW5zY29kZXIpKTsKPiArCQl2YWwgJj0gfihFWElUTElORV9NQVNLIHwgRVhJVExJTkVf RU5BQkxFKTsKPiArCQl2YWwgfD0gY3J0Y19zdGF0ZS0+ZGMzY29fZXhpdGxpbmUgPDwgRVhJVExJ TkVfU0hJRlQ7Cj4gKwkJaWYgKGNydGNfc3RhdGUtPmRjM2NvX2V4aXRsaW5lKQo+ICsJCQl2YWwg fD0gRVhJVExJTkVfRU5BQkxFOwo+ICsJCUk5MTVfV1JJVEUoRVhJVExJTkUoY3B1X3RyYW5zY29k ZXIpLCB2YWwpOwo+ICsJfQo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpbnRlbF9wc3JfZW5hYmxl X2xvY2tlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gLS0gCj4gMi4yMy4w Cj4gCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==