From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH v4] drm/msm: validate display and event threads Date: Thu, 11 Oct 2018 11:17:13 -0400 Message-ID: <20181011151713.GC154175@art_vandelay> References: <1539205876-23732-1-git-send-email-jsanka@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1539205876-23732-1-git-send-email-jsanka-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Jeykumar Sankaran Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, abhinavk-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, hoegsberg-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, dan.carpenter-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org T24gV2VkLCBPY3QgMTAsIDIwMTggYXQgMDI6MTE6MTZQTSAtMDcwMCwgSmV5a3VtYXIgU2Fua2Fy YW4gd3JvdGU6Cj4gV2hpbGUgY3JlYXRpbmcgZGlzcGxheSBhbmQgZXZlbnQgdGhyZWFkcyBwZXIg Y3J0YywgdmFsaWRhdGUKPiB0aGVtIGJlZm9yZSBzZXR0aW5nIHRoZWlyIHByaW9yaXRpZXMuCj4g Cj4gY2hhbmdlcyBpbiB2MjoKPiAJLSB1c2UgZGV2X3dhcm4gKEFiaGluYXYgS3VtYXIpCj4gY2hh bmdlcyBpbiB2MzoKPiAJLSBmaXggY29tcGlsYXRpb24gZXJyb3IKPiBjaGFuZ2VzIGluIHY0Ogo+ IAktIFJlbW92ZSBDaGFuZ2UtSWQgKFNlYW4gUGF1bCkKPiAJLSBLZWVwIGxvZ2dpbmcgd2l0aGlu IDgwIGNoYXIgbGltaXQgKFNlYW4gUGF1bCkKPiAKPiBTaWduZWQtb2ZmLWJ5OiBKZXlrdW1hciBT YW5rYXJhbiA8anNhbmthQGNvZGVhdXJvcmEub3JnPgoKUmV2aWV3ZWQtYnk6IFNlYW4gUGF1bCA8 c2VhbnBhdWxAY2hyb21pdW0ub3JnPgoKSSdsbCBwdXNoIHRvIGRwdS1zdGFnaW5nCgpUaGFua3Mh CgpTZWFuCgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYyB8IDQ5ICsrKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgMSBmaWxlIGNoYW5nZWQs IDE2IGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5j Cj4gaW5kZXggNDkwNGQwZC4uZGNmZjgxMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v bXNtL21zbV9kcnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCj4gQEAg LTU1MywxNyArNTUzLDE4IEBAIHN0YXRpYyBpbnQgbXNtX2RybV9pbml0KHN0cnVjdCBkZXZpY2Ug KmRldiwgc3RydWN0IGRybV9kcml2ZXIgKmRydikKPiAgCQkJa3RocmVhZF9ydW4oa3RocmVhZF93 b3JrZXJfZm4sCj4gIAkJCQkmcHJpdi0+ZGlzcF90aHJlYWRbaV0ud29ya2VyLAo+ICAJCQkJImNy dGNfY29tbWl0OiVkIiwgcHJpdi0+ZGlzcF90aHJlYWRbaV0uY3J0Y19pZCk7Cj4gLQkJcmV0ID0g c2NoZWRfc2V0c2NoZWR1bGVyKHByaXYtPmRpc3BfdGhyZWFkW2ldLnRocmVhZCwKPiAtCQkJCQkJ CVNDSEVEX0ZJRk8sICZwYXJhbSk7Cj4gLQkJaWYgKHJldCkKPiAtCQkJcHJfd2FybigiZGlzcGxh eSB0aHJlYWQgcHJpb3JpdHkgdXBkYXRlIGZhaWxlZDogJWRcbiIsCj4gLQkJCQkJCQkJCXJldCk7 Cj4gLQo+ICAJCWlmIChJU19FUlIocHJpdi0+ZGlzcF90aHJlYWRbaV0udGhyZWFkKSkgewo+ICAJ CQlkZXZfZXJyKGRldiwgImZhaWxlZCB0byBjcmVhdGUgY3J0Y19jb21taXQga3RocmVhZFxuIik7 Cj4gIAkJCXByaXYtPmRpc3BfdGhyZWFkW2ldLnRocmVhZCA9IE5VTEw7Cj4gKwkJCWdvdG8gZXJy X21zbV91bmluaXQ7Cj4gIAkJfQo+ICAKPiArCQlyZXQgPSBzY2hlZF9zZXRzY2hlZHVsZXIocHJp di0+ZGlzcF90aHJlYWRbaV0udGhyZWFkLAo+ICsJCQkJCSBTQ0hFRF9GSUZPLCAmcGFyYW0pOwo+ ICsJCWlmIChyZXQpCj4gKwkJCWRldl93YXJuKGRldiwgImRpc3BfdGhyZWFkIHNldCBwcmlvcml0 eSBmYWlsZWQ6ICVkXG4iLAo+ICsJCQkJIHJldCk7Cj4gKwo+ICAJCS8qIGluaXRpYWxpemUgZXZl bnQgdGhyZWFkICovCj4gIAkJcHJpdi0+ZXZlbnRfdGhyZWFkW2ldLmNydGNfaWQgPSBwcml2LT5j cnRjc1tpXS0+YmFzZS5pZDsKPiAgCQlrdGhyZWFkX2luaXRfd29ya2VyKCZwcml2LT5ldmVudF90 aHJlYWRbaV0ud29ya2VyKTsKPiBAQCAtNTcyLDYgKzU3MywxMiBAQCBzdGF0aWMgaW50IG1zbV9k cm1faW5pdChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZHJpdmVyICpkcnYpCj4gIAkJ CWt0aHJlYWRfcnVuKGt0aHJlYWRfd29ya2VyX2ZuLAo+ICAJCQkJJnByaXYtPmV2ZW50X3RocmVh ZFtpXS53b3JrZXIsCj4gIAkJCQkiY3J0Y19ldmVudDolZCIsIHByaXYtPmV2ZW50X3RocmVhZFtp XS5jcnRjX2lkKTsKPiArCQlpZiAoSVNfRVJSKHByaXYtPmV2ZW50X3RocmVhZFtpXS50aHJlYWQp KSB7Cj4gKwkJCWRldl9lcnIoZGV2LCAiZmFpbGVkIHRvIGNyZWF0ZSBjcnRjX2V2ZW50IGt0aHJl YWRcbiIpOwo+ICsJCQlwcml2LT5ldmVudF90aHJlYWRbaV0udGhyZWFkID0gTlVMTDsKPiArCQkJ Z290byBlcnJfbXNtX3VuaW5pdDsKPiArCQl9Cj4gKwo+ICAJCS8qKgo+ICAJCSAqIGV2ZW50IHRo cmVhZCBzaG91bGQgYWxzbyBydW4gYXQgc2FtZSBwcmlvcml0eSBhcyBkaXNwX3RocmVhZAo+ICAJ CSAqIGJlY2F1c2UgaXQgaXMgaGFuZGxpbmcgZnJhbWVfZG9uZSBldmVudHMuIEEgbG93ZXIgcHJp b3JpdHkKPiBAQCAtNTgwLDM0ICs1ODcsMTAgQEAgc3RhdGljIGludCBtc21fZHJtX2luaXQoc3Ry dWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2RyaXZlciAqZHJ2KQo+ICAJCSAqIGZhaWx1cmUg YXQgY3J0YyBjb21taXQgbGV2ZWwuCj4gIAkJICovCj4gIAkJcmV0ID0gc2NoZWRfc2V0c2NoZWR1 bGVyKHByaXYtPmV2ZW50X3RocmVhZFtpXS50aHJlYWQsCj4gLQkJCQkJCQlTQ0hFRF9GSUZPLCAm cGFyYW0pOwo+ICsJCQkJCSBTQ0hFRF9GSUZPLCAmcGFyYW0pOwo+ICAJCWlmIChyZXQpCj4gLQkJ CXByX3dhcm4oImRpc3BsYXkgZXZlbnQgdGhyZWFkIHByaW9yaXR5IHVwZGF0ZSBmYWlsZWQ6ICVk XG4iLAo+IC0JCQkJCQkJCQlyZXQpOwo+IC0KPiAtCQlpZiAoSVNfRVJSKHByaXYtPmV2ZW50X3Ro cmVhZFtpXS50aHJlYWQpKSB7Cj4gLQkJCWRldl9lcnIoZGV2LCAiZmFpbGVkIHRvIGNyZWF0ZSBj cnRjX2V2ZW50IGt0aHJlYWRcbiIpOwo+IC0JCQlwcml2LT5ldmVudF90aHJlYWRbaV0udGhyZWFk ID0gTlVMTDsKPiAtCQl9Cj4gLQo+IC0JCWlmICgoIXByaXYtPmRpc3BfdGhyZWFkW2ldLnRocmVh ZCkgfHwKPiAtCQkJCSFwcml2LT5ldmVudF90aHJlYWRbaV0udGhyZWFkKSB7Cj4gLQkJCS8qIGNs ZWFuIHVwIHByZXZpb3VzbHkgY3JlYXRlZCB0aHJlYWRzIGlmIGFueSAqLwo+IC0JCQlmb3IgKCA7 IGkgPj0gMDsgaS0tKSB7Cj4gLQkJCQlpZiAocHJpdi0+ZGlzcF90aHJlYWRbaV0udGhyZWFkKSB7 Cj4gLQkJCQkJa3RocmVhZF9zdG9wKAo+IC0JCQkJCQlwcml2LT5kaXNwX3RocmVhZFtpXS50aHJl YWQpOwo+IC0JCQkJCXByaXYtPmRpc3BfdGhyZWFkW2ldLnRocmVhZCA9IE5VTEw7Cj4gLQkJCQl9 Cj4gLQo+IC0JCQkJaWYgKHByaXYtPmV2ZW50X3RocmVhZFtpXS50aHJlYWQpIHsKPiAtCQkJCQlr dGhyZWFkX3N0b3AoCj4gLQkJCQkJCXByaXYtPmV2ZW50X3RocmVhZFtpXS50aHJlYWQpOwo+IC0J CQkJCXByaXYtPmV2ZW50X3RocmVhZFtpXS50aHJlYWQgPSBOVUxMOwo+IC0JCQkJfQo+IC0JCQl9 Cj4gLQkJCWdvdG8gZXJyX21zbV91bmluaXQ7Cj4gLQkJfQo+ICsJCQlkZXZfd2FybihkZXYsICJl dmVudF90aHJlYWQgc2V0IHByaW9yaXR5IGZhaWxlZDolZFxuIiwKPiArCQkJCSByZXQpOwo+ICAJ fQo+ICAKPiAgCXJldCA9IGRybV92YmxhbmtfaW5pdChkZGV2LCBwcml2LT5udW1fY3J0Y3MpOwo+ IC0tIAo+IFRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwgSW5jLiBpcyBhIG1lbWJlciBv ZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCj4gYSBMaW51eCBGb3VuZGF0aW9uIENvbGxhYm9yYXRp dmUgUHJvamVjdAo+IAoKLS0gClNlYW4gUGF1bCwgU29mdHdhcmUgRW5naW5lZXIsIEdvb2dsZSAv IENocm9taXVtIE9TCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJlZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVu bwo=