From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH 07/24] drm/i915: Add a simple atomic crtc check function. Date: Tue, 2 Jun 2015 18:28:12 -0700 Message-ID: <20150603012811.GE17555@intel.com> References: <1433165247-15928-1-git-send-email-maarten.lankhorst@linux.intel.com> <1433165247-15928-8-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 mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id B3A936E90B for ; Tue, 2 Jun 2015 18:28:12 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1433165247-15928-8-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 T24gTW9uLCBKdW4gMDEsIDIwMTUgYXQgMDM6Mjc6MTBQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gTW92ZSB0aGUgY2hlY2sgZm9yIGVuY29kZXIgY2xvbmluZyBoZXJlLgo+IAo+ IFNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51 eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5j ICB8ICAgNSArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAxMzEg KysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KPiAgMiBmaWxlcyBjaGFuZ2VkLCA4 MCBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9hdG9taWMuYwo+IGluZGV4IDE1NmRmMWI1OWRkZC4uMWVkZDE2NTFjMDQ1IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMKPiBAQCAtMTAwLDcgKzEwMCwxMCBAQCBpbnQgaW50 ZWxfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAlpZiAocmV0KQo+ICAJ CXJldHVybiByZXQ7Cj4gIAo+IC0JLyogRklYTUU6IG1vdmUgdG8gY3J0YyBhdG9taWMgY2hlY2sg ZnVuY3Rpb24gb25jZSBpdCBpcyByZWFkeSAqLwo+ICsJLyoKPiArCSAqIEZJWE1FOiBtb3ZlIHRv IGNydGMgYXRvbWljIGNoZWNrIGZ1bmN0aW9uIG9uY2UgdGhpcyBpcwo+ICsJICogbW9yZSBhdG9t aWMgZnJpZW5kbHkuCj4gKwkgKi8KPiAgCXJldCA9IGludGVsX2F0b21pY19zZXR1cF9zY2FsZXJz KGRldiwgbnVjbGVhcl9jcnRjLCBjcnRjX3N0YXRlKTsKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJu IHJldDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXggNmYzZTk2OTMw ZGE1Li4wMDYwNzg0NTI1ZGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j Cj4gQEAgLTExNDA0LDExICsxMTQwNCw4NyBAQCBvdXRfaGFuZzoKPiAgCXJldHVybiByZXQ7Cj4g IH0KPiAgCj4gK3N0YXRpYyBib29sIGVuY29kZXJzX2Nsb25lYWJsZShjb25zdCBzdHJ1Y3QgaW50 ZWxfZW5jb2RlciAqYSwKPiArCQkJICAgICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9lbmNvZGVyICpi KQo+ICt7Cj4gKwkvKiBtYXNrcyBjb3VsZCBiZSBhc3ltbWV0cmljLCBzbyBjaGVjayBib3RoIHdh eXMgKi8KPiArCXJldHVybiBhID09IGIgfHwgKGEtPmNsb25lYWJsZSAmICgxIDw8IGItPnR5cGUp ICYmCj4gKwkJCSAgYi0+Y2xvbmVhYmxlICYgKDEgPDwgYS0+dHlwZSkpOwo+ICt9Cj4gKwo+ICtz dGF0aWMgYm9vbCBjaGVja19zaW5nbGVfZW5jb2Rlcl9jbG9uaW5nKHN0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpzdGF0ZSwKPiArCQkJCQkgc3RydWN0IGludGVsX2NydGMgKmNydGMsCj4gKwkJCQkJ IHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ICt7Cj4gKwlzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqc291cmNlX2VuY29kZXI7Cj4gKwlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y Owo+ICsJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5lY3Rvcl9zdGF0ZTsKPiArCWlu dCBpOwo+ICsKPiArCWZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9zdGF0ZShzdGF0ZSwgY29ubmVjdG9y LCBjb25uZWN0b3Jfc3RhdGUsIGkpIHsKPiArCQlpZiAoY29ubmVjdG9yX3N0YXRlLT5jcnRjICE9 ICZjcnRjLT5iYXNlKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJc291cmNlX2VuY29kZXIgPQo+ ICsJCQl0b19pbnRlbF9lbmNvZGVyKGNvbm5lY3Rvcl9zdGF0ZS0+YmVzdF9lbmNvZGVyKTsKPiAr CQlpZiAoIWVuY29kZXJzX2Nsb25lYWJsZShlbmNvZGVyLCBzb3VyY2VfZW5jb2RlcikpCj4gKwkJ CXJldHVybiBmYWxzZTsKPiArCX0KPiArCj4gKwlyZXR1cm4gdHJ1ZTsKPiArfQo+ICsKPiArc3Rh dGljIGJvb2wgY2hlY2tfZW5jb2Rlcl9jbG9uaW5nKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpz dGF0ZSwKPiArCQkJCSAgc3RydWN0IGludGVsX2NydGMgKmNydGMpCj4gK3sKPiArCXN0cnVjdCBp bnRlbF9lbmNvZGVyICplbmNvZGVyOwo+ICsJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv cjsKPiArCXN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpjb25uZWN0b3Jfc3RhdGU7Cj4gKwlp bnQgaTsKPiArCj4gKwlmb3JfZWFjaF9jb25uZWN0b3JfaW5fc3RhdGUoc3RhdGUsIGNvbm5lY3Rv ciwgY29ubmVjdG9yX3N0YXRlLCBpKSB7Cj4gKwkJaWYgKGNvbm5lY3Rvcl9zdGF0ZS0+Y3J0YyAh PSAmY3J0Yy0+YmFzZSkKPiArCQkJY29udGludWU7Cj4gKwo+ICsJCWVuY29kZXIgPSB0b19pbnRl bF9lbmNvZGVyKGNvbm5lY3Rvcl9zdGF0ZS0+YmVzdF9lbmNvZGVyKTsKPiArCQlpZiAoIWNoZWNr X3NpbmdsZV9lbmNvZGVyX2Nsb25pbmcoc3RhdGUsIGNydGMsIGVuY29kZXIpKQo+ICsJCQlyZXR1 cm4gZmFsc2U7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIHRydWU7Cj4gK30KPiArCj4gK3N0YXRpYyBp bnQgaW50ZWxfYXRvbWljX2NoZWNrX2NydGMoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICsJCQkJ ICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQoKVGhlIHBsYW5lIGVxdWl2YWxl bnQgaXMgJ2ludGVsX3BsYW5lX2F0b21pY19jaGVjaycuLi5pdCB3b3VsZCBiZSBuaWNlIGlmCndl IGNvdWxkIGtlZXAgdGhlIG5hbWluZyBjb25zaXN0ZW50IChpbnRlbF9jcnRjX2F0b21pY19jaGVj aykuCgpOb3Qgc3VyZSBpZiB0aGlzIHNob3VsZCBnbyBpbiBpbnRlbF9kaXNwbGF5LmMgb3IgaW50 ZWxfYXRvbWljLmMuICBNYXliZQphIGZ1dHVyZSBwYXRjaCBjYW4gc2h1ZmZsZSBhIGJ1bmNoIG9m IHN0dWZmIGFyb3VuZCBzbyB0aGluZ3MgYXJlIGEgYml0Cm1vcmUgY29uc2lzdGVudCB0aGFuIHRo ZXkgYXJlIHRvZGF5LgoKCj4gK3sKPiArCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0g dG9faW50ZWxfY3J0YyhjcnRjKTsKPiArCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9 IGNydGNfc3RhdGUtPnN0YXRlOwo+ICsJaW50IGlkeCA9IGNydGMtPmJhc2UuaWQ7Cj4gKwlib29s IGlzX2NydGNfZW5hYmxlZCA9IGNydGNfc3RhdGUtPmFjdGl2ZTsKPiArCWJvb2wgd2FzX2NydGNf ZW5hYmxlZCA9IGNydGMtPnN0YXRlLT5hY3RpdmU7Cj4gKwlib29sIG1vZGVfY2hhbmdlZCA9IG5l ZWRzX21vZGVzZXQoY3J0Y19zdGF0ZSk7Cj4gKwo+ICsJaWYgKG1vZGVfY2hhbmdlZCAmJiAhY2hl Y2tfZW5jb2Rlcl9jbG9uaW5nKHN0YXRlLCBpbnRlbF9jcnRjKSkgewo+ICsJCURSTV9ERUJVR19L TVMoInJlamVjdGluZyBpbnZhbGlkIGNsb25pbmcgY29uZmlndXJhdGlvblxuIik7Cj4gKwkJcmV0 dXJuIC1FSU5WQUw7Cj4gKwl9Cj4gKwo+ICsJSTkxNV9TVEFURV9XQVJOKGNydGMtPnN0YXRlLT5h Y3RpdmUgIT0gaW50ZWxfY3J0Yy0+YWN0aXZlLAo+ICsJCSJbQ1JUQzolaV0gbWlzbWF0Y2ggYmV0 d2VlbiBzdGF0ZS0+YWN0aXZlKCVpKSBhbmQgY3J0Yy0+YWN0aXZlKCVpKVxuIiwKPiArCQlpZHgs IGNydGMtPnN0YXRlLT5hY3RpdmUsIGludGVsX2NydGMtPmFjdGl2ZSk7Cj4gKwo+ICsJRFJNX0RF QlVHX0FUT01JQygiQ3J0YyAlaSB3YXMgZW5hYmxlZCAlaSBub3cgZW5hYmxlZDogJWlcbiIsCj4g KwkJCSBpZHgsIHdhc19jcnRjX2VuYWJsZWQsIGlzX2NydGNfZW5hYmxlZCk7CgpNYXliZSBqdXN0 IHByaW50IHRoaXMgZGVidWcgbWVzc2FnZSB3aGVuIHRoZSB2YWx1ZXMgYXJlbid0IGVxdWFsIChp LmUuLAphbiBhY3R1YWwgY2hhbmdlKSB0byBjdXQgZG93biBvbiBhIGxpdHRsZSBzcGFtIHdoZW4g aXQgaXNuJ3QKaW50ZXJlc3Rpbmc/CgoKTWF0dAoKPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsK PiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVuY3MgaW50ZWxfaGVscGVy X2Z1bmNzID0gewo+ICAJLm1vZGVfc2V0X2Jhc2VfYXRvbWljID0gaW50ZWxfcGlwZV9zZXRfYmFz ZV9hdG9taWMsCj4gIAkubG9hZF9sdXQgPSBpbnRlbF9jcnRjX2xvYWRfbHV0LAo+ICAJLmF0b21p Y19iZWdpbiA9IGludGVsX2JlZ2luX2NydGNfY29tbWl0LAo+ICAJLmF0b21pY19mbHVzaCA9IGlu dGVsX2ZpbmlzaF9jcnRjX2NvbW1pdCwKPiArCS5hdG9taWNfY2hlY2sgPSBpbnRlbF9hdG9taWNf Y2hlY2tfY3J0YywKPiAgfTsKPiAgCj4gIC8qIFRyYW5zaXRpb25hbCBoZWxwZXIgdG8gY29weSBj dXJyZW50IGNvbm5lY3Rvci9lbmNvZGVyIHN0YXRlIHRvCj4gQEAgLTExNjM0LDU2ICsxMTcxMCw2 IEBAIHN0YXRpYyB2b2lkIGludGVsX2R1bXBfcGlwZV9jb25maWcoc3RydWN0IGludGVsX2NydGMg KmNydGMsCj4gIAl9Cj4gIH0KPiAgCj4gLXN0YXRpYyBib29sIGVuY29kZXJzX2Nsb25lYWJsZShj b25zdCBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqYSwKPiAtCQkJICAgICAgIGNvbnN0IHN0cnVjdCBp bnRlbF9lbmNvZGVyICpiKQo+IC17Cj4gLQkvKiBtYXNrcyBjb3VsZCBiZSBhc3ltbWV0cmljLCBz byBjaGVjayBib3RoIHdheXMgKi8KPiAtCXJldHVybiBhID09IGIgfHwgKGEtPmNsb25lYWJsZSAm ICgxIDw8IGItPnR5cGUpICYmCj4gLQkJCSAgYi0+Y2xvbmVhYmxlICYgKDEgPDwgYS0+dHlwZSkp Owo+IC19Cj4gLQo+IC1zdGF0aWMgYm9vbCBjaGVja19zaW5nbGVfZW5jb2Rlcl9jbG9uaW5nKHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiAtCQkJCQkgc3RydWN0IGludGVsX2NydGMg KmNydGMsCj4gLQkJCQkJIHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+IC17Cj4gLQlz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqc291cmNlX2VuY29kZXI7Cj4gLQlzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yOwo+IC0Jc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5lY3Rv cl9zdGF0ZTsKPiAtCWludCBpOwo+IC0KPiAtCWZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9zdGF0ZShz dGF0ZSwgY29ubmVjdG9yLCBjb25uZWN0b3Jfc3RhdGUsIGkpIHsKPiAtCQlpZiAoY29ubmVjdG9y X3N0YXRlLT5jcnRjICE9ICZjcnRjLT5iYXNlKQo+IC0JCQljb250aW51ZTsKPiAtCj4gLQkJc291 cmNlX2VuY29kZXIgPQo+IC0JCQl0b19pbnRlbF9lbmNvZGVyKGNvbm5lY3Rvcl9zdGF0ZS0+YmVz dF9lbmNvZGVyKTsKPiAtCQlpZiAoIWVuY29kZXJzX2Nsb25lYWJsZShlbmNvZGVyLCBzb3VyY2Vf ZW5jb2RlcikpCj4gLQkJCXJldHVybiBmYWxzZTsKPiAtCX0KPiAtCj4gLQlyZXR1cm4gdHJ1ZTsK PiAtfQo+IC0KPiAtc3RhdGljIGJvb2wgY2hlY2tfZW5jb2Rlcl9jbG9uaW5nKHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpzdGF0ZSwKPiAtCQkJCSAgc3RydWN0IGludGVsX2NydGMgKmNydGMpCj4g LXsKPiAtCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyOwo+IC0Jc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvcjsKPiAtCXN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpjb25uZWN0 b3Jfc3RhdGU7Cj4gLQlpbnQgaTsKPiAtCj4gLQlmb3JfZWFjaF9jb25uZWN0b3JfaW5fc3RhdGUo c3RhdGUsIGNvbm5lY3RvciwgY29ubmVjdG9yX3N0YXRlLCBpKSB7Cj4gLQkJaWYgKGNvbm5lY3Rv cl9zdGF0ZS0+Y3J0YyAhPSAmY3J0Yy0+YmFzZSkKPiAtCQkJY29udGludWU7Cj4gLQo+IC0JCWVu Y29kZXIgPSB0b19pbnRlbF9lbmNvZGVyKGNvbm5lY3Rvcl9zdGF0ZS0+YmVzdF9lbmNvZGVyKTsK PiAtCQlpZiAoIWNoZWNrX3NpbmdsZV9lbmNvZGVyX2Nsb25pbmcoc3RhdGUsIGNydGMsIGVuY29k ZXIpKQo+IC0JCQlyZXR1cm4gZmFsc2U7Cj4gLQl9Cj4gLQo+IC0JcmV0dXJuIHRydWU7Cj4gLX0K PiAtCj4gIHN0YXRpYyBib29sIGNoZWNrX2RpZ2l0YWxfcG9ydF9jb25mbGljdHMoc3RydWN0IGRy bV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0g c3RhdGUtPmRldjsKPiBAQCAtMTE3NzAsMTEgKzExNzk2LDYgQEAgaW50ZWxfbW9kZXNldF9waXBl X2NvbmZpZyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAlpbnQgaTsKPiAgCWJvb2wgcmV0cnkg PSB0cnVlOwo+ICAKPiAtCWlmICghY2hlY2tfZW5jb2Rlcl9jbG9uaW5nKHN0YXRlLCB0b19pbnRl bF9jcnRjKGNydGMpKSkgewo+IC0JCURSTV9ERUJVR19LTVMoInJlamVjdGluZyBpbnZhbGlkIGNs b25pbmcgY29uZmlndXJhdGlvblxuIik7Cj4gLQkJcmV0dXJuIC1FSU5WQUw7Cj4gLQl9Cj4gLQo+ ICAJY2xlYXJfaW50ZWxfY3J0Y19zdGF0ZShwaXBlX2NvbmZpZyk7Cj4gIAo+ICAJcGlwZV9jb25m aWctPmNwdV90cmFuc2NvZGVyID0KPiAtLSAKPiAyLjEuMAo+IAo+IF9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKTWF0dCBSb3BlcgpHcmFwaGlj cyBTb2Z0d2FyZSBFbmdpbmVlcgpJb1RHIFBsYXRmb3JtIEVuYWJsaW5nICYgRGV2ZWxvcG1lbnQK SW50ZWwgQ29ycG9yYXRpb24KKDkxNikgMzU2LTI3OTUKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngK