From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [RFC PATCH 26/42] drm/i915: error capture with no ggtt slot Date: Thu, 14 Feb 2019 14:57:24 +0000 Message-ID: <20190214145740.14521-27-matthew.auld@intel.com> References: <20190214145740.14521-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id B01E86E924 for ; Thu, 14 Feb 2019 14:58:15 +0000 (UTC) In-Reply-To: <20190214145740.14521-1-matthew.auld@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVs LmNvbT4KCklmIHRoZSBhcGVydHVyZSBpcyBub3QgYXZhaWxhYmxlIGluIEhXIHdlIGNhbid0IHVz ZSBhIGdndHQgc2xvdCBhbmQgd2MKY29weSwgc28gZmFsIGJhY2sgdG8gcmVndWxhciBrbWFwLgoK U2lnbmVkLW9mZi1ieTogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1 cmlvQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQWJkaWVsIEphbnVsZ3VlIDxhYmRpZWwuamFu dWxndWVAbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5jICAgfCAxOSArKysrLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJy b3IuYyB8IDYzICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1 OSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5jCmluZGV4IDM3MzJmMjExNDhkMy4uMDQ1YzY3MTVkNWE2IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9ndHQuYwpAQCAtMjc2MywxMyArMjc2MywxNSBAQCBpbnQgaTkxNV9nZW1faW5p dF9nZ3R0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlpZiAocmV0KQogCQly ZXR1cm4gcmV0OwogCi0JLyogUmVzZXJ2ZSBhIG1hcHBhYmxlIHNsb3QgZm9yIG91ciBsb2NrbGVz cyBlcnJvciBjYXB0dXJlICovCi0JcmV0ID0gZHJtX21tX2luc2VydF9ub2RlX2luX3JhbmdlKCZn Z3R0LT52bS5tbSwgJmdndHQtPmVycm9yX2NhcHR1cmUsCi0JCQkJCSAgUEFHRV9TSVpFLCAwLCBJ OTE1X0NPTE9SX1VORVZJQ1RBQkxFLAotCQkJCQkgIDAsIGdndHQtPm1hcHBhYmxlX2VuZCwKLQkJ CQkJICBEUk1fTU1fSU5TRVJUX0xPVyk7Ci0JaWYgKHJldCkKLQkJcmV0dXJuIHJldDsKKwlpZiAo SEFTX01BUFBBQkxFX0FQRVJUVVJFKGRldl9wcml2KSkgeworCQkvKiBSZXNlcnZlIGEgbWFwcGFi bGUgc2xvdCBmb3Igb3VyIGxvY2tsZXNzIGVycm9yIGNhcHR1cmUgKi8KKwkJcmV0ID0gZHJtX21t X2luc2VydF9ub2RlX2luX3JhbmdlKCZnZ3R0LT52bS5tbSwgJmdndHQtPmVycm9yX2NhcHR1cmUs CisJCQkJCQkgIFBBR0VfU0laRSwgMCwgSTkxNV9DT0xPUl9VTkVWSUNUQUJMRSwKKwkJCQkJCSAg MCwgZ2d0dC0+bWFwcGFibGVfZW5kLAorCQkJCQkJICBEUk1fTU1fSU5TRVJUX0xPVyk7CisJCWlm IChyZXQpCisJCQlyZXR1cm4gcmV0OworCX0KIAogCS8qIENsZWFyIGFueSBub24tcHJlYWxsb2Nh dGVkIGJsb2NrcyAqLwogCWRybV9tbV9mb3JfZWFjaF9ob2xlKGVudHJ5LCAmZ2d0dC0+dm0ubW0s IGhvbGVfc3RhcnQsIGhvbGVfZW5kKSB7CkBAIC0yNzkxLDcgKzI3OTMsOCBAQCBpbnQgaTkxNV9n ZW1faW5pdF9nZ3R0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlyZXR1cm4g MDsKIAogZXJyOgotCWRybV9tbV9yZW1vdmVfbm9kZSgmZ2d0dC0+ZXJyb3JfY2FwdHVyZSk7CisJ aWYgKGRybV9tbV9ub2RlX2FsbG9jYXRlZCgmZ2d0dC0+ZXJyb3JfY2FwdHVyZSkpCisJCWRybV9t bV9yZW1vdmVfbm9kZSgmZ2d0dC0+ZXJyb3JfY2FwdHVyZSk7CiAJcmV0dXJuIHJldDsKIH0KIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3IuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMKaW5kZXggOWE2NTM0MWZlYzA5Li45Y2Nk NmNmYTZjMjUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9y LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3IuYwpAQCAtMjExLDcg KzIxMSw3IEBAIHN0cnVjdCBjb21wcmVzcyB7CiAJdm9pZCAqdG1wOwogfTsKIAotc3RhdGljIGJv b2wgY29tcHJlc3NfaW5pdChzdHJ1Y3QgY29tcHJlc3MgKmMpCitzdGF0aWMgYm9vbCBjb21wcmVz c19pbml0KHN0cnVjdCBjb21wcmVzcyAqYywgYm9vbCB3YykKIHsKIAlzdHJ1Y3Qgel9zdHJlYW1f cyAqenN0cmVhbSA9IG1lbXNldCgmYy0+enN0cmVhbSwgMCwgc2l6ZW9mKGMtPnpzdHJlYW0pKTsK IApAQCAtMjI3LDcgKzIyNyw3IEBAIHN0YXRpYyBib29sIGNvbXByZXNzX2luaXQoc3RydWN0IGNv bXByZXNzICpjKQogCX0KIAogCWMtPnRtcCA9IE5VTEw7Ci0JaWYgKGk5MTVfaGFzX21lbWNweV9m cm9tX3djKCkpCisJaWYgKHdjICYmIGk5MTVfaGFzX21lbWNweV9mcm9tX3djKCkpCiAJCWMtPnRt cCA9ICh2b2lkICopX19nZXRfZnJlZV9wYWdlKEdGUF9BVE9NSUMgfCBfX0dGUF9OT1dBUk4pOwog CiAJcmV0dXJuIHRydWU7CkBAIC0zMjgsMTAgKzMyOCwxMiBAQCBzdGF0aWMgdm9pZCBlcnJfY29t cHJlc3Npb25fbWFya2VyKHN0cnVjdCBkcm1faTkxNV9lcnJvcl9zdGF0ZV9idWYgKm0pCiAjZWxz ZQogCiBzdHJ1Y3QgY29tcHJlc3MgeworCWJvb2wgd2M7CiB9OwogCi1zdGF0aWMgYm9vbCBjb21w cmVzc19pbml0KHN0cnVjdCBjb21wcmVzcyAqYykKK3N0YXRpYyBib29sIGNvbXByZXNzX2luaXQo c3RydWN0IGNvbXByZXNzICpjLCBib29sIHdjKQogeworCWMtPndjID0gd2M7CiAJcmV0dXJuIHRy dWU7CiB9CiAKQEAgLTM0Nyw3ICszNDksNyBAQCBzdGF0aWMgaW50IGNvbXByZXNzX3BhZ2Uoc3Ry dWN0IGNvbXByZXNzICpjLAogCQlyZXR1cm4gLUVOT01FTTsKIAogCXB0ciA9ICh2b2lkICopcGFn ZTsKLQlpZiAoIWk5MTVfbWVtY3B5X2Zyb21fd2MocHRyLCBzcmMsIFBBR0VfU0laRSkpCisJaWYg KCEoYy0+d2MgJiYgaTkxNV9tZW1jcHlfZnJvbV93YyhwdHIsIHNyYywgUEFHRV9TSVpFKSkpCiAJ CW1lbWNweShwdHIsIHNyYywgUEFHRV9TSVpFKTsKIAlkc3QtPnBhZ2VzW2RzdC0+cGFnZV9jb3Vu dCsrXSA9IHB0cjsKIApAQCAtMTAxMyw3ICsxMDE1LDYgQEAgaTkxNV9lcnJvcl9vYmplY3RfY3Jl YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAogCXN0cnVjdCBjb21wcmVzcyBjb21w cmVzczsKIAl1bnNpZ25lZCBsb25nIG51bV9wYWdlczsKIAlzdHJ1Y3Qgc2d0X2l0ZXIgaXRlcjsK LQlkbWFfYWRkcl90IGRtYTsKIAlpbnQgcmV0OwogCiAJaWYgKCF2bWEgfHwgIXZtYS0+cGFnZXMp CkBAIC0xMDMyLDIyICsxMDMzLDUyIEBAIGk5MTVfZXJyb3Jfb2JqZWN0X2NyZWF0ZShzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAlkc3QtPnBhZ2VfY291bnQgPSAwOwogCWRzdC0+dW51 c2VkID0gMDsKIAotCWlmICghY29tcHJlc3NfaW5pdCgmY29tcHJlc3MpKSB7CisJaWYgKCFjb21w cmVzc19pbml0KCZjb21wcmVzcywgZHJtX21tX25vZGVfYWxsb2NhdGVkKCZnZ3R0LT5lcnJvcl9j YXB0dXJlKSkpIHsKIAkJa2ZyZWUoZHN0KTsKIAkJcmV0dXJuIE5VTEw7CiAJfQogCiAJcmV0ID0g LUVJTlZBTDsKLQlmb3JfZWFjaF9zZ3RfZG1hKGRtYSwgaXRlciwgdm1hLT5wYWdlcykgeworCWlm IChkcm1fbW1fbm9kZV9hbGxvY2F0ZWQoJmdndHQtPmVycm9yX2NhcHR1cmUpKSB7CiAJCXZvaWQg X19pb21lbSAqczsKKwkJZG1hX2FkZHJfdCBkbWE7CiAKLQkJZ2d0dC0+dm0uaW5zZXJ0X3BhZ2Uo JmdndHQtPnZtLCBkbWEsIHNsb3QsIEk5MTVfQ0FDSEVfTk9ORSwgMCk7CisJCWZvcl9lYWNoX3Nn dF9kbWEoZG1hLCBpdGVyLCB2bWEtPnBhZ2VzKSB7CisJCQlnZ3R0LT52bS5pbnNlcnRfcGFnZSgm Z2d0dC0+dm0sIGRtYSwgc2xvdCwKKwkJCQkJICAgICBJOTE1X0NBQ0hFX05PTkUsIDApOwogCi0J CXMgPSBpb19tYXBwaW5nX21hcF9hdG9taWNfd2MoJmdndHQtPmlvbWFwLCBzbG90KTsKLQkJcmV0 ID0gY29tcHJlc3NfcGFnZSgmY29tcHJlc3MsICh2b2lkICBfX2ZvcmNlICopcywgZHN0KTsKLQkJ aW9fbWFwcGluZ191bm1hcF9hdG9taWMocyk7Ci0JCWlmIChyZXQpCi0JCQlicmVhazsKKwkJCXMg PSBpb19tYXBwaW5nX21hcF9hdG9taWNfd2MoJmdndHQtPmlvbWFwLCBzbG90KTsKKwkJCXJldCA9 IGNvbXByZXNzX3BhZ2UoJmNvbXByZXNzLCAodm9pZCAgX19mb3JjZSAqKXMsIGRzdCk7CisJCQlp b19tYXBwaW5nX3VubWFwX2F0b21pYyhzKTsKKworCQkJaWYgKHJldCkKKwkJCQlicmVhazsKKwkJ fQorCX0gZWxzZSBpZiAoaTkxNV9nZW1fb2JqZWN0X2lzX2xtZW0odm1hLT5vYmopKSB7CisJCXZv aWQgKnM7CisJCWRtYV9hZGRyX3QgZG1hOworCQlzdHJ1Y3QgaW50ZWxfbWVtb3J5X3JlZ2lvbiAq bWVtID0gdm1hLT5vYmotPm1lbW9yeV9yZWdpb247CisKKwkJZm9yX2VhY2hfc2d0X2RtYShkbWEs IGl0ZXIsIHZtYS0+cGFnZXMpIHsKKwkJCXMgPSBpb19tYXBwaW5nX21hcF9hdG9taWNfd2MoJm1l bS0+aW9tYXAsIGRtYSk7CisJCQlyZXQgPSBjb21wcmVzc19wYWdlKCZjb21wcmVzcywgcywgZHN0 KTsKKwkJCWlvX21hcHBpbmdfdW5tYXBfYXRvbWljKHMpOworCisJCQlpZiAocmV0KQorCQkJCWJy ZWFrOworCQl9CisJfSBlbHNlIHsKKwkJdm9pZCAqczsKKwkJc3RydWN0IHBhZ2UgKnBhZ2U7CisK KwkJZm9yX2VhY2hfc2d0X3BhZ2UocGFnZSwgaXRlciwgdm1hLT5wYWdlcykgeworCQkJcyA9IGtt YXBfYXRvbWljKHBhZ2UpOworCQkJcmV0ID0gY29tcHJlc3NfcGFnZSgmY29tcHJlc3MsIHMsIGRz dCk7CisJCQlrdW5tYXBfYXRvbWljKHMpOworCisJCQlpZiAocmV0KQorCQkJCWJyZWFrOworCQl9 CiAJfQogCiAJaWYgKHJldCB8fCBjb21wcmVzc19mbHVzaCgmY29tcHJlc3MsIGRzdCkpIHsKQEAg LTE3ODQsOSArMTgxNSwxMSBAQCBzdGF0aWMgdW5zaWduZWQgbG9uZyBjYXB0dXJlX2ZpbmRfZXBv Y2goY29uc3Qgc3RydWN0IGk5MTVfZ3B1X3N0YXRlICplcnJvcikKIHN0YXRpYyB2b2lkIGNhcHR1 cmVfZmluaXNoKHN0cnVjdCBpOTE1X2dwdV9zdGF0ZSAqZXJyb3IpCiB7CiAJc3RydWN0IGk5MTVf Z2d0dCAqZ2d0dCA9ICZlcnJvci0+aTkxNS0+Z2d0dDsKLQljb25zdCB1NjQgc2xvdCA9IGdndHQt PmVycm9yX2NhcHR1cmUuc3RhcnQ7CiAKLQlnZ3R0LT52bS5jbGVhcl9yYW5nZSgmZ2d0dC0+dm0s IHNsb3QsIFBBR0VfU0laRSk7CisJaWYgKGRybV9tbV9ub2RlX2FsbG9jYXRlZCgmZ2d0dC0+ZXJy b3JfY2FwdHVyZSkpIHsKKwkJY29uc3QgdTY0IHNsb3QgPSBnZ3R0LT5lcnJvcl9jYXB0dXJlLnN0 YXJ0OworCQlnZ3R0LT52bS5jbGVhcl9yYW5nZSgmZ2d0dC0+dm0sIHNsb3QsIFBBR0VfU0laRSk7 CisJfQogfQogCiBzdGF0aWMgaW50IGNhcHR1cmUodm9pZCAqZGF0YSkKLS0gCjIuMjAuMQoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4