From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Subject: [RFC v4 17/25] drm/client: Bail out if there's a DRM master Date: Thu, 12 Apr 2018 18:12:29 +0200 Message-ID: <20180412161237.9314-6-noralf@tronnes.org> References: <20180412161237.9314-1-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180412161237.9314-1-noralf@tronnes.org> 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 Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org, laurent.pinchart@ideasonboard.com, mstaudt@suse.de List-Id: dri-devel@lists.freedesktop.org SWYgdGhlcmUncyBhIERSTSBtYXN0ZXIsIHJldHVybiAtRUJVU1kuCkJsb2NrIHVzZXJzcGFjZSBm cm9tIGJlY29taW5nIG1hc3RlciBieSB0YWtpbmcgdGhlIG1hc3RlciBsb2NrIHdoaWxlCnRoZSBj bGllbnQgaXMgc2V0dGluZyB0aGUgbW9kZS4KClN1Z2dlc3RlZC1ieTogRGFuaWVsIFZldHRlciA8 ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KU2lnbmVkLW9mZi1ieTogTm9yYWxmIFRyw7hubmVzIDxu b3JhbGZAdHJvbm5lcy5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdXRoLmMgICAgICB8 IDMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2Ry bV9jbGllbnQuYyAgICB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KIGRy aXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMgfCAgOCArKysrLS0tLQogZHJpdmVycy9ncHUv ZHJtL2RybV9pbnRlcm5hbC5oICB8ICAyICsrCiBpbmNsdWRlL2RybS9kcm1fY2xpZW50LmggICAg ICAgIHwgIDQgKystLQogNSBmaWxlcyBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCAxMSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F1dGguYyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fYXV0aC5jCmluZGV4IGQ5YzBmNzU3MzkwNS4uZDY1NmQwZDkzZGEzIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F1dGguYworKysgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2F1dGguYwpAQCAtMzY2LDMgKzM2NiwzNiBAQCB2b2lkIGRybV9tYXN0ZXJfcHV0KHN0 cnVjdCBkcm1fbWFzdGVyICoqbWFzdGVyKQogCSptYXN0ZXIgPSBOVUxMOwogfQogRVhQT1JUX1NZ TUJPTChkcm1fbWFzdGVyX3B1dCk7CisKKy8qKgorICogZHJtX21hc3Rlcl9ibG9jayAtIEJsb2Nr IERSTSBtYXN0ZXIgb3BlcmF0aW9ucworICogQGRldjogRFJNIGRldmljZQorICoKKyAqIFRoaXMg ZnVuY3Rpb24gY2hlY2tzIGlmIHRoZXJlIGlzIGEgbWFzdGVyIG9uIEBkZXYuIElmIHRoZXJlIGlz IG5vIG1hc3RlciBpdAorICogYmxvY2tzIGFueW9uZSBmcm9tIGJlY29taW5nIG1hc3Rlci4gSW4t a2VybmVsIGNsaWVudHMgY2FuIHVzZSB0aGlzIHRvIGtub3cKKyAqIHdoZW4gdGhleSBjYW4gYWN0 IGFzIG1hc3Rlci4gVXNlIGRybV9tYXN0ZXJfdW5ibG9jaygpIHRvIHVuYmxvY2suCisgKgorICog UmV0dXJuczoKKyAqIFRydWUgaWYgdGhlcmUgaXMgbm8gbWFzdGVyLCBmYWxzZSBvdGhlcndpc2Uu CisgKi8KK2Jvb2wgZHJtX21hc3Rlcl9ibG9jayhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorewor CW11dGV4X2xvY2soJmRldi0+bWFzdGVyX211dGV4KTsKKwlpZiAoZGV2LT5tYXN0ZXIpIHsKKwkJ bXV0ZXhfdW5sb2NrKCZkZXYtPm1hc3Rlcl9tdXRleCk7CisJCXJldHVybiBmYWxzZTsKKwl9CisK KwlyZXR1cm4gdHJ1ZTsKK30KKworLyoqCisgKiBkcm1fbWFzdGVyX3VuYmxvY2sgLSBVbmJsb2Nr IERSTSBtYXN0ZXIgb3BlcmF0aW9ucworICogQGRldjogRFJNIGRldmljZQorICoKKyAqIFVuYmxv Y2sgYW5kIGFsbG93IHVzZXJzcGFjZSB0byBiZWNvbWUgbWFzdGVyLgorICovCit2b2lkIGRybV9t YXN0ZXJfdW5ibG9jayhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQoreworCW11dGV4X3VubG9jaygm ZGV2LT5tYXN0ZXJfbXV0ZXgpOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9j bGllbnQuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY2xpZW50LmMKaW5kZXggMjc4MThhNDY3YjA5 Li43NjRjNTU2NjMwYjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY2xpZW50LmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jbGllbnQuYwpAQCAtMTgsNiArMTgsOCBAQAogI2lu Y2x1ZGUgPGRybS9kcm1fZGV2aWNlLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9tb2Rlcy5oPgogCisj aW5jbHVkZSAiZHJtX2ludGVybmFsLmgiCisKIHN0cnVjdCBkcm1fY2xpZW50X2Rpc3BsYXlfb2Zm c2V0IHsKIAlpbnQgeCwgeTsKIH07CkBAIC0zMTMsMTggKzMxNSwzMCBAQCBzdGF0aWMgaW50IGRy bV9jbGllbnRfZGlzcGxheV9yZXN0b3JlX2xlZ2FjeShzdHJ1Y3QgZHJtX2NsaWVudF9kaXNwbGF5 ICpkaXNwbGF5KQogLyoqCiAgKiBkcm1fY2xpZW50X2Rpc3BsYXlfcmVzdG9yZSgpIC0gUmVzdG9y ZSBjbGllbnQgZGlzcGxheQogICogQGRpc3BsYXk6IENsaWVudCBkaXNwbGF5CisgKiBAZm9yY2U6 IElmIHRydWUsIHJlc3RvcmUgZXZlbiBpZiB0aGVyZSdzIGEgRFJNIG1hc3RlcgogICoKICAqIFJl c3RvcmUgY2xpZW50IGRpc3BsYXkgdXNpbmcgdGhlIGN1cnJlbnQgbW9kZXNldCBjb25maWd1cmF0 aW9uLgogICoKICAqIFJldHVybjoKICAqIFplcm8gb24gc3VjY2VzIG9yIG5lZ2F0aXZlIGVycm9y IGNvZGUgb24gZmFpbHVyZS4KICAqLwotaW50IGRybV9jbGllbnRfZGlzcGxheV9yZXN0b3JlKHN0 cnVjdCBkcm1fY2xpZW50X2Rpc3BsYXkgKmRpc3BsYXkpCitpbnQgZHJtX2NsaWVudF9kaXNwbGF5 X3Jlc3RvcmUoc3RydWN0IGRybV9jbGllbnRfZGlzcGxheSAqZGlzcGxheSwgYm9vbCBmb3JjZSkK IHsKLQlpZiAoZHJtX2Rydl91c2VzX2F0b21pY19tb2Rlc2V0KGRpc3BsYXktPmRldikpCi0JCXJl dHVybiBkcm1fY2xpZW50X2Rpc3BsYXlfcmVzdG9yZV9hdG9taWMoZGlzcGxheSwgdHJ1ZSk7CisJ c3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRpc3BsYXktPmRldjsKKwlpbnQgcmV0OworCisJaWYg KCFmb3JjZSAmJiAhZHJtX21hc3Rlcl9ibG9jayhkZXYpKQorCQlyZXR1cm4gLUVCVVNZOworCisJ aWYgKGRybV9kcnZfdXNlc19hdG9taWNfbW9kZXNldChkZXYpKQorCQlyZXQgPSBkcm1fY2xpZW50 X2Rpc3BsYXlfcmVzdG9yZV9hdG9taWMoZGlzcGxheSwgdHJ1ZSk7CiAJZWxzZQotCQlyZXR1cm4g ZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmVfbGVnYWN5KGRpc3BsYXkpOworCQlyZXQgPSBkcm1f Y2xpZW50X2Rpc3BsYXlfcmVzdG9yZV9sZWdhY3koZGlzcGxheSk7CisKKwlpZiAoIWZvcmNlKQor CQlkcm1fbWFzdGVyX3VuYmxvY2soZGV2KTsKKworCXJldHVybiByZXQ7CiB9CiBFWFBPUlRfU1lN Qk9MKGRybV9jbGllbnRfZGlzcGxheV9yZXN0b3JlKTsKIApAQCAtMzU0LDEzICszNjgsMjMgQEAg c3RhdGljIHZvaWQgZHJtX2NsaWVudF9kaXNwbGF5X2RwbXNfbGVnYWN5KHN0cnVjdCBkcm1fY2xp ZW50X2Rpc3BsYXkgKmRpc3BsYXksIGkKICAqIGRybV9jbGllbnRfZGlzcGxheV9kcG1zKCkgLSBT ZXQgZGlzcGxheSBEUE1TIG1vZGUKICAqIEBkaXNwbGF5OiBDbGllbnQgZGlzcGxheQogICogQG1v ZGU6IERQTVMgbW9kZQorICoKKyAqIFJldHVybnM6CisgKiBaZXJvIG9uIHN1Y2Nlc3MsIC1FQlVT WSBpZiB0aGVyZSdzIGEgRFJNIG1hc3Rlci4KICAqLwotdm9pZCBkcm1fY2xpZW50X2Rpc3BsYXlf ZHBtcyhzdHJ1Y3QgZHJtX2NsaWVudF9kaXNwbGF5ICpkaXNwbGF5LCBpbnQgbW9kZSkKK2ludCBk cm1fY2xpZW50X2Rpc3BsYXlfZHBtcyhzdHJ1Y3QgZHJtX2NsaWVudF9kaXNwbGF5ICpkaXNwbGF5 LCBpbnQgbW9kZSkKIHsKKwlpZiAoIWRybV9tYXN0ZXJfYmxvY2soZGlzcGxheS0+ZGV2KSkKKwkJ cmV0dXJuIC1FQlVTWTsKKwogCWlmIChkcm1fZHJ2X3VzZXNfYXRvbWljX21vZGVzZXQoZGlzcGxh eS0+ZGV2KSkKIAkJZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmVfYXRvbWljKGRpc3BsYXksIG1v ZGUgPT0gRFJNX01PREVfRFBNU19PTik7CiAJZWxzZQogCQlkcm1fY2xpZW50X2Rpc3BsYXlfZHBt c19sZWdhY3koZGlzcGxheSwgbW9kZSk7CisKKwlkcm1fbWFzdGVyX3VuYmxvY2soZGlzcGxheS0+ ZGV2KTsKKworCXJldHVybiAwOwogfQogRVhQT1JUX1NZTUJPTChkcm1fY2xpZW50X2Rpc3BsYXlf ZHBtcyk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCmluZGV4IDAxZDg4NDA5MzBhMy4uOThlNWJj OTJjOWYyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKQEAgLTE4MSw3ICsxODEsNyBAQCBpbnQg ZHJtX2ZiX2hlbHBlcl9yZXN0b3JlX2ZiZGV2X21vZGVfdW5sb2NrZWQoc3RydWN0IGRybV9mYl9o ZWxwZXIgKmZiX2hlbHBlcikKIAkJcmV0dXJuIDA7CiAKIAltdXRleF9sb2NrKCZmYl9oZWxwZXIt PmxvY2spOwotCXJldCA9IGRybV9jbGllbnRfZGlzcGxheV9yZXN0b3JlKGZiX2hlbHBlci0+ZGlz cGxheSk7CisJcmV0ID0gZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmUoZmJfaGVscGVyLT5kaXNw bGF5LCBmYWxzZSk7CiAKIAlkb19kZWxheWVkID0gZmJfaGVscGVyLT5kZWxheWVkX2hvdHBsdWc7 CiAJaWYgKGRvX2RlbGF5ZWQpCkBAIC0yNDMsNyArMjQzLDcgQEAgc3RhdGljIGJvb2wgZHJtX2Zi X2hlbHBlcl9mb3JjZV9rZXJuZWxfbW9kZSh2b2lkKQogCQkJY29udGludWU7CiAKIAkJbXV0ZXhf bG9jaygmaGVscGVyLT5sb2NrKTsKLQkJcmV0ID0gZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmUo aGVscGVyLT5kaXNwbGF5KTsKKwkJcmV0ID0gZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmUoaGVs cGVyLT5kaXNwbGF5LCB0cnVlKTsKIAkJaWYgKHJldCkKIAkJCWVycm9yID0gdHJ1ZTsKIAkJbXV0 ZXhfdW5sb2NrKCZoZWxwZXItPmxvY2spOwpAQCAtMTI1NCw3ICsxMjU0LDcgQEAgc3RhdGljIGlu dCBwYW5fZGlzcGxheV9hdG9taWMoc3RydWN0IGZiX3Zhcl9zY3JlZW5pbmZvICp2YXIsCiAKIAlw YW5fc2V0KGZiX2hlbHBlciwgdmFyLT54b2Zmc2V0LCB2YXItPnlvZmZzZXQpOwogCi0JcmV0ID0g ZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmUoZmJfaGVscGVyLT5kaXNwbGF5KTsKKwlyZXQgPSBk cm1fY2xpZW50X2Rpc3BsYXlfcmVzdG9yZShmYl9oZWxwZXItPmRpc3BsYXksIGZhbHNlKTsKIAlp ZiAoIXJldCkgewogCQlpbmZvLT52YXIueG9mZnNldCA9IHZhci0+eG9mZnNldDsKIAkJaW5mby0+ dmFyLnlvZmZzZXQgPSB2YXItPnlvZmZzZXQ7CkBAIC0xNDIzLDcgKzE0MjMsNyBAQCBzdGF0aWMg aW50IGRybV9mYl9oZWxwZXJfc2luZ2xlX2ZiX3Byb2JlKHN0cnVjdCBkcm1fZmJfaGVscGVyICpm Yl9oZWxwZXIsCiAKIAkJLyogRmlyc3QgdGltZTogZGlzYWJsZSBhbGwgY3J0YydzLi4gKi8KIAkJ aWYgKCFmYl9oZWxwZXItPmRlZmVycmVkX3NldHVwICYmICFSRUFEX09OQ0UoZmJfaGVscGVyLT5k ZXYtPm1hc3RlcikpCi0JCQlkcm1fY2xpZW50X2Rpc3BsYXlfcmVzdG9yZShmYl9oZWxwZXItPmRp c3BsYXkpOworCQkJZHJtX2NsaWVudF9kaXNwbGF5X3Jlc3RvcmUoZmJfaGVscGVyLT5kaXNwbGF5 LCBmYWxzZSk7CiAJCXJldHVybiAtRUFHQUlOOwogCX0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2RybV9pbnRlcm5hbC5oIGIvZHJpdmVycy9ncHUvZHJtL2RybV9pbnRlcm5hbC5oCmlu ZGV4IDNmNWQ3NzA2YmNjOS4uZjM4ZGNhZjEzOWQ3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2ludGVybmFsLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9pbnRlcm5hbC5oCkBA IC05Miw2ICs5Miw4IEBAIGludCBkcm1fZHJvcG1hc3Rlcl9pb2N0bChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCB2b2lkICpkYXRhLAogCQkJIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2KTsKIGlu dCBkcm1fbWFzdGVyX29wZW4oc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOwogdm9pZCBkcm1f bWFzdGVyX3JlbGVhc2Uoc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOworYm9vbCBkcm1fbWFz dGVyX2Jsb2NrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwordm9pZCBkcm1fbWFzdGVyX3VuYmxv Y2soc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAKIC8qIGRybV9zeXNmcy5jICovCiBleHRlcm4g c3RydWN0IGNsYXNzICpkcm1fY2xhc3M7CmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY2xp ZW50LmggYi9pbmNsdWRlL2RybS9kcm1fY2xpZW50LmgKaW5kZXggMjdkMmE0NmNkOTRhLi4zYmVm ZDg3OWEwYjAgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9jbGllbnQuaAorKysgYi9pbmNs dWRlL2RybS9kcm1fY2xpZW50LmgKQEAgLTQ2LDggKzQ2LDggQEAgZHJtX2NsaWVudF9kaXNwbGF5 X2ZpbmRfbW9kZXNldChzdHJ1Y3QgZHJtX2NsaWVudF9kaXNwbGF5ICpkaXNwbGF5LCBzdHJ1Y3Qg ZHJtX2MKIGJvb2wgZHJtX2NsaWVudF9kaXNwbGF5X3BhbmVsX3JvdGF0aW9uKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkJICAgICAgIHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5l LAogCQkJCSAgICAgICB1bnNpZ25lZCBpbnQgKnJvdGF0aW9uKTsKLWludCBkcm1fY2xpZW50X2Rp c3BsYXlfcmVzdG9yZShzdHJ1Y3QgZHJtX2NsaWVudF9kaXNwbGF5ICpkaXNwbGF5KTsKLXZvaWQg ZHJtX2NsaWVudF9kaXNwbGF5X2RwbXMoc3RydWN0IGRybV9jbGllbnRfZGlzcGxheSAqZGlzcGxh eSwgaW50IG1vZGUpOworaW50IGRybV9jbGllbnRfZGlzcGxheV9yZXN0b3JlKHN0cnVjdCBkcm1f Y2xpZW50X2Rpc3BsYXkgKmRpc3BsYXksIGJvb2wgZm9yY2UpOworaW50IGRybV9jbGllbnRfZGlz cGxheV9kcG1zKHN0cnVjdCBkcm1fY2xpZW50X2Rpc3BsYXkgKmRpc3BsYXksIGludCBtb2RlKTsK IHN0cnVjdCBkcm1fY2xpZW50X2Rpc3BsYXkgKgogZHJtX2NsaWVudF9maW5kX2Rpc3BsYXkoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgdW5zaWduZWQgaW50IHdpZHRoLCB1bnNpZ25lZCBpbnQgaGVp Z2h0KTsKIAotLSAKMi4xNS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK