From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH 3/3] drm/atomic: Refuse to steal encoders from connectors not part of the state. Date: Thu, 18 Feb 2016 09:54:43 +0100 Message-ID: <1455785683-5477-4-git-send-email-maarten.lankhorst@linux.intel.com> References: <1455785683-5477-1-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: In-Reply-To: <1455785683-5477-1-git-send-email-maarten.lankhorst@linux.intel.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 Cc: intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org QmVjYXVzZSBlbmNvZGVyIDwtPiBjb25uZWN0b3IgbWFwcGluZyBpcyBmaXhlZCB3aGVuIG5vdCBt b3ZpbmcgdG8KYW5vdGhlciBjcnRjIHdlIGNhbiBqdXN0IHJlamVjdCBjb25uZWN0b3JzIHRyeWlu ZyB0byBzdGVhbCBhbiBlbmNvZGVyCmZyb20gYSBjb25uZWN0b3Igbm90IHBhcnQgb2YgdGhlIHN0 YXRlLiBUaGlzIHdvbid0IGJyZWFrIE1TVCBvbiBpOTE1CmJlY2F1c2UgaW4gdGhhdCBjYXNlIGNv bm5lY3RvcnMgd2lsbCBiZSBwYXJ0IG9mIHRoZSBzdGF0ZSBpZiB5b3Ugc3dpdGNoCnRoZW0gYmV0 d2VlbiBjcnRjJ3MuIElmIHRoZXkncmUgbm90IHRoZXkgc3RheSBvbiB0aGUgc2FtZSBjcnRjLCBh bmQKZW5jb2RlciBzdGVhbGluZyB3b3VsZCBoYXZlIGZhaWxlZCBhbnl3YXkuCgpTaWduZWQtb2Zm LWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIHwgNDMgKysrKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDIwIGluc2VydGlv bnMoKyksIDIzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKaW5k ZXggZmE3MDg1NTk1NDJjLi5iMjAyOGQ1OTI0ODMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fYXRvbWljX2hlbHBlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hl bHBlci5jCkBAIC05MiwxNCArOTIsMjEgQEAgY2hlY2tfcGVuZGluZ19lbmNvZGVyX2Fzc2lnbm1l bnQoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkJCSBpbnQgY29ubl9pZHgpCiB7 CiAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcjsKLQlzdHJ1Y3QgZHJtX2Nvbm5lY3Rv cl9zdGF0ZSAqY29ubl9zdGF0ZTsKLQlpbnQgaTsKIAotCWZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9z dGF0ZShzdGF0ZSwgY29ubmVjdG9yLCBjb25uX3N0YXRlLCBpKSB7Ci0JCWlmIChpID49IGNvbm5f aWR4KQotCQkJYnJlYWs7CisJZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcihjb25uZWN0b3IsIHN0YXRl LT5kZXYpIHsKKwkJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUgPQorCQkJ ZHJtX2F0b21pY19nZXRfZXhpc3RpbmdfY29ubmVjdG9yX3N0YXRlKHN0YXRlLAorCQkJCQkJCQlj b25uZWN0b3IpOwogCi0JCWlmIChjb25uX3N0YXRlLT5iZXN0X2VuY29kZXIgPT0gbmV3X2VuY29k ZXIpCisJCWlmICghY29ubl9zdGF0ZSkgeworCQkJaWYgKGNvbm5lY3Rvci0+c3RhdGUtPmJlc3Rf ZW5jb2RlciA9PSBuZXdfZW5jb2RlcikKKwkJCQlyZXR1cm4gZmFsc2U7CisKKwkJCWNvbnRpbnVl OworCQl9CisKKwkJaWYgKGRybV9jb25uZWN0b3JfaW5kZXgoY29ubmVjdG9yKSA8IGNvbm5faWR4 ICYmCisJCSAgICBjb25uX3N0YXRlLT5iZXN0X2VuY29kZXIgPT0gbmV3X2VuY29kZXIpCiAJCQly ZXR1cm4gZmFsc2U7CiAJfQogCkBAIC0xNDksMjkgKzE1NiwxOSBAQCBzZXRfYmVzdF9lbmNvZGVy KHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKIAogc3RhdGljIGludAogc3RlYWxfZW5j b2RlcihzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCi0JICAgICAgc3RydWN0IGRybV9l bmNvZGVyICplbmNvZGVyKQorCSAgICAgIHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKKwkg ICAgICBpbnQgY29ubl9pZHgpCiB7Ci0Jc3RydWN0IGRybV9tb2RlX2NvbmZpZyAqY29uZmlnID0g JnN0YXRlLT5kZXYtPm1vZGVfY29uZmlnOwogCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZTsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwogCXN0cnVjdCBkcm1fY29u bmVjdG9yX3N0YXRlICpjb25uZWN0b3Jfc3RhdGU7CisJaW50IGk7CiAKLQkvKgotCSAqIFdlIGNh biBvbmx5IHN0ZWFsIGFuIGVuY29kZXIgY29taW5nIGZyb20gYSBjb25uZWN0b3IsIHdoaWNoIG1l YW5zIHdlCi0JICogbXVzdCBhbHJlYWR5IGhvbGQgdGhlIGNvbm5lY3Rpb25fbXV0ZXguCi0JICov Ci0JV0FSTl9PTighZHJtX21vZGVzZXRfaXNfbG9ja2VkKCZjb25maWctPmNvbm5lY3Rpb25fbXV0 ZXgpKTsKLQotCWxpc3RfZm9yX2VhY2hfZW50cnkoY29ubmVjdG9yLCAmY29uZmlnLT5jb25uZWN0 b3JfbGlzdCwgaGVhZCkgeworCWZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9zdGF0ZShzdGF0ZSwgY29u bmVjdG9yLCBjb25uZWN0b3Jfc3RhdGUsIGkpIHsKIAkJc3RydWN0IGRybV9jcnRjICplbmNvZGVy X2NydGM7CiAKLQkJaWYgKGNvbm5lY3Rvci0+c3RhdGUtPmJlc3RfZW5jb2RlciAhPSBlbmNvZGVy KQotCQkJY29udGludWU7Ci0KLQkJY29ubmVjdG9yX3N0YXRlID0gZHJtX2F0b21pY19nZXRfY29u bmVjdG9yX3N0YXRlKHN0YXRlLAotCQkJCQkJCQkgY29ubmVjdG9yKTsKLQkJaWYgKElTX0VSUihj b25uZWN0b3Jfc3RhdGUpKQotCQkJcmV0dXJuIFBUUl9FUlIoY29ubmVjdG9yX3N0YXRlKTsKKwkJ aWYgKGkgPj0gY29ubl9pZHgpCisJCQlicmVhazsKIAogCQlpZiAoY29ubmVjdG9yX3N0YXRlLT5i ZXN0X2VuY29kZXIgIT0gZW5jb2RlciB8fAogCQkgICAgV0FSTl9PTighY29ubmVjdG9yX3N0YXRl LT5jcnRjKSkKQEAgLTI3OSw3ICsyNzYsNyBAQCB1cGRhdGVfY29ubmVjdG9yX3JvdXRpbmcoc3Ry dWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQlyZXR1cm4gLUVJTlZBTDsKIAl9CiAKLQly ZXQgPSBzdGVhbF9lbmNvZGVyKHN0YXRlLCBuZXdfZW5jb2Rlcik7CisJcmV0ID0gc3RlYWxfZW5j b2RlcihzdGF0ZSwgbmV3X2VuY29kZXIsIGNvbm5faWR4KTsKIAlpZiAocmV0KSB7CiAJCURSTV9E RUJVR19BVE9NSUMoIkVuY29kZXIgc3RlYWxpbmcgZmFpbGVkIGZvciBbQ09OTkVDVE9SOiVkOiVz XVxuIiwKIAkJCQkgY29ubmVjdG9yLT5iYXNlLmlkLAotLSAKMi4xLjAKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QK ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=