From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sharat Masetty Subject: [PATCH 13/13] drm/msm: Implement better timeout detection Date: Mon, 1 Oct 2018 18:01:45 +0530 Message-ID: <1538397105-19581-14-git-send-email-smasetty@codeaurora.org> References: <1538397105-19581-1-git-send-email-smasetty@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1538397105-19581-1-git-send-email-smasetty-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: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, Sharat Masetty , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org VGhlIGJhc2Ugc2NoZWR1bGVyIHBhdGNoIGhhcyBiYXJlYm9uZXMgdGltZW91dCBpbXBsZW1lbnRh dGlvbiwgaXQgZG9lcwpub3QgYWNjb3VudCBmb3IgaXNzdWVzIGxpa2Ugc3RhcnZhdGlvbiBvbiBs b3dlciBwcmlvcml0eSByaW5ncy4gVGhpcwpwYXRjaCBlbmFibGVzIG1vcmUgYWNjdXJhdGUgbWVh c3VyZW1lbnQgb24gdGltZSBzcGVudCBvbiBlYWNoCnJpbmdidWZmZXIsIHRoZXJlYnkgaGVscGlu ZyB1cyB3aXRoIGJldHRlciB0aW1lb3V0IGRldGVjdGlvbiBtZWNoYW5pc20uCgpTaWduZWQtb2Zm LWJ5OiBTaGFyYXQgTWFzZXR0eSA8c21hc2V0dHlAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9wcmVlbXB0LmMgfCAyOSArKysrKysrKysrKysrKysr KysrKysKIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUuYyAgIHwgIDMgKysr CiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmggICAgICB8ICAyICsrCiBkcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9zY2hlZC5jICAgICAgICAgICB8IDQyICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgNzYgaW5zZXJ0aW9ucygrKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfcHJlZW1wdC5jIGIvZHJp dmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9wcmVlbXB0LmMKaW5kZXggNmEzYzU2MC4uOGJm ODFjMWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfcHJlZW1w dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfcHJlZW1wdC5jCkBAIC0x NjUsNiArMTY1LDMzIEBAIHZvaWQgYTV4eF9wcmVlbXB0X3RyaWdnZXIoc3RydWN0IG1zbV9ncHUg KmdwdSkKIAlncHVfd3JpdGUoZ3B1LCBSRUdfQTVYWF9DUF9DT05URVhUX1NXSVRDSF9DTlRMLCAx KTsKIH0KIAorc3RhdGljIHZvaWQgdXBkYXRlX3JpbmdfdGltZXN0YW1wcyhzdHJ1Y3QgbXNtX3Jp bmdidWZmZXIgKnByZXZfcmluZywKKwkJc3RydWN0IG1zbV9yaW5nYnVmZmVyICpjdXJfcmluZykK K3sKKwl1bnNpZ25lZCBsb25nIGZsYWdzOworCisJLyoKKwkgKiBGb3IgdGhlIG91dGdvaW5nIHJp bmcocHJldl9yaW5nKSwgY2FwdHVyZSB0aGUgbGFzdCBzYW1wbGUgb2YgdGltZQorCSAqIHNwZW50 IG9uIHRoaXMgcmluZyBhbmQgYWRkIGl0IHRvIHRoZSByaW5nJ3MgdG90YWwgYWN0aXZlX3RpbWUu CisJICovCisJc3Bpbl9sb2NrX2lycXNhdmUoJnByZXZfcmluZy0+bG9jaywgZmxhZ3MpOworCisJ cHJldl9yaW5nLT5hY3RpdmVfdGltZSArPSBqaWZmaWVzX2RlbHRhX3RvX21zZWNzKGppZmZpZXMg LQorCQkJcHJldl9yaW5nLT5sYXN0X3RzKTsKKworCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnBy ZXZfcmluZy0+bG9jaywgZmxhZ3MpOworCisJLyoKKwkgKiBGb3IgdGhlIGluY29taW5nIHJpbmco Y3VyX3JpbmcpLCBzYXZlIHRoZSBuZXcgY3VycmVudCB0aW1lc3RhbXAgdG8KKwkgKiByZXN0YXJ0 IGFjdGl2ZSB0aW1lIG1lYXN1cmVtZW50CisJICovCisJc3Bpbl9sb2NrX2lycXNhdmUoJmN1cl9y aW5nLT5sb2NrLCBmbGFncyk7CisKKwljdXJfcmluZy0+bGFzdF90cyA9IGppZmZpZXNfdG9fbXNl Y3MoamlmZmllcyk7CisKKwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZjdXJfcmluZy0+bG9jaywg ZmxhZ3MpOworfQorCiB2b2lkIGE1eHhfcHJlZW1wdF9pcnEoc3RydWN0IG1zbV9ncHUgKmdwdSkK IHsKIAl1aW50MzJfdCBzdGF0dXM7CkBAIC0xOTQsNiArMjIxLDggQEAgdm9pZCBhNXh4X3ByZWVt cHRfaXJxKHN0cnVjdCBtc21fZ3B1ICpncHUpCiAJCXJldHVybjsKIAl9CiAKKwl1cGRhdGVfcmlu Z190aW1lc3RhbXBzKGE1eHhfZ3B1LT5jdXJfcmluZywgYTV4eF9ncHUtPm5leHRfcmluZyk7CisK IAlhNXh4X2dwdS0+Y3VyX3JpbmcgPSBhNXh4X2dwdS0+bmV4dF9yaW5nOwogCWE1eHhfZ3B1LT5u ZXh0X3JpbmcgPSBOVUxMOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVu by9hZHJlbm9fZ3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMK aW5kZXggMTdkMDUwNi4uZjhiNWY0YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYWRyZW5vX2dwdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVu b19ncHUuYwpAQCAtMjEyLDYgKzIxMiw5IEBAIGludCBhZHJlbm9faHdfaW5pdChzdHJ1Y3QgbXNt X2dwdSAqZ3B1KQogCQkvKiByZXNldCBjb21wbGV0ZWQgZmVuY2Ugc2Vxbm86ICovCiAJCXJpbmct Pm1lbXB0cnMtPmZlbmNlID0gcmluZy0+c2Vxbm87CiAJCXJpbmctPm1lbXB0cnMtPnJwdHIgPSAw OworCisJCXJpbmctPmxhc3RfdHMgPSAwOworCQlyaW5nLT5hY3RpdmVfdGltZSA9IDA7CiAJfQog CiAJLyoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX3JpbmdidWZmZXIuaCBi L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX3JpbmdidWZmZXIuaAppbmRleCAxMGFlNGE4Li4yN2Uw YWIyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmgKKysr IGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fcmluZ2J1ZmZlci5oCkBAIC00Niw2ICs0Niw4IEBA IHN0cnVjdCBtc21fcmluZ2J1ZmZlciB7CiAJc3RydWN0IG11dGV4IGZlbmNlX2lkcl9sb2NrOwog CXNwaW5sb2NrX3QgbG9jazsKIAlzdHJ1Y3QgZHJtX2dwdV9zY2hlZHVsZXIgc2NoZWQ7CisJdTMy IGxhc3RfdHM7CisJdTMyIGFjdGl2ZV90aW1lOwogfTsKIAogc3RydWN0IG1zbV9yaW5nYnVmZmVy ICptc21fcmluZ2J1ZmZlcl9uZXcoc3RydWN0IG1zbV9ncHUgKmdwdSwgaW50IGlkLApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fc2NoZWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9t c20vbXNtX3NjaGVkLmMKaW5kZXggOGI4MDVjZS4uNzBiNzcxMyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL21zbS9tc21fc2NoZWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9z Y2hlZC5jCkBAIC0xOTEsNiArMTkxLDkgQEAgc3RhdGljIHZvaWQgbXNtX3NjaGVkX3RpbWVkb3V0 X2pvYihzdHJ1Y3QgZHJtX3NjaGVkX2pvYiAqYmFkX2pvYikKIAlzdHJ1Y3QgbXNtX2dlbV9zdWJt aXQgKnN1Ym1pdCA9IHRvX21zbV9nZW1fc3VibWl0KGJhZF9qb2IpOwogCXN0cnVjdCBtc21fZ3B1 ICpncHUgPSBzdWJtaXQtPmdwdTsKIAlzdHJ1Y3QgbXNtX3JpbmdidWZmZXIgKnJpbmcgPSBzdWJt aXQtPnJpbmc7CisJc3RydWN0IGRybV9ncHVfc2NoZWR1bGVyICpzY2hlZCA9ICZyaW5nLT5zY2hl ZDsKKwl1bnNpZ25lZCBsb25nIGZsYWdzOworCXUzMiB0b3RhbF90aW1lID0gMDsKIAogCS8qCiAJ ICogSWYgdGhpcyBzdWJtaXNzaW9uIGNvbXBsZXRlZCBpbiB0aGUgbWVhbiB0aW1lLCB0aGVuIHRo ZSB0aW1lb3V0IGlzCkBAIC0xOTksNiArMjAyLDIzIEBAIHN0YXRpYyB2b2lkIG1zbV9zY2hlZF90 aW1lZG91dF9qb2Ioc3RydWN0IGRybV9zY2hlZF9qb2IgKmJhZF9qb2IpCiAJaWYgKHN1Ym1pdC0+ c2Vxbm8gPD0gc3VibWl0LT5yaW5nLT5tZW1wdHJzLT5mZW5jZSkKIAkJcmV0dXJuOwogCisJc3Bp bl9sb2NrX2lycXNhdmUoJnJpbmctPmxvY2ssIGZsYWdzKTsKKworCXRvdGFsX3RpbWUgPSByaW5n LT5hY3RpdmVfdGltZTsKKworCS8qIE1lYXN1cmUgdGhlIGxhc3Qgc2FtcGxlIG9ubHkgaWYgdGhp cyBpcyB0aGUgYWN0aXZlIHJpbmcgKi8KKwlpZiAocmluZyA9PSBncHUtPmZ1bmNzLT5hY3RpdmVf cmluZyhncHUpKQorCQl0b3RhbF90aW1lICs9IGppZmZpZXNfZGVsdGFfdG9fbXNlY3MoamlmZmll cyAtIHJpbmctPmxhc3RfdHMpOworCisJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmcmluZy0+bG9j aywgZmxhZ3MpOworCisJaWYgKHRvdGFsX3RpbWUgPCBzY2hlZC0+dGltZW91dCkgeworCQlzY2hl ZHVsZV9kZWxheWVkX3dvcmsoJmJhZF9qb2ItPndvcmtfdGRyLAorCQkJCW1zZWNzX3RvX2ppZmZp ZXMoc2NoZWQtPnRpbWVvdXQgLSB0b3RhbF90aW1lKSk7CisJCXJldHVybjsKKwl9CisKKwkvKiBU aW1lb3V0IG9jY3VycmVkLCBnbyBmb3IgYSByZWNvdmVyeSAqLwogCWRldl9lcnIoJmdwdS0+cGRl di0+ZGV2LCAiJXM6IGhhbmdjaGVjayBkZXRlY3RlZCBncHUgbG9ja3VwIHJiICVkIVxuIiwKIAkJ CWdwdS0+bmFtZSwgcmluZy0+aWQpOwogCWRldl9lcnIoJmdwdS0+cGRldi0+ZGV2LCAiJXM6ICAg ICBjb21wbGV0ZWQgZmVuY2U6ICV1XG4iLApAQCAtMjMxLDExICsyNTEsMzMgQEAgc3RhdGljIHZv aWQgbXNtX3NjaGVkX2ZyZWVfam9iKHN0cnVjdCBkcm1fc2NoZWRfam9iICpzY2hlZF9qb2IpCiAJ bXNtX2dlbV9zdWJtaXRfZnJlZShzdWJtaXQpOwogfQogCitzdGF0aWMgdm9pZCBtc21fc2NoZWRf dGltZW91dF9zdGFydChzdHJ1Y3QgZHJtX3NjaGVkX2pvYiAqc2NoZWRfam9iKQoreworCXN0cnVj dCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0ID0gdG9fbXNtX2dlbV9zdWJtaXQoc2NoZWRfam9iKTsK KwlzdHJ1Y3QgbXNtX2dwdSAqZ3B1ID0gc3VibWl0LT5ncHU7CisJc3RydWN0IG1zbV9yaW5nYnVm ZmVyICpyaW5nID0gc3VibWl0LT5yaW5nOworCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisKKwlzcGlu X2xvY2tfaXJxc2F2ZSgmcmluZy0+bG9jaywgZmxhZ3MpOworCisJcmluZy0+YWN0aXZlX3RpbWUg PSAwOworCisJLyoKKwkgKiBTYXZlIHRoZSBpbml0aWFsIHRpbWVzdGFtcCBvbmx5IGlmIHRoaXMg cmluZyBpcyBhY3RpdmUuIEZvciBvdGhlcgorCSAqIHJpbmdzIHRoZSBpbml0aWFsIHRpbWVzdGFt cCBpcyBjYXB0dXJlZCBhdCBwcmVlbXB0aW9uIHN3aXRjaC1pbgorCSAqLworCWlmIChyaW5nID09 IGdwdS0+ZnVuY3MtPmFjdGl2ZV9yaW5nKGdwdSkpCisJCXJpbmctPmxhc3RfdHMgPSBqaWZmaWVz X3RvX21zZWNzKGppZmZpZXMpOworCisJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmcmluZy0+bG9j aywgZmxhZ3MpOworfQorCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9zY2hlZF9iYWNrZW5kX29w cyBtc21fc2NoZWRfb3BzID0gewogCS5kZXBlbmRlbmN5ID0gbXNtX3NjaGVkX2RlcGVuZGVuY3ks CiAJLnJ1bl9qb2IgPSBtc21fc2NoZWRfcnVuX2pvYiwKIAkudGltZWRvdXRfam9iID0gbXNtX3Nj aGVkX3RpbWVkb3V0X2pvYiwKIAkuZnJlZV9qb2IgPSBtc21fc2NoZWRfZnJlZV9qb2IsCisJLnRp bWVvdXRfc3RhcnRfbm90aWZ5ID0gbXNtX3NjaGVkX3RpbWVvdXRfc3RhcnQsCiB9OwogCiBpbnQg bXNtX3NjaGVkX2pvYl9pbml0KHN0cnVjdCBkcm1fc2NoZWRfam9iICpzY2hlZF9qb2IpCi0tIAox LjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRnJl ZWRyZW5vIG1haWxpbmcgbGlzdApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5vCg==