From mboxrd@z Thu Jan 1 00:00:00 1970 From: j.glisse@gmail.com Subject: [PATCH 20/27] drm/radeon: rework recursive gpu reset handling Date: Tue, 1 May 2012 13:19:30 -0400 Message-ID: <1335892777-7357-21-git-send-email-j.glisse@gmail.com> References: <ยท> <1335892777-7357-1-git-send-email-j.glisse@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qa0-f42.google.com (mail-qa0-f42.google.com [209.85.216.42]) by gabe.freedesktop.org (Postfix) with ESMTP id 32F699EF72 for ; Tue, 1 May 2012 10:20:25 -0700 (PDT) Received: by mail-qa0-f42.google.com with SMTP id i31so1592646qaf.15 for ; Tue, 01 May 2012 10:20:25 -0700 (PDT) In-Reply-To: <1335892777-7357-1-git-send-email-j.glisse@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org Cc: =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8ZGVhdGhzaW1wbGVAdm9kYWZvbmUuZGU+CgpJbnN0ZWFk IG9mIGFsbCB0aGlzIGh1bXB5IHB1bXB5IHdpdGggcmVjdXJzaXZlCm11dGV4ICh3aGljaCBhbHNv IGZpeGVzIG9ubHkgaGFsdmUgb2YgdGhlIHByb2JsZW0pCm1vdmUgdGhlIGFjdHVhbCBncHUgcmVz ZXQgb3V0IG9mIHRoZSBmZW5jZSBjb2RlLApyZXR1cm4gLUVERUFETEsgYW5kIHRoZW4gcmVzZXQg dGhlIGdwdSBpbiB0aGUKY2FsbGluZyBpb2N0bCBmdW5jdGlvbi4KCnYyOiBTcGxpdCByZW1vdmFs IG9mIHJhZGVvbl9tdXRleCBpbnRvIHNlcGFyYXRlIHBhdGNoLgogICAgUmV0dXJuIC1FQUdBSU4g aWYgcmVzZXQgaXMgc3VjY2Vzc2Z1bC4KClNpZ25lZC1vZmYtYnk6IENocmlzdGlhbiBLw7ZuaWcg PGRlYXRoc2ltcGxlQHZvZGFmb25lLmRlPgpSZXZpZXdlZC1ieTogSmVyb21lIEdsaXNzZSA8amds aXNzZUByZWRoYXQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2NzLmMg ICAgIHwgICAxMyArKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9k ZXZpY2UuYyB8ICAgIDUgLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2ZlbmNl LmMgIHwgICAxMCArKystLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9nZW0u YyAgICB8ICAgMTYgKysrKysrKysrKysrKysrKwogNCBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRp b25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL3JhZGVvbl9jcy5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY3MuYwppbmRl eCA2NGI4NmU3Li5hMDgyNmJiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbl9jcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2NzLmMKQEAgLTQ4 OSw2ICs0ODksMTYgQEAgb3V0OgogCXJldHVybiByOwogfQogCitzdGF0aWMgaW50IHJhZGVvbl9j c19oYW5kbGVfbG9ja3VwKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LCBpbnQgcikKK3sKKwlp ZiAociA9PSAtRURFQURMSykgeworCQlyID0gcmFkZW9uX2dwdV9yZXNldChyZGV2KTsKKwkJaWYg KCFyKQorCQkJciA9IC1FQUdBSU47CisJfQorCXJldHVybiByOworfQorCiBpbnQgcmFkZW9uX2Nz X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmls ZSAqZmlscCkKIHsKIAlzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGRldi0+ZGV2X3ByaXZh dGU7CkBAIC01MTAsNiArNTIwLDcgQEAgaW50IHJhZGVvbl9jc19pb2N0bChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHApCiAJaWYgKHIpIHsK IAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBwYXJzZXIgIVxuIik7CiAJCXJhZGVv bl9jc19wYXJzZXJfZmluaSgmcGFyc2VyLCByKTsKKwkJciA9IHJhZGVvbl9jc19oYW5kbGVfbG9j a3VwKHJkZXYsIHIpOwogCQlyYWRlb25fbXV0ZXhfdW5sb2NrKCZyZGV2LT5jc19tdXRleCk7CiAJ CXJldHVybiByOwogCX0KQEAgLTUxOCw2ICs1MjksNyBAQCBpbnQgcmFkZW9uX2NzX2lvY3RsKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlscCkK IAkJaWYgKHIgIT0gLUVSRVNUQVJUU1lTKQogCQkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gcGFyc2Ug cmVsb2NhdGlvbiAlZCFcbiIsIHIpOwogCQlyYWRlb25fY3NfcGFyc2VyX2ZpbmkoJnBhcnNlciwg cik7CisJCXIgPSByYWRlb25fY3NfaGFuZGxlX2xvY2t1cChyZGV2LCByKTsKIAkJcmFkZW9uX211 dGV4X3VubG9jaygmcmRldi0+Y3NfbXV0ZXgpOwogCQlyZXR1cm4gcjsKIAl9CkBAIC01MzEsNiAr NTQzLDcgQEAgaW50IHJhZGVvbl9jc19pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lk ICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHApCiAJfQogb3V0OgogCXJhZGVvbl9jc19wYXJz ZXJfZmluaSgmcGFyc2VyLCByKTsKKwlyID0gcmFkZW9uX2NzX2hhbmRsZV9sb2NrdXAocmRldiwg cik7CiAJcmFkZW9uX211dGV4X3VubG9jaygmcmRldi0+Y3NfbXV0ZXgpOwogCXJldHVybiByOwog fQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZGV2aWNlLmMgYi9k cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kZXZpY2UuYwppbmRleCAyNmZiOWRhLi4xZGFj MjdkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kZXZpY2UuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kZXZpY2UuYwpAQCAtOTg0LDkgKzk4 NCw2IEBAIGludCByYWRlb25fZ3B1X3Jlc2V0KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQog CWludCByOwogCWludCByZXNjaGVkOwogCi0JLyogUHJldmVudCBDUyBpb2N0bCBmcm9tIGludGVy ZmVyaW5nICovCi0JcmFkZW9uX211dGV4X2xvY2soJnJkZXYtPmNzX211dGV4KTsKLQogCXJhZGVv bl9zYXZlX2Jpb3Nfc2NyYXRjaF9yZWdzKHJkZXYpOwogCS8qIGJsb2NrIFRUTSAqLwogCXJlc2No ZWQgPSB0dG1fYm9fbG9ja19kZWxheWVkX3dvcmtxdWV1ZSgmcmRldi0+bW1hbi5iZGV2KTsKQEAg LTEwMDEsOCArOTk4LDYgQEAgaW50IHJhZGVvbl9ncHVfcmVzZXQoc3RydWN0IHJhZGVvbl9kZXZp Y2UgKnJkZXYpCiAJCXR0bV9ib191bmxvY2tfZGVsYXllZF93b3JrcXVldWUoJnJkZXYtPm1tYW4u YmRldiwgcmVzY2hlZCk7CiAJfQogCi0JcmFkZW9uX211dGV4X3VubG9jaygmcmRldi0+Y3NfbXV0 ZXgpOwotCiAJaWYgKHIpIHsKIAkJLyogYmFkIG5ld3MsIGhvdyB0byB0ZWxsIGl0IHRvIHVzZXJz cGFjZSA/ICovCiAJCWRldl9pbmZvKHJkZXYtPmRldiwgIkdQVSByZXNldCBmYWlsZWRcbiIpOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZmVuY2UuYyBiL2RyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2ZlbmNlLmMKaW5kZXggMzI2YmRiNS4uMjRhNGQ0YiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZmVuY2UuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9mZW5jZS5jCkBAIC0yNjQsNiArMjY0LDggQEAg aW50IHJhZGVvbl9mZW5jZV93YWl0KHN0cnVjdCByYWRlb25fZmVuY2UgKmZlbmNlLCBib29sIGlu dHIpCiAJCQkvKiBjaGFuZ2Ugc2VxdWVuY2UgdmFsdWUgb24gYWxsIHJpbmdzLCBzbyBub2JvZHkg ZWxzZSB0aGluZ3MgdGhlcmUgaXMgYSBsb2NrdXAgKi8KIAkJCWZvciAoaSA9IDA7IGkgPCBSQURF T05fTlVNX1JJTkdTOyArK2kpCiAJCQkJcmRldi0+ZmVuY2VfZHJ2W2ldLmxhc3Rfc2VxIC09IDB4 MTAwMDA7CisKKwkJCXJkZXYtPmZlbmNlX2RydltmZW5jZS0+cmluZ10ubGFzdF9hY3Rpdml0eSA9 IGppZmZpZXM7CiAJCQl3cml0ZV91bmxvY2tfaXJxcmVzdG9yZSgmcmRldi0+ZmVuY2VfbG9jaywg aXJxX2ZsYWdzKTsKIAogCQkJaWYgKHJhZGVvbl9yaW5nX2lzX2xvY2t1cChyZGV2LCBmZW5jZS0+ cmluZywgJnJkZXYtPnJpbmdbZmVuY2UtPnJpbmddKSkgewpAQCAtMjc0LDEzICsyNzYsNyBAQCBp bnQgcmFkZW9uX2ZlbmNlX3dhaXQoc3RydWN0IHJhZGVvbl9mZW5jZSAqZmVuY2UsIGJvb2wgaW50 cikKIAogCQkJCS8qIG1hcmsgdGhlIHJpbmcgYXMgbm90IHJlYWR5IGFueSBtb3JlICovCiAJCQkJ cmRldi0+cmluZ1tmZW5jZS0+cmluZ10ucmVhZHkgPSBmYWxzZTsKLQkJCQlyID0gcmFkZW9uX2dw dV9yZXNldChyZGV2KTsKLQkJCQlpZiAocikKLQkJCQkJcmV0dXJuIHI7Ci0KLQkJCQl3cml0ZV9s b2NrX2lycXNhdmUoJnJkZXYtPmZlbmNlX2xvY2ssIGlycV9mbGFncyk7Ci0JCQkJcmRldi0+ZmVu Y2VfZHJ2W2ZlbmNlLT5yaW5nXS5sYXN0X2FjdGl2aXR5ID0gamlmZmllczsKLQkJCQl3cml0ZV91 bmxvY2tfaXJxcmVzdG9yZSgmcmRldi0+ZmVuY2VfbG9jaywgaXJxX2ZsYWdzKTsKKwkJCQlyZXR1 cm4gLUVERUFETEs7CiAJCQl9CiAJCX0KIAl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v cmFkZW9uL3JhZGVvbl9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2dlbS5j CmluZGV4IGM3MDA4YjUuLmUxNWNiMWYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRl b24vcmFkZW9uX2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2dlbS5j CkBAIC0xNTQsNiArMTU0LDE3IEBAIHZvaWQgcmFkZW9uX2dlbV9vYmplY3RfY2xvc2Uoc3RydWN0 IGRybV9nZW1fb2JqZWN0ICpvYmosCiAJcmFkZW9uX2JvX3VucmVzZXJ2ZShyYm8pOwogfQogCitz dGF0aWMgaW50IHJhZGVvbl9nZW1faGFuZGxlX2xvY2t1cChzdHJ1Y3QgcmFkZW9uX2RldmljZSAq cmRldiwgaW50IHIpCit7CisJaWYgKHIgPT0gLUVERUFETEspIHsKKwkJcmFkZW9uX211dGV4X2xv Y2soJnJkZXYtPmNzX211dGV4KTsKKwkJciA9IHJhZGVvbl9ncHVfcmVzZXQocmRldik7CisJCWlm ICghcikKKwkJCXIgPSAtRUFHQUlOOworCQlyYWRlb25fbXV0ZXhfdW5sb2NrKCZyZGV2LT5jc19t dXRleCk7CisJfQorCXJldHVybiByOworfQogCiAvKgogICogR0VNIGlvY3Rscy4KQEAgLTIxMCwx MiArMjIxLDE0IEBAIGludCByYWRlb25fZ2VtX2NyZWF0ZV9pb2N0bChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCB2b2lkICpkYXRhLAogCQkJCQlhcmdzLT5pbml0aWFsX2RvbWFpbiwgZmFsc2UsCiAJ CQkJCWZhbHNlLCAmZ29iaik7CiAJaWYgKHIpIHsKKwkJciA9IHJhZGVvbl9nZW1faGFuZGxlX2xv Y2t1cChyZGV2LCByKTsKIAkJcmV0dXJuIHI7CiAJfQogCXIgPSBkcm1fZ2VtX2hhbmRsZV9jcmVh dGUoZmlscCwgZ29iaiwgJmhhbmRsZSk7CiAJLyogZHJvcCByZWZlcmVuY2UgZnJvbSBhbGxvY2F0 ZSAtIGhhbmRsZSBob2xkcyBpdCBub3cgKi8KIAlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91 bmxvY2tlZChnb2JqKTsKIAlpZiAocikgeworCQlyID0gcmFkZW9uX2dlbV9oYW5kbGVfbG9ja3Vw KHJkZXYsIHIpOwogCQlyZXR1cm4gcjsKIAl9CiAJYXJncy0+aGFuZGxlID0gaGFuZGxlOwpAQCAt MjQ1LDYgKzI1OCw3IEBAIGludCByYWRlb25fZ2VtX3NldF9kb21haW5faW9jdGwoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAlyID0gcmFkZW9uX2dlbV9zZXRfZG9tYWluKGdv YmosIGFyZ3MtPnJlYWRfZG9tYWlucywgYXJncy0+d3JpdGVfZG9tYWluKTsKIAogCWRybV9nZW1f b2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKGdvYmopOworCXIgPSByYWRlb25fZ2VtX2hhbmRs ZV9sb2NrdXAocm9iai0+cmRldiwgcik7CiAJcmV0dXJuIHI7CiB9CiAKQEAgLTMwMSw2ICszMTUs NyBAQCBpbnQgcmFkZW9uX2dlbV9idXN5X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZv aWQgKmRhdGEsCiAJCWJyZWFrOwogCX0KIAlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxv Y2tlZChnb2JqKTsKKwlyID0gcmFkZW9uX2dlbV9oYW5kbGVfbG9ja3VwKHJvYmotPnJkZXYsIHIp OwogCXJldHVybiByOwogfQogCkBAIC0zMjIsNiArMzM3LDcgQEAgaW50IHJhZGVvbl9nZW1fd2Fp dF9pZGxlX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJaWYgKHJv YmotPnJkZXYtPmFzaWMtPmlvY3RsX3dhaXRfaWRsZSkKIAkJcm9iai0+cmRldi0+YXNpYy0+aW9j dGxfd2FpdF9pZGxlKHJvYmotPnJkZXYsIHJvYmopOwogCWRybV9nZW1fb2JqZWN0X3VucmVmZXJl bmNlX3VubG9ja2VkKGdvYmopOworCXIgPSByYWRlb25fZ2VtX2hhbmRsZV9sb2NrdXAocm9iai0+ cmRldiwgcik7CiAJcmV0dXJuIHI7CiB9CiAKLS0gCjEuNy43LjYKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==