From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeykumar Sankaran Subject: [PATCH v3] drm/msm: validate display and event threads Date: Mon, 8 Oct 2018 16:55:45 -0700 Message-ID: <1539042945-28811-1-git-send-email-jsanka@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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, freedreno@lists.freedesktop.org, linux-arm-msm@vger.kernel.org Cc: abhinavk@codeaurora.org, hoegsberg@google.com, seanpaul@chromium.org List-Id: linux-arm-msm@vger.kernel.org V2hpbGUgY3JlYXRpbmcgZGlzcGxheSBhbmQgZXZlbnQgdGhyZWFkcyBwZXIgY3J0YywgdmFsaWRh dGUKdGhlbSBiZWZvcmUgc2V0dGluZyB0aGVpciBwcmlvcml0aWVzLgoKY2hhbmdlcyBpbiB2MjoK CS0gdXNlIGRldl93YXJuIChBYmhpbmF2IEt1bWFyKQpjaGFuZ2VzIGluIHYzOgoJLSBmaXggY29t cGlsYXRpb24gZXJyb3IKCkNoYW5nZS1JZDogSTFkZGE4MDUyODZkZjk4MWMwZjBlMmIyNjUwN2Qw ODlkM2EyMWZmNmMKU2lnbmVkLW9mZi1ieTogSmV5a3VtYXIgU2Fua2FyYW4gPGpzYW5rYUBjb2Rl YXVyb3JhLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYyB8IDQ5ICsrKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAx NiBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vbXNtL21zbV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCmluZGV4 IDQ5MDRkMGQuLmFiMWIwYTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Ry di5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCkBAIC01NTMsMTcgKzU1Mywx OCBAQCBzdGF0aWMgaW50IG1zbV9kcm1faW5pdChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBk cm1fZHJpdmVyICpkcnYpCiAJCQlrdGhyZWFkX3J1bihrdGhyZWFkX3dvcmtlcl9mbiwKIAkJCQkm cHJpdi0+ZGlzcF90aHJlYWRbaV0ud29ya2VyLAogCQkJCSJjcnRjX2NvbW1pdDolZCIsIHByaXYt PmRpc3BfdGhyZWFkW2ldLmNydGNfaWQpOwotCQlyZXQgPSBzY2hlZF9zZXRzY2hlZHVsZXIocHJp di0+ZGlzcF90aHJlYWRbaV0udGhyZWFkLAotCQkJCQkJCVNDSEVEX0ZJRk8sICZwYXJhbSk7Ci0J CWlmIChyZXQpCi0JCQlwcl93YXJuKCJkaXNwbGF5IHRocmVhZCBwcmlvcml0eSB1cGRhdGUgZmFp bGVkOiAlZFxuIiwKLQkJCQkJCQkJCXJldCk7Ci0KIAkJaWYgKElTX0VSUihwcml2LT5kaXNwX3Ro cmVhZFtpXS50aHJlYWQpKSB7CiAJCQlkZXZfZXJyKGRldiwgImZhaWxlZCB0byBjcmVhdGUgY3J0 Y19jb21taXQga3RocmVhZFxuIik7CiAJCQlwcml2LT5kaXNwX3RocmVhZFtpXS50aHJlYWQgPSBO VUxMOworCQkJZ290byBlcnJfbXNtX3VuaW5pdDsKIAkJfQogCisJCXJldCA9IHNjaGVkX3NldHNj aGVkdWxlcihwcml2LT5kaXNwX3RocmVhZFtpXS50aHJlYWQsCisJCQkJCSBTQ0hFRF9GSUZPLCAm cGFyYW0pOworCQlpZiAocmV0KQorCQkJZGV2X3dhcm4oZGV2LCAiZGlzcGxheSB0aHJlYWQgcHJp b3JpdHkgdXBkYXRlIGZhaWxlZDogJWRcbiIsCisJCQkJcmV0KTsKKwogCQkvKiBpbml0aWFsaXpl IGV2ZW50IHRocmVhZCAqLwogCQlwcml2LT5ldmVudF90aHJlYWRbaV0uY3J0Y19pZCA9IHByaXYt PmNydGNzW2ldLT5iYXNlLmlkOwogCQlrdGhyZWFkX2luaXRfd29ya2VyKCZwcml2LT5ldmVudF90 aHJlYWRbaV0ud29ya2VyKTsKQEAgLTU3Miw2ICs1NzMsMTIgQEAgc3RhdGljIGludCBtc21fZHJt X2luaXQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2RyaXZlciAqZHJ2KQogCQkJa3Ro cmVhZF9ydW4oa3RocmVhZF93b3JrZXJfZm4sCiAJCQkJJnByaXYtPmV2ZW50X3RocmVhZFtpXS53 b3JrZXIsCiAJCQkJImNydGNfZXZlbnQ6JWQiLCBwcml2LT5ldmVudF90aHJlYWRbaV0uY3J0Y19p ZCk7CisJCWlmIChJU19FUlIocHJpdi0+ZXZlbnRfdGhyZWFkW2ldLnRocmVhZCkpIHsKKwkJCWRl dl9lcnIoZGV2LCAiZmFpbGVkIHRvIGNyZWF0ZSBjcnRjX2V2ZW50IGt0aHJlYWRcbiIpOworCQkJ cHJpdi0+ZXZlbnRfdGhyZWFkW2ldLnRocmVhZCA9IE5VTEw7CisJCQlnb3RvIGVycl9tc21fdW5p bml0OworCQl9CisKIAkJLyoqCiAJCSAqIGV2ZW50IHRocmVhZCBzaG91bGQgYWxzbyBydW4gYXQg c2FtZSBwcmlvcml0eSBhcyBkaXNwX3RocmVhZAogCQkgKiBiZWNhdXNlIGl0IGlzIGhhbmRsaW5n IGZyYW1lX2RvbmUgZXZlbnRzLiBBIGxvd2VyIHByaW9yaXR5CkBAIC01ODAsMzQgKzU4NywxMCBA QCBzdGF0aWMgaW50IG1zbV9kcm1faW5pdChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f ZHJpdmVyICpkcnYpCiAJCSAqIGZhaWx1cmUgYXQgY3J0YyBjb21taXQgbGV2ZWwuCiAJCSAqLwog CQlyZXQgPSBzY2hlZF9zZXRzY2hlZHVsZXIocHJpdi0+ZXZlbnRfdGhyZWFkW2ldLnRocmVhZCwK LQkJCQkJCQlTQ0hFRF9GSUZPLCAmcGFyYW0pOworCQkJCQkgU0NIRURfRklGTywgJnBhcmFtKTsK IAkJaWYgKHJldCkKLQkJCXByX3dhcm4oImRpc3BsYXkgZXZlbnQgdGhyZWFkIHByaW9yaXR5IHVw ZGF0ZSBmYWlsZWQ6ICVkXG4iLAotCQkJCQkJCQkJcmV0KTsKLQotCQlpZiAoSVNfRVJSKHByaXYt PmV2ZW50X3RocmVhZFtpXS50aHJlYWQpKSB7Ci0JCQlkZXZfZXJyKGRldiwgImZhaWxlZCB0byBj cmVhdGUgY3J0Y19ldmVudCBrdGhyZWFkXG4iKTsKLQkJCXByaXYtPmV2ZW50X3RocmVhZFtpXS50 aHJlYWQgPSBOVUxMOwotCQl9Ci0KLQkJaWYgKCghcHJpdi0+ZGlzcF90aHJlYWRbaV0udGhyZWFk KSB8fAotCQkJCSFwcml2LT5ldmVudF90aHJlYWRbaV0udGhyZWFkKSB7Ci0JCQkvKiBjbGVhbiB1 cCBwcmV2aW91c2x5IGNyZWF0ZWQgdGhyZWFkcyBpZiBhbnkgKi8KLQkJCWZvciAoIDsgaSA+PSAw OyBpLS0pIHsKLQkJCQlpZiAocHJpdi0+ZGlzcF90aHJlYWRbaV0udGhyZWFkKSB7Ci0JCQkJCWt0 aHJlYWRfc3RvcCgKLQkJCQkJCXByaXYtPmRpc3BfdGhyZWFkW2ldLnRocmVhZCk7Ci0JCQkJCXBy aXYtPmRpc3BfdGhyZWFkW2ldLnRocmVhZCA9IE5VTEw7Ci0JCQkJfQotCi0JCQkJaWYgKHByaXYt PmV2ZW50X3RocmVhZFtpXS50aHJlYWQpIHsKLQkJCQkJa3RocmVhZF9zdG9wKAotCQkJCQkJcHJp di0+ZXZlbnRfdGhyZWFkW2ldLnRocmVhZCk7Ci0JCQkJCXByaXYtPmV2ZW50X3RocmVhZFtpXS50 aHJlYWQgPSBOVUxMOwotCQkJCX0KLQkJCX0KLQkJCWdvdG8gZXJyX21zbV91bmluaXQ7Ci0JCX0K KwkJCWRldl93YXJuKGRldiwgImRpc3BsYXkgZXZlbnQgdGhyZWFkIHByaW9yaXR5IHVwZGF0ZSBm YWlsZWQ6JWRcbiIsCisJCQkJcmV0KTsKIAl9CiAKIAlyZXQgPSBkcm1fdmJsYW5rX2luaXQoZGRl diwgcHJpdi0+bnVtX2NydGNzKTsKLS0gClRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwg SW5jLiBpcyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCmEgTGludXggRm91bmRh dGlvbiBDb2xsYWJvcmF0aXZlIFByb2plY3QKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbAo=