From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 14/15] drm/i915/mst: use reference counted connectors. Date: Wed, 27 Apr 2016 08:29:31 +0200 Message-ID: <20160427062931.GF2558@phenom.ffwll.local> References: <1460697046-23781-1-git-send-email-airlied@gmail.com> <1460697046-23781-15-git-send-email-airlied@gmail.com> <20160422090318.GQ2510@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id C89B06E9CC for ; Wed, 27 Apr 2016 06:29:36 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id e201so9732604wme.2 for ; Tue, 26 Apr 2016 23:29:36 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Dave Airlie Cc: dri-devel List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBBcHIgMjcsIDIwMTYgYXQgMTE6NTQ6MzVBTSArMTAwMCwgRGF2ZSBBaXJsaWUgd3Jv dGU6Cj4gT24gMjIgQXByaWwgMjAxNiBhdCAxOTowMywgRGFuaWVsIFZldHRlciA8ZGFuaWVsQGZm d2xsLmNoPiB3cm90ZToKPiA+IE9uIEZyaSwgQXByIDE1LCAyMDE2IGF0IDAzOjEwOjQ1UE0gKzEw MDAsIERhdmUgQWlybGllIHdyb3RlOgo+ID4+IEZyb206IERhdmUgQWlybGllIDxhaXJsaWVkQHJl ZGhhdC5jb20+Cj4gPj4KPiA+PiBEb24ndCBqdXN0IGZyZWUgdGhlIGNvbm5lY3RvciB3aGVuIHdl IGdldCB0aGUgZGVzdHJveSBjYWxsYmFjay4KPiA+Pgo+ID4+IERyb3AgYSByZWZlcmVuY2UgdG8g aXQsIGFuZCBzZXQgaXQncyBtc3RfcG9ydCB0byBOVUxMIHNvCj4gPj4gbm8gbW9yZSBtc3Qgd29y ayBpcyBkb25lIG9uIGl0Lgo+ID4+Cj4gPj4gU2lnbmVkLW9mZi1ieTogRGF2ZSBBaXJsaWUgPGFp cmxpZWRAcmVkaGF0LmNvbT4KPiA+Cj4gPiBMb29rcyBjb3JyZWN0LCBidXQgdHdvIGNvbW1lbnRz IGZvciBiZXR0ZXIgYXBpIGZvciBzaGFyZWQgaGVscGVycyBpbmxpbmUgYmVsb3cuCj4gPiAtRGFu aWVsCj4gPgo+ID4+IC0tLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3Qu YyB8IDQ2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+PiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgfCAgMiArLQo+ID4+ICAyIGZpbGVzIGNoYW5n ZWQsIDI0IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQo+ID4+Cj4gPj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX21zdC5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHBfbXN0LmMKPiA+PiBpbmRleCBhMmJkNjk4Li4yZTczMGI2IDEwMDY0NAo+ ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX21zdC5jCj4gPj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPiA+PiBAQCAtMTEzLDcgKzExMyw3 IEBAIHN0YXRpYyB2b2lkIGludGVsX21zdF9kaXNhYmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNvZGVy ICplbmNvZGVyKQo+ID4+Cj4gPj4gICAgICAgRFJNX0RFQlVHX0tNUygiJWRcbiIsIGludGVsX2Rw LT5hY3RpdmVfbXN0X2xpbmtzKTsKPiA+Pgo+ID4+IC0gICAgIGRybV9kcF9tc3RfcmVzZXRfdmNw aV9zbG90cygmaW50ZWxfZHAtPm1zdF9tZ3IsIGludGVsX21zdC0+cG9ydCk7Cj4gPj4gKyAgICAg ZHJtX2RwX21zdF9yZXNldF92Y3BpX3Nsb3RzKCZpbnRlbF9kcC0+bXN0X21nciwgaW50ZWxfbXN0 LT5jb25uZWN0b3ItPnBvcnQpOwo+ID4+Cj4gPj4gICAgICAgcmV0ID0gZHJtX2RwX3VwZGF0ZV9w YXlsb2FkX3BhcnQxKCZpbnRlbF9kcC0+bXN0X21ncik7Cj4gPj4gICAgICAgaWYgKHJldCkgewo+ ID4+IEBAIC0xMzgsMTAgKzEzOCwxMiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tc3RfcG9zdF9kaXNh YmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ID4+ICAgICAgIC8qIGFuZCB0 aGlzIGNhbiBhbHNvIGZhaWwgKi8KPiA+PiAgICAgICBkcm1fZHBfdXBkYXRlX3BheWxvYWRfcGFy dDIoJmludGVsX2RwLT5tc3RfbWdyKTsKPiA+Pgo+ID4+IC0gICAgIGRybV9kcF9tc3RfZGVhbGxv Y2F0ZV92Y3BpKCZpbnRlbF9kcC0+bXN0X21nciwgaW50ZWxfbXN0LT5wb3J0KTsKPiA+PiArICAg ICBkcm1fZHBfbXN0X2RlYWxsb2NhdGVfdmNwaSgmaW50ZWxfZHAtPm1zdF9tZ3IsIGludGVsX21z dC0+Y29ubmVjdG9yLT5wb3J0KTsKPiA+Pgo+ID4+ICAgICAgIGludGVsX2RwLT5hY3RpdmVfbXN0 X2xpbmtzLS07Cj4gPj4gLSAgICAgaW50ZWxfbXN0LT5wb3J0ID0gTlVMTDsKPiA+PiArCj4gPj4g KyAgICAgZHJtX2Nvbm5lY3Rvcl91bnJlZmVyZW5jZSgmaW50ZWxfbXN0LT5jb25uZWN0b3ItPmJh c2UpOwo+ID4+ICsgICAgIGludGVsX21zdC0+Y29ubmVjdG9yID0gTlVMTDsKPiA+PiAgICAgICBp ZiAoaW50ZWxfZHAtPmFjdGl2ZV9tc3RfbGlua3MgPT0gMCkgewo+ID4+ICAgICAgICAgICAgICAg aW50ZWxfZGlnX3BvcnQtPmJhc2UucG9zdF9kaXNhYmxlKCZpbnRlbF9kaWdfcG9ydC0+YmFzZSk7 Cj4gPj4gICAgICAgICAgICAgICBpbnRlbF9kcF9zaW5rX2RwbXMoaW50ZWxfZHAsIERSTV9NT0RF X0RQTVNfT0ZGKTsKPiA+PiBAQCAtMTgxLDcgKzE4Myw5IEBAIHN0YXRpYyB2b2lkIGludGVsX21z dF9wcmVfZW5hYmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ID4+ICAgICAg IGZvdW5kLT5lbmNvZGVyID0gZW5jb2RlcjsKPiA+Pgo+ID4+ICAgICAgIERSTV9ERUJVR19LTVMo IiVkXG4iLCBpbnRlbF9kcC0+YWN0aXZlX21zdF9saW5rcyk7Cj4gPj4gLSAgICAgaW50ZWxfbXN0 LT5wb3J0ID0gZm91bmQtPnBvcnQ7Cj4gPj4gKwo+ID4+ICsgICAgIGludGVsX21zdC0+Y29ubmVj dG9yID0gZm91bmQ7Cj4gPj4gKyAgICAgZHJtX2Nvbm5lY3Rvcl9yZWZlcmVuY2UoJmludGVsX21z dC0+Y29ubmVjdG9yLT5iYXNlKTsKPiA+Pgo+ID4+ICAgICAgIGlmIChpbnRlbF9kcC0+YWN0aXZl X21zdF9saW5rcyA9PSAwKSB7Cj4gPj4gICAgICAgICAgICAgICBpbnRlbF9wcmVwYXJlX2RkaV9i dWZmZXIoJmludGVsX2RpZ19wb3J0LT5iYXNlKTsKPiA+PiBAQCAtMTk5LDcgKzIwMyw3IEBAIHN0 YXRpYyB2b2lkIGludGVsX21zdF9wcmVfZW5hYmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyKQo+ID4+ICAgICAgIH0KPiA+Pgo+ID4+ICAgICAgIHJldCA9IGRybV9kcF9tc3RfYWxs b2NhdGVfdmNwaSgmaW50ZWxfZHAtPm1zdF9tZ3IsCj4gPj4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGludGVsX21zdC0+cG9ydCwKPiA+PiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50ZWxfbXN0LT5jb25uZWN0b3ItPnBvcnQsCj4gPj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVsX2NydGMtPmNvbmZpZy0+cGJuLCAm c2xvdHMpOwo+ID4+ICAgICAgIGlmIChyZXQgPT0gZmFsc2UpIHsKPiA+PiAgICAgICAgICAgICAg IERSTV9FUlJPUigiZmFpbGVkIHRvIGFsbG9jYXRlIHZjcGlcbiIpOwo+ID4+IEBAIC0yNDgsNyAr MjUyLDcgQEAgc3RhdGljIGJvb2wgaW50ZWxfZHBfbXN0X2VuY19nZXRfaHdfc3RhdGUoc3RydWN0 IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gPj4gIHsKPiA+PiAgICAgICBzdHJ1Y3QgaW50ZWxf ZHBfbXN0X2VuY29kZXIgKmludGVsX21zdCA9IGVuY190b19tc3QoJmVuY29kZXItPmJhc2UpOwo+ ID4+ICAgICAgICpwaXBlID0gaW50ZWxfbXN0LT5waXBlOwo+ID4+IC0gICAgIGlmIChpbnRlbF9t c3QtPnBvcnQpCj4gPj4gKyAgICAgaWYgKGludGVsX21zdC0+Y29ubmVjdG9yKQo+ID4+ICAgICAg ICAgICAgICAgcmV0dXJuIHRydWU7Cj4gPj4gICAgICAgcmV0dXJuIGZhbHNlOwo+ID4+ICB9Cj4g Pj4gQEAgLTMxMiw2ICszMTYsMTEgQEAgc3RhdGljIGludCBpbnRlbF9kcF9tc3RfZ2V0X2RkY19t b2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4+ICAgICAgIHN0cnVjdCBl ZGlkICplZGlkOwo+ID4+ICAgICAgIGludCByZXQ7Cj4gPj4KPiA+PiArICAgICBpZiAoIWludGVs X2Nvbm5lY3Rvci0+cG9ydCB8fCAhaW50ZWxfZHApIHsKPiA+PiArICAgICAgICAgICAgIHJldCA9 IGludGVsX2Nvbm5lY3Rvcl91cGRhdGVfbW9kZXMoY29ubmVjdG9yLCBOVUxMKTsKPiA+PiArICAg ICAgICAgICAgIHJldHVybiByZXQ7Cj4gPj4gKyAgICAgfQo+ID4+ICsKPiA+PiAgICAgICBlZGlk ID0gZHJtX2RwX21zdF9nZXRfZWRpZChjb25uZWN0b3IsICZpbnRlbF9kcC0+bXN0X21nciwgaW50 ZWxfY29ubmVjdG9yLT5wb3J0KTsKPiA+PiAgICAgICBpZiAoIWVkaWQpCj4gPj4gICAgICAgICAg ICAgICByZXR1cm4gMDsKPiA+PiBAQCAtMzI4LDYgKzMzNyw4IEBAIGludGVsX2RwX21zdF9kZXRl Y3Qoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKPiA+PiAgICAg ICBzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPSB0b19pbnRlbF9jb25u ZWN0b3IoY29ubmVjdG9yKTsKPiA+PiAgICAgICBzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0g aW50ZWxfY29ubmVjdG9yLT5tc3RfcG9ydDsKPiA+Pgo+ID4+ICsgICAgIGlmICghaW50ZWxfY29u bmVjdG9yLT5wb3J0IHx8ICFpbnRlbF9kcCkKPiA+PiArICAgICAgICAgICAgIHJldHVybiBjb25u ZWN0b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKPiA+PiAgICAgICByZXR1cm4gZHJtX2RwX21zdF9k ZXRlY3RfcG9ydChjb25uZWN0b3IsICZpbnRlbF9kcC0+bXN0X21nciwgaW50ZWxfY29ubmVjdG9y LT5wb3J0KTsKPiA+Cj4gPiBTaG91bGQgd2UgcHVzaCB0aGlzIGNoYW5nZSBhbmQgdGhlIHByZWNl ZWRpbmcgb25lIGludG8gZHAgaGVscGVycywgaS5lLgo+ID4gbWFrZSB0aGVtIGNvcGUgd2l0aCBh IG51bGwgcG9ydD8gT3RvaCBtb3JlIHdvcmsgdG8gZmlzaCBvdXQgdGhlCj4gPiAtPm1zdF9tZ3Is IHNvIG5vdCBzdXJlLgo+IAo+IEFjdHVhbGx5IHRoZXkgY29wZSB3aXRoIGEgTlVMTCBwb3J0IGZp bmUsIHNvIHdlIGNhbiBkcm9wIGEgYml0IG9mCj4gdGhvc2UgdHdvIGh1bmtzLAo+IAo+ID4KPiA+ IEhtIC4uLiBpc24ndCB0aGUgbXN0X21nciBhIHJlZHVuZGFudCBhcmd1bWVudCwgYW5kIHdlIGNv dWxkIGZpZ3VyZSB0aGF0Cj4gPiBvdXQgcHVyZWx5IGZyb20gdGhlIHBvcnQ/IFdvdWxkIGJlIGEg Yml0IG9mIHJlZmFjdG9yaW5nLCBidXQgSSB0aGluayB0aGUKPiA+IHNoYXJlZCBjb2RlIGZvciB0 aGlzIGNydWNpYWwgYml0IG9mIHNlbWFudGljcyAodGhlcmUncyBubyB3YXkgdGhlIG1zdCBwb3J0 Cj4gPiBpcyBldmVyIGNvbm5lY3RlZCBpZiBpdCdzIHVucGx1Z2dlZCkgd291bGQgYmUgZ29vZC4K PiAKPiBObyB0aGUgcG9ydCBpc24ndCBhIHJlZmVyZW5jZSBjb3VudGVkIG9iamVjdCwgaXQncyBq dXN0IGEgcG9pbnQgd2UKPiByZXZhbGlkYXRlIGluIHRoZQo+IG1zdCBjb2RlLiBUaGUgTVNUIG1h bmFnZXIgZG9lcyd0IGRpc2FwcGVhci4gU28geW91IGNhbid0IGdldCBmcm9tIHBvcnQKPiB0byBh bnl0aGluZwo+IGVsc2UgdW50aWwgeW91IGNoZWNrIGl0J3MgdmFsaWQuIFlvdSBjYW4ndCByZWZl cmVuY2UgY291bnQgcG9ydCBvbiB0aGUKPiBjb25uZWN0b3Igb3IKPiBlbHNlIHlvdSBqdXN0IGVu ZCB1cCB3aXRoIGNpcmN1bGFyIHJlZmVyZW5jZXMgYmV0d2VlbiB0aGUgdHdvLgoKWWVhaCBJIHRo aW5rIHRoaXMgaXMgYmV5b25kIG15IHVuZGVyc3RhbmRpbmcgb2YgdGhlIG1zdCBoZWxwZXJzLiBS ZWFsbHkKc2hvdWxkIGZpeCB0aGF0IHNvbWV0aW1lcyA7LSkKCj4gPj4gLSAgICAgZHJtX21vZGVz ZXRfdW5sb2NrX2FsbChkZXYpOwo+ID4+IC0KPiA+PiAgICAgICBpbnRlbF9jb25uZWN0b3ItPnVu cmVnaXN0ZXIoaW50ZWxfY29ubmVjdG9yKTsKPiA+Pgo+ID4+ICAgICAgIGRybV9tb2Rlc2V0X2xv Y2tfYWxsKGRldik7Cj4gPj4gICAgICAgaW50ZWxfY29ubmVjdG9yX3JlbW92ZV9mcm9tX2ZiZGV2 KGludGVsX2Nvbm5lY3Rvcik7Cj4gPj4gLSAgICAgZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKGNvbm5l Y3Rvcik7Cj4gPj4gKyAgICAgaW50ZWxfY29ubmVjdG9yLT5tc3RfcG9ydCA9IE5VTEw7Cj4gPj4g ICAgICAgZHJtX21vZGVzZXRfdW5sb2NrX2FsbChkZXYpOwo+ID4KPiA+IEhtLCB1Z2x5IHRoYXQg d2Ugc3RpbGwgbmVlZCB0byBncmFiIG1vZGVzZXQgbG9ja3MgaGVyZS4gSSdkIGxpa2UgdG8gYXZv aWQKPiA+IHRoYXQsIHNpbmNlIGl0IGNvdWxkIGJlIGEgbWFqb3Igc3RhbGwuIE1heWJlIHdlIG5l ZWQgdG8gaGF2ZSBhIHNlcGFyYXRlCj4gPiBsb2NrIGZvciB0aGUgZmJkZXYgY29ubmVjdG9yIGxp c3QsIGFuZCB0aGVuIHB1c2ggdGhlIGxvY2tpbmcgZm9yIHRoYXQKPiA+IChpbmNsdWRpbmcgcmVm Y291bnRpbmcpIGRvd24gaW50byBmYmRldiBoZWxwZXJzPwo+IAo+IElmIHlvdSBwbHVnIG91dCBh biBNU1QgZGV2aWNlIGEgc3RhbGwgaXNuJ3QgZ29pbmcgdG8gYmUgYSBtYWpvciB3b3JyeSwgeW91 Cj4gYXJlIGdvaW5nIHRvIGdldCBhIG1vZGVzZXQgbW9zdCBsaWtlbHkgc3RyYWlnaHQgYXdheS4K PiAKPiBTbyBJIHRoaW5rIHdlIHNob3VsZCBvbmx5IGFkZHJlc3MgdGhpcyBwcm9ibGVtIHdoZW4g d2UgaGF2ZSB0aGlzIHByb2JsZW0uCgpXZWxsIGl0J3MgbW9yZSBnZW5lcmFsIHVuaGFwcGluZXNz IHdpdGggaG93IGZiZGV2IGxvY2tpbmcgcGlnZ3ktcGFja3Mgb24KdG9wIG9mIGRybV9tb2Rlc2V0 X2xvY2tfYWxsKCkuIEF0IGxlYXN0IGltZSByZXVzaW5nIEJLTHMgYmVjYXVzZSB0aGV5J3JlCnRo ZXJlIGFscmVhZHkgc29vbmVyIG9yIGxhdGVyIGxlYWRzIHRvIGhlYWRhY2hlcyAtIGhhdmluZyBz ZXBhcmF0ZSBsb2Nrcwpmb3Igc2VwYXJhdGUgdGhpbmdzIG1ha2VzIHJldmlldyBlYXNpZXIuIEF2 b2lkIHRoZSBzdGFsbCBpcyBqdXN0IGEgYmVuZWZpdApvbiB0b3AuIEFueXdheSwgd2FzIGp1c3Qg YW4gaWRlYS4KLURhbmllbAotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50 ZWwgQ29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2 ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==