From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Airlie Subject: [PATCH 14/15] drm/i915/mst: use reference counted connectors. Date: Fri, 15 Apr 2016 15:10:45 +1000 Message-ID: <1460697046-23781-15-git-send-email-airlied@gmail.com> References: <1460697046-23781-1-git-send-email-airlied@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTPS id A36B56E4D4 for ; Fri, 15 Apr 2016 05:11:02 +0000 (UTC) Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5C0B678236 for ; Fri, 15 Apr 2016 05:11:02 +0000 (UTC) Received: from dreadlord-bne-redhat-com.bne.redhat.com (dhcp-40-179.bne.redhat.com [10.64.40.179]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u3F5AlYr005176 for ; Fri, 15 Apr 2016 01:11:01 -0400 In-Reply-To: <1460697046-23781-1-git-send-email-airlied@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KCkRvbid0IGp1c3QgZnJlZSB0 aGUgY29ubmVjdG9yIHdoZW4gd2UgZ2V0IHRoZSBkZXN0cm95IGNhbGxiYWNrLgoKRHJvcCBhIHJl ZmVyZW5jZSB0byBpdCwgYW5kIHNldCBpdCdzIG1zdF9wb3J0IHRvIE5VTEwgc28Kbm8gbW9yZSBt c3Qgd29yayBpcyBkb25lIG9uIGl0LgoKU2lnbmVkLW9mZi1ieTogRGF2ZSBBaXJsaWUgPGFpcmxp ZWRAcmVkaGF0LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYyB8 IDQ2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0 aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHBfbXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYwpp bmRleCBhMmJkNjk4Li4yZTczMGI2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcF9tc3QuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYwpA QCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyB2b2lkIGludGVsX21zdF9kaXNhYmxlX2RwKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogCiAJRFJNX0RFQlVHX0tNUygiJWRcbiIsIGludGVs X2RwLT5hY3RpdmVfbXN0X2xpbmtzKTsKIAotCWRybV9kcF9tc3RfcmVzZXRfdmNwaV9zbG90cygm aW50ZWxfZHAtPm1zdF9tZ3IsIGludGVsX21zdC0+cG9ydCk7CisJZHJtX2RwX21zdF9yZXNldF92 Y3BpX3Nsb3RzKCZpbnRlbF9kcC0+bXN0X21nciwgaW50ZWxfbXN0LT5jb25uZWN0b3ItPnBvcnQp OwogCiAJcmV0ID0gZHJtX2RwX3VwZGF0ZV9wYXlsb2FkX3BhcnQxKCZpbnRlbF9kcC0+bXN0X21n cik7CiAJaWYgKHJldCkgewpAQCAtMTM4LDEwICsxMzgsMTIgQEAgc3RhdGljIHZvaWQgaW50ZWxf bXN0X3Bvc3RfZGlzYWJsZV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKIAkvKiBh bmQgdGhpcyBjYW4gYWxzbyBmYWlsICovCiAJZHJtX2RwX3VwZGF0ZV9wYXlsb2FkX3BhcnQyKCZp bnRlbF9kcC0+bXN0X21ncik7CiAKLQlkcm1fZHBfbXN0X2RlYWxsb2NhdGVfdmNwaSgmaW50ZWxf ZHAtPm1zdF9tZ3IsIGludGVsX21zdC0+cG9ydCk7CisJZHJtX2RwX21zdF9kZWFsbG9jYXRlX3Zj cGkoJmludGVsX2RwLT5tc3RfbWdyLCBpbnRlbF9tc3QtPmNvbm5lY3Rvci0+cG9ydCk7CiAKIAlp bnRlbF9kcC0+YWN0aXZlX21zdF9saW5rcy0tOwotCWludGVsX21zdC0+cG9ydCA9IE5VTEw7CisK Kwlkcm1fY29ubmVjdG9yX3VucmVmZXJlbmNlKCZpbnRlbF9tc3QtPmNvbm5lY3Rvci0+YmFzZSk7 CisJaW50ZWxfbXN0LT5jb25uZWN0b3IgPSBOVUxMOwogCWlmIChpbnRlbF9kcC0+YWN0aXZlX21z dF9saW5rcyA9PSAwKSB7CiAJCWludGVsX2RpZ19wb3J0LT5iYXNlLnBvc3RfZGlzYWJsZSgmaW50 ZWxfZGlnX3BvcnQtPmJhc2UpOwogCQlpbnRlbF9kcF9zaW5rX2RwbXMoaW50ZWxfZHAsIERSTV9N T0RFX0RQTVNfT0ZGKTsKQEAgLTE4MSw3ICsxODMsOSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tc3Rf cHJlX2VuYWJsZV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKIAlmb3VuZC0+ZW5j b2RlciA9IGVuY29kZXI7CiAKIAlEUk1fREVCVUdfS01TKCIlZFxuIiwgaW50ZWxfZHAtPmFjdGl2 ZV9tc3RfbGlua3MpOwotCWludGVsX21zdC0+cG9ydCA9IGZvdW5kLT5wb3J0OworCisJaW50ZWxf bXN0LT5jb25uZWN0b3IgPSBmb3VuZDsKKwlkcm1fY29ubmVjdG9yX3JlZmVyZW5jZSgmaW50ZWxf bXN0LT5jb25uZWN0b3ItPmJhc2UpOwogCiAJaWYgKGludGVsX2RwLT5hY3RpdmVfbXN0X2xpbmtz ID09IDApIHsKIAkJaW50ZWxfcHJlcGFyZV9kZGlfYnVmZmVyKCZpbnRlbF9kaWdfcG9ydC0+YmFz ZSk7CkBAIC0xOTksNyArMjAzLDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfbXN0X3ByZV9lbmFibGVf ZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCiAJfQogCiAJcmV0ID0gZHJtX2RwX21z dF9hbGxvY2F0ZV92Y3BpKCZpbnRlbF9kcC0+bXN0X21nciwKLQkJCQkgICAgICAgaW50ZWxfbXN0 LT5wb3J0LAorCQkJCSAgICAgICBpbnRlbF9tc3QtPmNvbm5lY3Rvci0+cG9ydCwKIAkJCQkgICAg ICAgaW50ZWxfY3J0Yy0+Y29uZmlnLT5wYm4sICZzbG90cyk7CiAJaWYgKHJldCA9PSBmYWxzZSkg ewogCQlEUk1fRVJST1IoImZhaWxlZCB0byBhbGxvY2F0ZSB2Y3BpXG4iKTsKQEAgLTI0OCw3ICsy NTIsNyBAQCBzdGF0aWMgYm9vbCBpbnRlbF9kcF9tc3RfZW5jX2dldF9od19zdGF0ZShzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIHsKIAlzdHJ1Y3QgaW50ZWxfZHBfbXN0X2VuY29kZXIg KmludGVsX21zdCA9IGVuY190b19tc3QoJmVuY29kZXItPmJhc2UpOwogCSpwaXBlID0gaW50ZWxf bXN0LT5waXBlOwotCWlmIChpbnRlbF9tc3QtPnBvcnQpCisJaWYgKGludGVsX21zdC0+Y29ubmVj dG9yKQogCQlyZXR1cm4gdHJ1ZTsKIAlyZXR1cm4gZmFsc2U7CiB9CkBAIC0zMTIsNiArMzE2LDEx IEBAIHN0YXRpYyBpbnQgaW50ZWxfZHBfbXN0X2dldF9kZGNfbW9kZXMoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvcikKIAlzdHJ1Y3QgZWRpZCAqZWRpZDsKIAlpbnQgcmV0OwogCisJaWYg KCFpbnRlbF9jb25uZWN0b3ItPnBvcnQgfHwgIWludGVsX2RwKSB7CisJCXJldCA9IGludGVsX2Nv bm5lY3Rvcl91cGRhdGVfbW9kZXMoY29ubmVjdG9yLCBOVUxMKTsKKwkJcmV0dXJuIHJldDsKKwl9 CisKIAllZGlkID0gZHJtX2RwX21zdF9nZXRfZWRpZChjb25uZWN0b3IsICZpbnRlbF9kcC0+bXN0 X21nciwgaW50ZWxfY29ubmVjdG9yLT5wb3J0KTsKIAlpZiAoIWVkaWQpCiAJCXJldHVybiAwOwpA QCAtMzI4LDYgKzMzNyw4IEBAIGludGVsX2RwX21zdF9kZXRlY3Qoc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKIAlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRl bF9jb25uZWN0b3IgPSB0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKTsKIAlzdHJ1Y3QgaW50 ZWxfZHAgKmludGVsX2RwID0gaW50ZWxfY29ubmVjdG9yLT5tc3RfcG9ydDsKIAorCWlmICghaW50 ZWxfY29ubmVjdG9yLT5wb3J0IHx8ICFpbnRlbF9kcCkKKwkJcmV0dXJuIGNvbm5lY3Rvcl9zdGF0 dXNfZGlzY29ubmVjdGVkOwogCXJldHVybiBkcm1fZHBfbXN0X2RldGVjdF9wb3J0KGNvbm5lY3Rv ciwgJmludGVsX2RwLT5tc3RfbWdyLCBpbnRlbF9jb25uZWN0b3ItPnBvcnQpOwogfQogCkBAIC0z OTMsNiArNDA0LDggQEAgc3RhdGljIHN0cnVjdCBkcm1fZW5jb2RlciAqaW50ZWxfbXN0X2F0b21p Y19iZXN0X2VuY29kZXIoc3RydWN0IGRybV9jb25uZWN0b3IgKmMKIAlzdHJ1Y3QgaW50ZWxfZHAg KmludGVsX2RwID0gaW50ZWxfY29ubmVjdG9yLT5tc3RfcG9ydDsKIAlzdHJ1Y3QgaW50ZWxfY3J0 YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoc3RhdGUtPmNydGMpOwogCisJaWYgKCFpbnRlbF9kcCkK KwkJcmV0dXJuIE5VTEw7CiAJcmV0dXJuICZpbnRlbF9kcC0+bXN0X2VuY29kZXJzW2NydGMtPnBp cGVdLT5iYXNlLmJhc2U7CiB9CiAKQEAgLTQwMCw2ICs0MTMsOCBAQCBzdGF0aWMgc3RydWN0IGRy bV9lbmNvZGVyICppbnRlbF9tc3RfYmVzdF9lbmNvZGVyKHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0bwogewogCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IHRv X2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpOwogCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAg PSBpbnRlbF9jb25uZWN0b3ItPm1zdF9wb3J0OworCWlmICghaW50ZWxfZHApCisJCXJldHVybiBO VUxMOwogCXJldHVybiAmaW50ZWxfZHAtPm1zdF9lbmNvZGVyc1swXS0+YmFzZS5iYXNlOwogfQog CkBAIC01MDYsMjkgKzUyMSwxNCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9kZXN0cm95X21zdF9j b25uZWN0b3Ioc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiAJc3RydWN0IGlu dGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yID0gdG9faW50ZWxfY29ubmVjdG9yKGNvbm5l Y3Rvcik7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNvbm5lY3Rvci0+ZGV2OwogCi0JLyog bmVlZCB0byBudWtlIHRoZSBjb25uZWN0b3IgKi8KLQlkcm1fbW9kZXNldF9sb2NrX2FsbChkZXYp OwotCWlmIChjb25uZWN0b3ItPnN0YXRlLT5jcnRjKSB7Ci0JCXN0cnVjdCBkcm1fbW9kZV9zZXQg c2V0OwotCQlpbnQgcmV0OwotCi0JCW1lbXNldCgmc2V0LCAwLCBzaXplb2Yoc2V0KSk7Ci0JCXNl dC5jcnRjID0gY29ubmVjdG9yLT5zdGF0ZS0+Y3J0YywKLQotCQlyZXQgPSBkcm1fYXRvbWljX2hl bHBlcl9zZXRfY29uZmlnKCZzZXQpOwotCi0JCVdBUk4ocmV0LCAiRGlzYWJsaW5nIG1zdCBjcnRj IGZhaWxlZCB3aXRoICVpXG4iLCByZXQpOwotCX0KLQlkcm1fbW9kZXNldF91bmxvY2tfYWxsKGRl dik7Ci0KIAlpbnRlbF9jb25uZWN0b3ItPnVucmVnaXN0ZXIoaW50ZWxfY29ubmVjdG9yKTsKIAog CWRybV9tb2Rlc2V0X2xvY2tfYWxsKGRldik7CiAJaW50ZWxfY29ubmVjdG9yX3JlbW92ZV9mcm9t X2ZiZGV2KGludGVsX2Nvbm5lY3Rvcik7Ci0JZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKGNvbm5lY3Rv cik7CisJaW50ZWxfY29ubmVjdG9yLT5tc3RfcG9ydCA9IE5VTEw7CiAJZHJtX21vZGVzZXRfdW5s b2NrX2FsbChkZXYpOwogCi0Ja2ZyZWUoaW50ZWxfY29ubmVjdG9yKTsKKwlkcm1fY29ubmVjdG9y X3VucmVmZXJlbmNlKCZpbnRlbF9jb25uZWN0b3ItPmJhc2UpOwogCURSTV9ERUJVR19LTVMoIlxu Iik7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggNGMwMjdkNi4uMGQyMzYwZSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTgzMSw3ICs4MzEsNyBAQCBzdHJ1Y3QgaW50 ZWxfZHBfbXN0X2VuY29kZXIgewogCXN0cnVjdCBpbnRlbF9lbmNvZGVyIGJhc2U7CiAJZW51bSBw aXBlIHBpcGU7CiAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqcHJpbWFyeTsKLQl2b2lkICpw b3J0OyAvKiBzdG9yZSB0aGlzIG9wYXF1ZSBhcyBpdHMgaWxsZWdhbCB0byBkZXJlZmVyZW5jZSBp dCAqLworCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcjsKIH07CiAKIHN0YXRpYyBp bmxpbmUgZW51bSBkcGlvX2NoYW5uZWwKLS0gCjIuNS41CgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK