From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 5/6] drm/i915: Make updating pipe without modeset atomic. Date: Tue, 21 Jul 2015 16:50:16 +0200 Message-ID: <20150721145016.GR16722@phenom.ffwll.local> References: <1437478142-416-1-git-send-email-maarten.lankhorst@linux.intel.com> <1437478142-416-6-git-send-email-maarten.lankhorst@linux.intel.com> <20150721141422.GP16722@phenom.ffwll.local> <55AE57FA.3000402@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wg0-f54.google.com (mail-wg0-f54.google.com [74.125.82.54]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9468B7208A for ; Tue, 21 Jul 2015 07:47:37 -0700 (PDT) Received: by wgkl9 with SMTP id l9so158415496wgk.1 for ; Tue, 21 Jul 2015 07:47:36 -0700 (PDT) Content-Disposition: inline In-Reply-To: <55AE57FA.3000402@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 T24gVHVlLCBKdWwgMjEsIDIwMTUgYXQgMDQ6MzI6MjZQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gT3AgMjEtMDctMTUgb20gMTY6MTQgc2NocmVlZiBEYW5pZWwgVmV0dGVyOgo+ ID4gT24gVHVlLCBKdWwgMjEsIDIwMTUgYXQgMDE6Mjk6MDFQTSArMDIwMCwgTWFhcnRlbiBMYW5r aG9yc3Qgd3JvdGU6Cj4gPj4gSW5zdGVhZCBvZiBkb2luZyBhIGhhY2sgZHVyaW5nIHByaW1hcnkg cGxhbmUgY29tbWl0IHRoZSBzdGF0ZQo+ID4+IGlzIHVwZGF0ZWQgZHVyaW5nIGF0b21pYyBldmFz aW9uLiBJdCBoYW5kbGVzIGRpZmZlcmVuY2VzIGluCj4gPj4gcGlwZSBzaXplIGFuZCB0aGUgcGFu ZWwgZml0dGVyLgo+ID4+Cj4gPj4gVGhpcyBpcyBjb250aW51aW5nIG9uIHRvcCBvZiBEYW5pZWwn cyB3b3JrIHRvIG1ha2UgZmFzdGVyCj4gPj4gbW9kZXNldHMgYXRvbWljLCBhbmQgbm90IHlldCBl bmFibGVkIGJ5IGRlZmF1bHQuCj4gPj4KPiA+PiBTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmto b3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+ID4+IC0tLQo+ID4+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYyAgfCAgMiArLQo+ID4+ICBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA5MyArKysrKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAg IHwgIDIgKwo+ID4+ICAzIGZpbGVzIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDQyIGRlbGV0 aW9ucygtKQo+ID4+Cj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMKPiA+PiBpbmRl eCAwOWEwYWQ2MTEwMDIuLjU4ZDYyZmJlOTYxYiAxMDA2NDQKPiA+PiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2F0b21pYy5jCj4gPj4gQEAgLTk4LDggKzk4LDggQEAgaW50ZWxfY3J0Y19kdXBsaWNh dGVfc3RhdGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ID4+ICAJCXJldHVybiBOVUxMOwo+ID4+ ICAKPiA+PiAgCV9fZHJtX2F0b21pY19oZWxwZXJfY3J0Y19kdXBsaWNhdGVfc3RhdGUoY3J0Yywg JmNydGNfc3RhdGUtPmJhc2UpOwo+ID4+IC0KPiA+PiAgCWNydGNfc3RhdGUtPmJhc2UuY3J0YyA9 IGNydGM7Cj4gPj4gKwljcnRjX3N0YXRlLT51cGRhdGVfcGlwZSA9IGZhbHNlOwo+ID4+ICAKPiA+ PiAgCXJldHVybiAmY3J0Y19zdGF0ZS0+YmFzZTsKPiA+PiAgfQo+ID4+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKPiA+PiBpbmRleCA0NDMzMjgwMzM5ODEuLjQ4MGIyMzM2YzdiYSAx MDA2NDQKPiA+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiA+ PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiA+PiBAQCAtMTA4 LDYgKzEwOCw5IEBAIHN0YXRpYyB2b2lkIHNrbF9pbml0X3NjYWxlcnMoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgc3RydWN0IGludGVsX2NydGMgKmludGVsX2NyCj4gPj4gIAlzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Cj4gPj4gIHN0YXRpYyBpbnQgaTl4eF9nZXRfcmVmY2xr KGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ID4+ICAJCQkgICBp bnQgbnVtX2Nvbm5lY3RvcnMpOwo+ID4+ICtzdGF0aWMgdm9pZCBza3lsYWtlX3BmaXRfZW5hYmxl KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKPiA+PiArc3RhdGljIHZvaWQgaXJvbmxha2VfcGZp dF9kaXNhYmxlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLCBib29sIGZvcmNlKTsKPiA+PiArc3Rh dGljIHZvaWQgaXJvbmxha2VfcGZpdF9lbmFibGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpOwo+ ID4+ICBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rlc2V0X3NldHVwX2h3X3N0YXRlKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpOwo+ID4+ICAKPiA+PiAgdHlwZWRlZiBzdHJ1Y3Qgewo+ID4+IEBAIC0zMjY4 LDE0ICszMjcxLDE3IEBAIHN0YXRpYyBib29sIGludGVsX2NydGNfaGFzX3BlbmRpbmdfZmxpcChz dHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gPj4gIAlyZXR1cm4gcGVuZGluZzsKPiA+PiAgfQo+ID4+ ICAKPiA+PiAtc3RhdGljIHZvaWQgaW50ZWxfdXBkYXRlX3BpcGVfc2l6ZShzdHJ1Y3QgaW50ZWxf Y3J0YyAqY3J0YykKPiA+PiArc3RhdGljIHZvaWQgaW50ZWxfdXBkYXRlX3BpcGVfY29uZmlnKHN0 cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ID4+ICsJCQkJICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqb2xkX2NydGNfc3RhdGUpCj4gPiB1cGF0ZV9waXBlX2NvbmZpZyBzb3VuZHMgbGlrZSBp dCdzIGp1c3QgdXBkYXRpbmcgdGhlIGh3IHN0YXRlLiBNYXliZSBjYWxsCj4gPiBpdCBpbnRlbF9m YXN0c2V0X2NydGMgb3IgaW50ZWxfZml4dXBfY3J0YyBvciBqdXN0IGludGVsX3VwZGF0ZV9jcnRj PyBUaGUKPiA+IG90aGVyIGZ1bmN0aW9ucyBhcmUgYWxzbyBjYWxsZWQgY3J0Y19lbmFibGUvZGlz YWJsZSwgc28gZ29pbmcgd2l0aCBjcnRjCj4gPiBzZWVtcyBtb3JlIGNvbnNpc3RlbnQuCj4gaW50 ZWxfY3J0Y191cGRhdGVfcGlwZSA/Cj4gCj4gPj4gIHsKPiA+PiAgCXN0cnVjdCBkcm1fZGV2aWNl ICpkZXYgPSBjcnRjLT5iYXNlLmRldjsKPiA+PiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gPj4gLQljb25zdCBzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqYWRqdXN0ZWRfbW9kZTsKPiA+PiArCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpw aXBlX2NvbmZpZyA9Cj4gPj4gKwkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5iYXNlLnN0YXRl KTsKPiA+PiAgCj4gPj4gLQlpZiAoIWk5MTUuZmFzdGJvb3QpCj4gPj4gLQkJcmV0dXJuOwo+ID4+ ICsJRFJNX0RFQlVHX0tNUygiVXBkYXRpbmcgcGlwZSBzaXplICVpeCVpIC0+ICVpeCVpXG4iLAo+ ID4+ICsJCSAgICAgIG9sZF9jcnRjX3N0YXRlLT5waXBlX3NyY193LCBvbGRfY3J0Y19zdGF0ZS0+ cGlwZV9zcmNfaCwKPiA+PiArCQkgICAgICBwaXBlX2NvbmZpZy0+cGlwZV9zcmNfdywgcGlwZV9j b25maWctPnBpcGVfc3JjX2gpOwo+ID4+ICAKPiA+PiAgCWlmIChIQVNfRERJKGRldikpCj4gPj4g IAkJaW50ZWxfc2V0X3BpcGVfY3NjKCZjcnRjLT5iYXNlKTsKPiA+PiBAQCAtMzI4NywyNyArMzI5 MywyNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVfcGlwZV9zaXplKHN0cnVjdCBpbnRlbF9j cnRjICpjcnRjKQo+ID4+ICAJICogZmFzdGJvb3QgY2FzZSwgd2UnbGwgZmxpcCwgYnV0IGlmIHdl IGRvbid0IHVwZGF0ZSB0aGUgcGlwZXNyYyBhbmQKPiA+PiAgCSAqIHBmaXQgc3RhdGUsIHdlJ2xs IGVuZCB1cCB3aXRoIGEgYmlnIGZiIHNjYW5uZWQgb3V0IGludG8gdGhlIHdyb25nCj4gPj4gIAkg KiBzaXplZCBzdXJmYWNlLgo+ID4+IC0JICoKPiA+PiAtCSAqIFRvIGZpeCB0aGlzIHByb3Blcmx5 LCB3ZSBuZWVkIHRvIGhvaXN0IHRoZSBjaGVja3MgdXAgaW50bwo+ID4+IC0JICogY29tcHV0ZV9t b2RlX2NoYW5nZXMgKG9yIGFib3ZlKSwgY2hlY2sgdGhlIGFjdHVhbCBwZml0IHN0YXRlIGFuZAo+ ID4+IC0JICogd2hldGhlciB0aGUgcGxhdGZvcm0gYWxsb3dzIHBmaXQgZGlzYWJsZSB3aXRoIHBp cGUgYWN0aXZlLCBhbmQgb25seQo+ID4+IC0JICogdGhlbiB1cGRhdGUgdGhlIHBpcGVzcmMgYW5k IHBmaXQgc3RhdGUsIGV2ZW4gb24gdGhlIGZsaXAgcGF0aC4KPiA+PiAgCSAqLwo+ID4+ICAKPiA+ PiAtCWFkanVzdGVkX21vZGUgPSAmY3J0Yy0+Y29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGU7Cj4g Pj4gLQo+ID4+ICAJSTkxNV9XUklURShQSVBFU1JDKGNydGMtPnBpcGUpLAo+ID4+IC0JCSAgICgo YWRqdXN0ZWRfbW9kZS0+Y3J0Y19oZGlzcGxheSAtIDEpIDw8IDE2KSB8Cj4gPj4gLQkJICAgKGFk anVzdGVkX21vZGUtPmNydGNfdmRpc3BsYXkgLSAxKSk7Cj4gPj4gLQlpZiAoIWNydGMtPmNvbmZp Zy0+cGNoX3BmaXQuZW5hYmxlZCAmJgo+ID4+IC0JICAgIChpbnRlbF9waXBlX2hhc190eXBlKGNy dGMsIElOVEVMX09VVFBVVF9MVkRTKSB8fAo+ID4+IC0JICAgICBpbnRlbF9waXBlX2hhc190eXBl KGNydGMsIElOVEVMX09VVFBVVF9FRFApKSkgewo+ID4+IC0JCUk5MTVfV1JJVEUoUEZfQ1RMKGNy dGMtPnBpcGUpLCAwKTsKPiA+PiAtCQlJOTE1X1dSSVRFKFBGX1dJTl9QT1MoY3J0Yy0+cGlwZSks IDApOwo+ID4+IC0JCUk5MTVfV1JJVEUoUEZfV0lOX1NaKGNydGMtPnBpcGUpLCAwKTsKPiA+PiAr CQkgICAoKHBpcGVfY29uZmlnLT5waXBlX3NyY193IC0gMSkgPDwgMTYpIHwKPiA+PiArCQkgICAo cGlwZV9jb25maWctPnBpcGVfc3JjX2ggLSAxKSk7Cj4gPj4gKwo+ID4+ICsJLyogb24gc2t5bGFr ZSB0aGlzIGlzIGRvbmUgYnkgZGV0YWNoaW5nIHNjYWxlcnMgKi8KPiA+PiArCWlmIChJTlRFTF9J TkZPKGRldiktPmdlbiA9PSA5KSB7Cj4gPj4gKwkJc2tsX2RldGFjaF9zY2FsZXJzKGNydGMpOwo+ ID4+ICsKPiA+PiArCQlpZiAocGlwZV9jb25maWctPnBjaF9wZml0LmVuYWJsZWQpCj4gPj4gKwkJ CXNreWxha2VfcGZpdF9lbmFibGUoY3J0Yyk7Cj4gPj4gKwl9Cj4gPj4gKwllbHNlIGlmIChJTlRF TF9JTkZPKGRldiktPmdlbiA8IDkgJiYKPiA+PiArCSAgICAgICAgIEhBU19QQ0hfU1BMSVQoZGV2 KSkgewo+ID4+ICsJCWlmIChwaXBlX2NvbmZpZy0+cGNoX3BmaXQuZW5hYmxlZCkKPiA+PiArCQkJ aXJvbmxha2VfcGZpdF9lbmFibGUoY3J0Yyk7Cj4gPj4gKwkJZWxzZSBpZiAob2xkX2NydGNfc3Rh dGUtPnBjaF9wZml0LmVuYWJsZWQpCj4gPj4gKwkJCWlyb25sYWtlX3BmaXRfZGlzYWJsZShjcnRj LCB0cnVlKTsKPiA+IElpcmMgSmVzc2UncyBleHBlcmltZW50cyBzaG93ZWQgdGhhdCB5b3UgY291 bGQgb25seSBkaXNhYmxlIHRoZSBwZml0Cj4gPiB3aXRob3V0IGEgbW9kZXNldCwgYnV0IG5vdCBl bmFibGUgaXQgd2l0aG91dCBhIG1vZGVzZXQuIE5vdCBzdXJlIGhvdyB0aGF0Cj4gPiB3b3JrcyBv biBza2wsIGJ1dCB0aGF0J3Mgd2hhdCBJIHJlbWVtYmVyIGZvciBlYWxpZXIgcGxhdGZvcm1zIGF0 IGxlYXN0Lgo+IElzIHRoYXQgcmVhbGx5IHRoZSBjYXNlLCBvciBiZWNhdXNlIG9mIHRoZSBwb3dl ciBkb21haW4gdXBkYXRlcz8gV2hpY2gsIGNvbWUgdG8gdGhpbmsgb2YgaXQsIEkgZG9uJ3QKPiBo YW5kbGUgY29ycmVjdGx5IGluIHRoaXMgcGF0Y2guIDovCj4gCj4gaW50ZWxfZGRpX2VuYWJsZV90 cmFuc2NvZGVyX2Z1bmMgc2VlbXMgdG8gaGF2ZSBhIHNwZWNpYWwgY2FzZSBmb3IgaGFzd2VsbCBv biBlRFAgd2l0aCBwYW5lbCBmaXR0ZXIgb24vb2ZmLgo+IFNvIHBlcmhhcHMgZGlzYWxsb3cgb2Zm IC0+IG9uIHdpdGggaGFzd2VsbC4KPiAKPiBCcm9hZHdlbGwgbWlnaHQgbm90IGJlIGFibGUgdG8g Y2hhbmdlIHBhbmVsIGZpdHRlciBmcm9tIG9uIHRvIG9mZiwgYmVjYXVzZSBvZiBjZGNsayBjYWxj dWxhdGlvbnM6Cj4gYnJvYWR3ZWxsX21vZGVzZXRfY2FsY19jZGNsayAtPiBpbGtfbWF4X3BpeGVs X3JhdGUgLT4gaWxrX3BpcGVfcGl4ZWxfcmF0ZQo+IAo+IFRob3NlIHJlYXNvbnMgbWlnaHQgYmUg Y29udHJpYnV0aW5nIHRvIGZhaWx1cmVzLgo+IAo+ID4gQWxzbyBpdCBzaG91bGQgd29yayB0aGUg c2FtZSBmb3IgZ21jaCBwbGF0Zm9ybXMgcmVhbGx5Lgo+IFByb2JhYmx5LCBidXQgSSB3YXNuJ3Qg YWJsZSB0byB0ZXN0IGl0IGFuZCBjdXJyZW50IGNvZGUgZGlkbid0IHNlZW0gdG8gaGFuZGxlIGl0 Lgo+IAo+ID4gQWxzbyBiaWcgdGhpbmcgc3RpbGwgbWlzc2luZyBpcyB0aGUgc3BlY2lhbCB0ZXN0 Y2FzZSB3aGljaCBkb2VzIGRpcmVjdAo+ID4gbW9kZXNldHMgdHJ5aW5nIHRvIGZvcmNlIGZhc3Rz ZXQgcGZpdCBjaGFuZ2VzIG9uIGVkcC9kc2kvbHZkcy4KPiBJbmRlZWQhIFdoYXQgc2hvdWxkIEkg ZXhwZWN0IG9uIGZhaWx1cmUsIGFuZCBob3cgZG8gSSBkZWZpbmUgc3VjY2Vzcz8KCk9uZSBwYXJ0 IGlzIGp1c3QgZXhlcmNpc2luZyB0aGUgY29kZSwgaS5lLiBkbyB2YXJpb3VzIG1vZGVzZXRzIGZy b20KZGlmZmVyZW50IG1vZGVzIHRvIG90aGVyIG1vZGVzIHRvIGNvdmVyIGFsbCB0aGUgY2FzZXM6 Ci0gb2ZmLT5vbgotIG9uLT5vZmYKLSBvbi0+b24gYnV0IGNoYW5pbmcgdXBzY2FsaW5nLgoKVGhh dCB3b3VsZCBiZSByZWFsbHkgZ29vZCBhbHJlYWR5LiBCb251cyBwb2ludHMgaWYgeW91IGJvdGhl ciB3aXRoIGFuCmF0b21pYyB2ZXJzaW9uIHdoaWNoIGNoZWNrcyB0aGF0IGl0J3MgaW5kZWVkIGRv bmUgaW4gb25lIHZibGFuayAodXNpbmcKdGltZXN0YW1wcyBhbmQgY2xlYXJpbmcgdGhlIEFMTE9X X01PREVTRVQgZmxhZykuIEJ1dCBpbW8gdGhhdCdzIG92ZXJraWxsLgpNb3N0IG9mIHRoZSBjb3Jy ZWN0bmVzcyBwcm92ZSBzaG91bGQgYmUgcG9zc2libGUgYnkgY2F0Y2hpbmcgcGlwZQp1bmRlcnJ1 bnMgd2hlbiB3ZSBzY3JldyBpdCB1cCBzb21laG93LgotRGFuaWVsCi0tIApEYW5pZWwgVmV0dGVy ClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5j aApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=