From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 31/33] drm/i915: Always use the GTT for error capture Date: Sun, 7 Aug 2016 15:45:39 +0100 Message-ID: <1470581141-14432-32-git-send-email-chris@chris-wilson.co.uk> References: <1470581141-14432-1-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id BC2146E308 for ; Sun, 7 Aug 2016 14:46:22 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id o80so11077618wme.0 for ; Sun, 07 Aug 2016 07:46:22 -0700 (PDT) In-Reply-To: <1470581141-14432-1-git-send-email-chris@chris-wilson.co.uk> 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 U2luY2UgdGhlIEdUVCBwcm92aWRlcyB1bml2ZXJzYWwgYWNjZXNzIHRvIGFueSBHUFUgcGFnZSwg d2UgY2FuIHVzZSBpdAp0byByZWR1Y2Ugb3VyIHBsZXRob3JhIG9mIHJlYWQgbWV0aG9kcyB0byBq dXN0IG9uZS4gSXQgYWxzbyBoYXMgdGhlCmltcG9ydGFudCBjaGFyYWN0ZXJpc3RpYyBvZiBiZWlu ZyBleGFjdGx5IHdoYXQgdGhlIEdQVSBzZWVzIC0gaWYgdGhlcmUKYXJlIGluY29oZXJlbmN5IHBy b2JsZW1zLCBzZWVpbmcgdGhlIGJhdGNoIGFzIGV4ZWN1dGVkIChyYXRoZXIgdGhhbiBhcwp0cmFw cGVkIGluc2lkZSB0aGUgY3B1IGNhY2hlKSBpcyBpbXBvcnRhbnQuCgpTaWduZWQtb2ZmLWJ5OiBD aHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ndHQuYyAgIHwgIDQzICsrKysrKysrLS0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggICB8ICAgMiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dwdV9lcnJvci5jIHwgMTIwICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K IDMgZmlsZXMgY2hhbmdlZCwgNzQgaW5zZXJ0aW9ucygrKSwgOTEgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwppbmRleCBlODU1OTNiM2JiODUuLjE1N2ZkNjEwMGQ2 YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKQEAgLTI3MzAsNiArMjczMCw3IEBA IGludCBpOTE1X2dlbV9pbml0X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQogCSAqLwogCXN0cnVjdCBpOTE1X2dndHQgKmdndHQgPSAmZGV2X3ByaXYtPmdndHQ7CiAJdW5z aWduZWQgbG9uZyBob2xlX3N0YXJ0LCBob2xlX2VuZDsKKwlzdHJ1Y3QgaTkxNV9od19wcGd0dCAq cHBndHQ7CiAJc3RydWN0IGRybV9tbV9ub2RlICplbnRyeTsKIAlpbnQgcmV0OwogCkBAIC0yNzM3 LDYgKzI3MzgsMTUgQEAgaW50IGk5MTVfZ2VtX2luaXRfZ2d0dChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAorCS8qIFJlc2VydmUg YSBtYXBwYWJsZSBzbG90IGZvciBvdXIgbG9ja2xlc3MgZXJyb3IgY2FwdHVyZSAqLworCXJldCA9 IGRybV9tbV9pbnNlcnRfbm9kZV9pbl9yYW5nZV9nZW5lcmljKCZnZ3R0LT5iYXNlLm1tLAorCQkJ CQkJICAmZ2d0dC0+Z3B1X2Vycm9yLAorCQkJCQkJICA0MDk2LCAwLCAtMSwKKwkJCQkJCSAgMCwg Z2d0dC0+bWFwcGFibGVfZW5kLAorCQkJCQkJICAwLCAwKTsKKwlpZiAocmV0KQorCQlyZXR1cm4g cmV0OworCiAJLyogQ2xlYXIgYW55IG5vbi1wcmVhbGxvY2F0ZWQgYmxvY2tzICovCiAJZHJtX21t X2Zvcl9lYWNoX2hvbGUoZW50cnksICZnZ3R0LT5iYXNlLm1tLCBob2xlX3N0YXJ0LCBob2xlX2Vu ZCkgewogCQlEUk1fREVCVUdfS01TKCJjbGVhcmluZyB1bnVzZWQgR1RUIHNwYWNlOiBbJWx4LCAl bHhdXG4iLApAQCAtMjc1MSwyNSArMjc2MSwyMSBAQCBpbnQgaTkxNV9nZW1faW5pdF9nZ3R0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkJCSAgICAgICB0cnVlKTsKIAogCWlm IChVU0VTX1BQR1RUKGRldl9wcml2KSAmJiAhVVNFU19GVUxMX1BQR1RUKGRldl9wcml2KSkgewot CQlzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBndHQ7Ci0KIAkJcHBndHQgPSBremFsbG9jKHNpemVv ZigqcHBndHQpLCBHRlBfS0VSTkVMKTsKLQkJaWYgKCFwcGd0dCkKLQkJCXJldHVybiAtRU5PTUVN OworCQlpZiAoIXBwZ3R0KSB7CisJCQlyZXQgPSAtRU5PTUVNOworCQkJZ290byBlcnI7CisJCX0K IAogCQlyZXQgPSBfX2h3X3BwZ3R0X2luaXQocHBndHQsIGRldl9wcml2KTsKLQkJaWYgKHJldCkg ewotCQkJa2ZyZWUocHBndHQpOwotCQkJcmV0dXJuIHJldDsKLQkJfQorCQlpZiAocmV0KQorCQkJ Z290byBlcnJfcHBndHQ7CiAKLQkJaWYgKHBwZ3R0LT5iYXNlLmFsbG9jYXRlX3ZhX3JhbmdlKQor CQlpZiAocHBndHQtPmJhc2UuYWxsb2NhdGVfdmFfcmFuZ2UpIHsKIAkJCXJldCA9IHBwZ3R0LT5i YXNlLmFsbG9jYXRlX3ZhX3JhbmdlKCZwcGd0dC0+YmFzZSwgMCwKIAkJCQkJCQkgICAgcHBndHQt PmJhc2UudG90YWwpOwotCQlpZiAocmV0KSB7Ci0JCQlwcGd0dC0+YmFzZS5jbGVhbnVwKCZwcGd0 dC0+YmFzZSk7Ci0JCQlrZnJlZShwcGd0dCk7Ci0JCQlyZXR1cm4gcmV0OworCQkJaWYgKHJldCkK KwkJCQlnb3RvIGVycl9wcGd0dF9jbGVhbnVwOwogCQl9CiAKIAkJcHBndHQtPmJhc2UuY2xlYXJf cmFuZ2UoJnBwZ3R0LT5iYXNlLApAQCAtMjc4Myw2ICsyNzg5LDE0IEBAIGludCBpOTE1X2dlbV9p bml0X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCX0KIAogCXJldHVy biAwOworCitlcnJfcHBndHRfY2xlYW51cDoKKwlwcGd0dC0+YmFzZS5jbGVhbnVwKCZwcGd0dC0+ YmFzZSk7CitlcnJfcHBndHQ6CisJa2ZyZWUocHBndHQpOworZXJyOgorCWRybV9tbV9yZW1vdmVf bm9kZSgmZ2d0dC0+Z3B1X2Vycm9yKTsKKwlyZXR1cm4gcmV0OwogfQogCiAvKioKQEAgLTI4MDIs NiArMjgxNiw5IEBAIHZvaWQgaTkxNV9nZ3R0X2NsZWFudXBfaHcoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KQogCiAJaTkxNV9nZW1fY2xlYW51cF9zdG9sZW4oJmRldl9wcml2LT5k cm0pOwogCisJaWYgKGRybV9tbV9ub2RlX2FsbG9jYXRlZCgmZ2d0dC0+Z3B1X2Vycm9yKSkKKwkJ ZHJtX21tX3JlbW92ZV9ub2RlKCZnZ3R0LT5ncHVfZXJyb3IpOworCiAJaWYgKGRybV9tbV9pbml0 aWFsaXplZCgmZ2d0dC0+YmFzZS5tbSkpIHsKIAkJaW50ZWxfdmd0X2RlYmFsbG9vbihkZXZfcHJp dik7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKaW5kZXggZDNlYjkxMGRkYjg5Li4w YWE5MDBkNjFlYjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC00MzMsNiAr NDMzLDggQEAgc3RydWN0IGk5MTVfZ2d0dCB7CiAJYm9vbCBkb19pZGxlX21hcHM7CiAKIAlpbnQg bXRycjsKKworCXN0cnVjdCBkcm1fbW1fbm9kZSBncHVfZXJyb3I7CiB9OwogCiBzdHJ1Y3QgaTkx NV9od19wcGd0dCB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9l cnJvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3IuYwppbmRleCBjNDgy NzdmYmU2YTcuLmQ5YTY1Y2JkMTIzNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9ncHVfZXJyb3IuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJv ci5jCkBAIC02MDcsNyArNjA3LDcgQEAgc3RhdGljIHZvaWQgaTkxNV9lcnJvcl9vYmplY3RfZnJl ZShzdHJ1Y3QgZHJtX2k5MTVfZXJyb3Jfb2JqZWN0ICpvYmopCiAJCXJldHVybjsKIAogCWZvciAo cGFnZSA9IDA7IHBhZ2UgPCBvYmotPnBhZ2VfY291bnQ7IHBhZ2UrKykKLQkJa2ZyZWUob2JqLT5w YWdlc1twYWdlXSk7CisJCWZyZWVfcGFnZSgodW5zaWduZWQgbG9uZylvYmotPnBhZ2VzW3BhZ2Vd KTsKIAogCWtmcmVlKG9iaik7CiB9CkBAIC02NDMsOTggKzY0Myw2OSBAQCBzdGF0aWMgdm9pZCBp OTE1X2Vycm9yX3N0YXRlX2ZyZWUoc3RydWN0IGtyZWYgKmVycm9yX3JlZikKIAlrZnJlZShlcnJv cik7CiB9CiAKK3N0YXRpYyBpbnQgY29tcHJlc3NfcGFnZSh2b2lkICpzcmMsIHN0cnVjdCBkcm1f aTkxNV9lcnJvcl9vYmplY3QgKmRzdCkKK3sKKwl1bnNpZ25lZCBsb25nIHBhZ2U7CisKKwlwYWdl ID0gX19nZXRfZnJlZV9wYWdlKEdGUF9BVE9NSUMgfCBfX0dGUF9OT1dBUk4pOworCWlmICghcGFn ZSkKKwkJcmV0dXJuIC1FTk9NRU07CisKKwlkc3QtPnBhZ2VzW2RzdC0+cGFnZV9jb3VudCsrXSA9 ICh2b2lkICopcGFnZTsKKworCW1lbWNweSgodm9pZCAqKXBhZ2UsIHNyYywgUEFHRV9TSVpFKTsK KwlyZXR1cm4gMDsKK30KKwogc3RhdGljIHN0cnVjdCBkcm1faTkxNV9lcnJvcl9vYmplY3QgKgot aTkxNV9lcnJvcl9vYmplY3RfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwKK2k5MTVfZXJyb3Jfb2JqZWN0X2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkx NSwKIAkJCSBzdHJ1Y3QgaTkxNV92bWEgKnZtYSkKIHsKLQlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0 ID0gJmRldl9wcml2LT5nZ3R0OwotCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpzcmM7CisJ c3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZpOTE1LT5nZ3R0OworCWNvbnN0IHU2NCBzbG90ID0g Z2d0dC0+Z3B1X2Vycm9yLnN0YXJ0OwogCXN0cnVjdCBkcm1faTkxNV9lcnJvcl9vYmplY3QgKmRz dDsKLQlpbnQgbnVtX3BhZ2VzOwotCWJvb2wgdXNlX2dndHQ7Ci0JaW50IGkgPSAwOwotCXU2NCBy ZWxvY19vZmZzZXQ7CisJdW5zaWduZWQgbG9uZyBudW1fcGFnZXM7CisJc3RydWN0IHNndF9pdGVy IGl0ZXI7CisJZG1hX2FkZHJfdCBkbWE7CiAKIAlpZiAoIXZtYSkKIAkJcmV0dXJuIE5VTEw7CiAK LQlzcmMgPSB2bWEtPm9iajsKLQlpZiAoIXNyYy0+cGFnZXMpCi0JCXJldHVybiBOVUxMOwotCi0J bnVtX3BhZ2VzID0gc3JjLT5iYXNlLnNpemUgPj4gUEFHRV9TSElGVDsKLQotCWRzdCA9IGttYWxs b2Moc2l6ZW9mKCpkc3QpICsgbnVtX3BhZ2VzICogc2l6ZW9mKHUzMiAqKSwgR0ZQX0FUT01JQyk7 CisJbnVtX3BhZ2VzID0gbWluX3QodTY0LCB2bWEtPnNpemUsIHZtYS0+b2JqLT5iYXNlLnNpemUp ID4+IFBBR0VfU0hJRlQ7CisJZHN0ID0ga21hbGxvYyhzaXplb2YoKmRzdCkgKyBudW1fcGFnZXMg KiBzaXplb2YodTMyICopLAorCQkgICAgICBHRlBfQVRPTUlDIHwgX19HRlBfTk9XQVJOKTsKIAlp ZiAoIWRzdCkKIAkJcmV0dXJuIE5VTEw7CiAKIAlkc3QtPmd0dF9vZmZzZXQgPSB2bWEtPm5vZGUu c3RhcnQ7Ci0JZHN0LT5ndHRfc2l6ZSA9IHZtYS0+bm9kZS5zaXplOworCWRzdC0+cGFnZV9jb3Vu dCA9IDA7CiAKLQlyZWxvY19vZmZzZXQgPSBkc3QtPmd0dF9vZmZzZXQ7Ci0JdXNlX2dndHQgPSAo c3JjLT5jYWNoZV9sZXZlbCA9PSBJOTE1X0NBQ0hFX05PTkUgJiYKLQkJICAgKHZtYS0+ZmxhZ3Mg JiBJOTE1X1ZNQV9HTE9CQUxfQklORCkgJiYKLQkJICAgcmVsb2Nfb2Zmc2V0ICsgbnVtX3BhZ2Vz ICogUEFHRV9TSVpFIDw9IGdndHQtPm1hcHBhYmxlX2VuZCk7CisJZm9yX2VhY2hfc2d0X2RtYShk bWEsIGl0ZXIsCisJCQkgdm1hLT5nZ3R0X3ZpZXcucGFnZXMgPzogdm1hLT5vYmotPnBhZ2VzKSB7 CisJCWludCByZXQ7CisJCXZvaWQgKnM7CiAKLQkvKiBDYW5ub3QgYWNjZXNzIHN0b2xlbiBhZGRy ZXNzIGRpcmVjdGx5LCB0cnkgdG8gdXNlIHRoZSBhcGVydHVyZSAqLwotCWlmIChzcmMtPnN0b2xl bikgewotCQl1c2VfZ2d0dCA9IHRydWU7CisJCWdndHQtPmJhc2UuaW5zZXJ0X3BhZ2UoJmdndHQt PmJhc2UsIGRtYSwgc2xvdCwKKwkJCQkgICAgICAgSTkxNV9DQUNIRV9OT05FLCAwKTsKIAotCQlp ZiAoISh2bWEtPmZsYWdzICYgSTkxNV9WTUFfR0xPQkFMX0JJTkQpKQotCQkJZ290byB1bndpbmQ7 CisJCXMgPSAodm9pZCAqX19mb3JjZSkKKwkJCWlvX21hcHBpbmdfbWFwX2F0b21pY193YyhnZ3R0 LT5tYXBwYWJsZSwgc2xvdCk7CisJCXJldCA9IGNvbXByZXNzX3BhZ2UocywgZHN0KTsKKwkJaW9f bWFwcGluZ191bm1hcF9hdG9taWMocyk7CiAKLQkJcmVsb2Nfb2Zmc2V0ID0gdm1hLT5ub2RlLnN0 YXJ0OwotCQlpZiAocmVsb2Nfb2Zmc2V0ICsgbnVtX3BhZ2VzICogUEFHRV9TSVpFID4gZ2d0dC0+ bWFwcGFibGVfZW5kKQorCQlpZiAocmV0KQogCQkJZ290byB1bndpbmQ7CiAJfQotCi0JLyogQ2Fu bm90IGFjY2VzcyBzbm9vcGVkIHBhZ2VzIHRocm91Z2ggdGhlIGFwZXJ0dXJlICovCi0JaWYgKHVz ZV9nZ3R0ICYmIHNyYy0+Y2FjaGVfbGV2ZWwgIT0gSTkxNV9DQUNIRV9OT05FICYmCi0JICAgICFI QVNfTExDKGRldl9wcml2KSkKLQkJZ290byB1bndpbmQ7Ci0KLQlkc3QtPnBhZ2VfY291bnQgPSBu dW1fcGFnZXM7Ci0Jd2hpbGUgKG51bV9wYWdlcy0tKSB7Ci0JCXZvaWQgKmQ7Ci0KLQkJZCA9IGtt YWxsb2MoUEFHRV9TSVpFLCBHRlBfQVRPTUlDKTsKLQkJaWYgKGQgPT0gTlVMTCkKLQkJCWdvdG8g dW53aW5kOwotCi0JCWlmICh1c2VfZ2d0dCkgewotCQkJdm9pZCBfX2lvbWVtICpzOwotCi0JCQkv KiBTaW1wbHkgaWdub3JlIHRpbGluZyBvciBhbnkgb3ZlcmxhcHBpbmcgZmVuY2UuCi0JCQkgKiBJ dCdzIHBhcnQgb2YgdGhlIGVycm9yIHN0YXRlLCBhbmQgdGhpcyBob3BlZnVsbHkKLQkJCSAqIGNh cHR1cmVzIHdoYXQgdGhlIEdQVSByZWFkLgotCQkJICovCi0KLQkJCXMgPSBpb19tYXBwaW5nX21h cF9hdG9taWNfd2MoZ2d0dC0+bWFwcGFibGUsCi0JCQkJCQkgICAgIHJlbG9jX29mZnNldCk7Ci0J CQltZW1jcHlfZnJvbWlvKGQsIHMsIFBBR0VfU0laRSk7Ci0JCQlpb19tYXBwaW5nX3VubWFwX2F0 b21pYyhzKTsKLQkJfSBlbHNlIHsKLQkJCXN0cnVjdCBwYWdlICpwYWdlOwotCQkJdm9pZCAqczsK LQotCQkJcGFnZSA9IGk5MTVfZ2VtX29iamVjdF9nZXRfcGFnZShzcmMsIGkpOwotCi0JCQlzID0g a21hcF9hdG9taWMocGFnZSk7Ci0JCQltZW1jcHkoZCwgcywgUEFHRV9TSVpFKTsKLQkJCWt1bm1h cF9hdG9taWMocyk7Ci0JCX0KLQotCQlkc3QtPnBhZ2VzW2krK10gPSBkOwotCQlyZWxvY19vZmZz ZXQgKz0gUEFHRV9TSVpFOwotCX0KLQorb3V0OgorCWdndHQtPmJhc2UuY2xlYXJfcmFuZ2UoJmdn dHQtPmJhc2UsIHNsb3QsIFBBR0VfU0laRSwgdHJ1ZSk7CiAJcmV0dXJuIGRzdDsKIAogdW53aW5k OgotCXdoaWxlIChpLS0pCi0JCWtmcmVlKGRzdC0+cGFnZXNbaV0pOworCXdoaWxlIChkc3QtPnBh Z2VfY291bnQtLSkKKwkJZnJlZV9wYWdlKCh1bnNpZ25lZCBsb25nKWRzdC0+cGFnZXNbZHN0LT5w YWdlX2NvdW50XSk7CiAJa2ZyZWUoZHN0KTsKLQlyZXR1cm4gTlVMTDsKKwlkc3QgPSBOVUxMOwor CWdvdG8gb3V0OwogfQogCiAvKiBUaGUgZXJyb3IgY2FwdHVyZSBpcyBzcGVjaWFsIGFzIHRyaWVz IHRvIHJ1biB1bmRlcm5lYXRoIHRoZSBub3JtYWwKQEAgLTEzNzEsOSArMTM0Miw2IEBAIHN0YXRp YyBpbnQgY2FwdHVyZSh2b2lkICpkYXRhKQogewogCXN0cnVjdCBkcm1faTkxNV9lcnJvcl9zdGF0 ZSAqZXJyb3IgPSBkYXRhOwogCi0JLyogRW5zdXJlIHRoYXQgd2hhdCB3ZSByZWFkYmFjayBmcm9t IG1lbW9yeSBtYXRjaGVzIHdoYXQgdGhlIEdQVSBzZWVzICovCi0Jd2JpbnZkKCk7Ci0KIAlpOTE1 X2NhcHR1cmVfZ2VuX3N0YXRlKGVycm9yLT5pOTE1LCBlcnJvcik7CiAJaTkxNV9jYXB0dXJlX3Jl Z19zdGF0ZShlcnJvci0+aTkxNSwgZXJyb3IpOwogCWk5MTVfZ2VtX3JlY29yZF9mZW5jZXMoZXJy b3ItPmk5MTUsIGVycm9yKTsKQEAgLTEzODcsOSArMTM1NSw2IEBAIHN0YXRpYyBpbnQgY2FwdHVy ZSh2b2lkICpkYXRhKQogCWVycm9yLT5vdmVybGF5ID0gaW50ZWxfb3ZlcmxheV9jYXB0dXJlX2Vy cm9yX3N0YXRlKGVycm9yLT5pOTE1KTsKIAllcnJvci0+ZGlzcGxheSA9IGludGVsX2Rpc3BsYXlf Y2FwdHVyZV9lcnJvcl9zdGF0ZShlcnJvci0+aTkxNSk7CiAKLQkvKiBBbmQgbWFrZSBzdXJlIHdl IGRvbid0IGxlYXZlIHRyYXNoIGluIHRoZSBDUFUgY2FjaGUgKi8KLQl3YmludmQoKTsKLQogCXJl dHVybiAwOwogfQogCkBAIC0xNDYzLDcgKzE0MjgsNiBAQCB2b2lkIGk5MTVfZXJyb3Jfc3RhdGVf Z2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJaWYgKGVycm9yX3ByaXYtPmVycm9yKQogCQlr cmVmX2dldCgmZXJyb3JfcHJpdi0+ZXJyb3ItPnJlZik7CiAJc3Bpbl91bmxvY2tfaXJxKCZkZXZf cHJpdi0+Z3B1X2Vycm9yLmxvY2spOwotCiB9CiAKIHZvaWQgaTkxNV9lcnJvcl9zdGF0ZV9wdXQo c3RydWN0IGk5MTVfZXJyb3Jfc3RhdGVfZmlsZV9wcml2ICplcnJvcl9wcml2KQotLSAKMi44LjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=