From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 05/13] drm/i915: Cache LRCA in the context Date: Fri, 8 Jan 2016 11:29:44 +0000 Message-ID: <1452252592-24803-6-git-send-email-tvrtko.ursulin@linux.intel.com> References: <1452252592-24803-1-git-send-email-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 9A164720E7 for ; Fri, 8 Jan 2016 03:30:01 -0800 (PST) In-Reply-To: <1452252592-24803-1-git-send-email-tvrtko.ursulin@linux.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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGFyZSBu b3QgYWxsb3dlZCB0byBjYWxsIGk5MTVfZ2VtX29ial9nZ3R0X29mZnNldCBmcm9tIGlycQpjb250 ZXh0IHdpdGhvdXQgdGhlIGJpZyBrZXJuZWwgbG9jayBoZWxkLgoKTFJDQSBsaWZldGltZSBpcyB3 ZWxsIGRlZmluZWQgc28gY2FjaGUgaXQgc28gaXQgY2FuIGJlIGxvb2tlZCB1cApjaGVhcGx5IGZy b20gdGhlIGludGVycnVwdCBjb250ZXh0IGFuZCBhdCBjb21tYW5kIHN1Ym1pc3Npb24KdGltZS4K CnYyOiBBZGRlZCBpcnEgY29udGV4dCByZWFzb25pbmcgdG8gdGhlIGNvbW1pdCBtZXNzYWdlLiAo RGFuaWVsIFZldHRlcikKClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJz dWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMg fCAxNSArKysrKystLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAg fCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICB8IDQwICsrKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2xyYy5oICAgIHwgIDMgKystCiA0IGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDMz IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVi dWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKaW5kZXggM2IwNWJk MTg5ZWFiLi43MTRhNDVjZjhhNTEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZGVidWdmcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCkBA IC0xOTc2LDEyICsxOTc2LDEzIEBAIHN0YXRpYyBpbnQgaTkxNV9jb250ZXh0X3N0YXR1cyhzdHJ1 Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnVudXNlZCkKIH0KIAogc3RhdGljIHZvaWQgaTkxNV9kdW1w X2xyY19vYmooc3RydWN0IHNlcV9maWxlICptLAotCQkJICAgICAgc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqcmluZywKLQkJCSAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpjdHhfb2Jq KQorCQkJICAgICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKKwkJCSAgICAgIHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbmcpCiB7CiAJc3RydWN0IHBhZ2UgKnBhZ2U7CiAJdWludDMyX3Qg KnJlZ19zdGF0ZTsKIAlpbnQgajsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY3R4X29i aiA9IGN0eC0+ZW5naW5lW3JpbmctPmlkXS5zdGF0ZTsKIAl1bnNpZ25lZCBsb25nIGdndHRfb2Zm c2V0ID0gMDsKIAogCWlmIChjdHhfb2JqID09IE5VTEwpIHsKQEAgLTE5OTEsNyArMTk5Miw3IEBA IHN0YXRpYyB2b2lkIGk5MTVfZHVtcF9scmNfb2JqKHN0cnVjdCBzZXFfZmlsZSAqbSwKIAl9CiAK IAlzZXFfcHJpbnRmKG0sICJDT05URVhUOiAlcyAldVxuIiwgcmluZy0+bmFtZSwKLQkJICAgaW50 ZWxfZXhlY2xpc3RzX2N0eF9pZChjdHhfb2JqKSk7CisJCSAgIGludGVsX2V4ZWNsaXN0c19jdHhf aWQoY3R4LCByaW5nKSk7CiAKIAlpZiAoIWk5MTVfZ2VtX29ial9nZ3R0X2JvdW5kKGN0eF9vYmop KQogCQlzZXFfcHV0cyhtLCAiXHROb3QgYm91bmQgaW4gR0dUVFxuIik7CkBAIC0yMDQwLDggKzIw NDEsNyBAQCBzdGF0aWMgaW50IGk5MTVfZHVtcF9scmMoc3RydWN0IHNlcV9maWxlICptLCB2b2lk ICp1bnVzZWQpCiAJbGlzdF9mb3JfZWFjaF9lbnRyeShjdHgsICZkZXZfcHJpdi0+Y29udGV4dF9s aXN0LCBsaW5rKSB7CiAJCWZvcl9lYWNoX3JpbmcocmluZywgZGV2X3ByaXYsIGkpIHsKIAkJCWlm IChyaW5nLT5kZWZhdWx0X2NvbnRleHQgIT0gY3R4KQotCQkJCWk5MTVfZHVtcF9scmNfb2JqKG0s IHJpbmcsCi0JCQkJCQkgIGN0eC0+ZW5naW5lW2ldLnN0YXRlKTsKKwkJCQlpOTE1X2R1bXBfbHJj X29iaihtLCBjdHgsIHJpbmcpOwogCQl9CiAJfQogCkBAIC0yMTE1LDExICsyMTE1LDggQEAgc3Rh dGljIGludCBpOTE1X2V4ZWNsaXN0cyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEpCiAK IAkJc2VxX3ByaW50ZihtLCAiXHQlZCByZXF1ZXN0cyBpbiBxdWV1ZVxuIiwgY291bnQpOwogCQlp ZiAoaGVhZF9yZXEpIHsKLQkJCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpjdHhfb2JqOwot Ci0JCQljdHhfb2JqID0gaGVhZF9yZXEtPmN0eC0+ZW5naW5lW3JpbmdfaWRdLnN0YXRlOwogCQkJ c2VxX3ByaW50ZihtLCAiXHRIZWFkIHJlcXVlc3QgaWQ6ICV1XG4iLAotCQkJCSAgIGludGVsX2V4 ZWNsaXN0c19jdHhfaWQoY3R4X29iaikpOworCQkJCSAgIGludGVsX2V4ZWNsaXN0c19jdHhfaWQo aGVhZF9yZXEtPmN0eCwgcmluZykpOwogCQkJc2VxX3ByaW50ZihtLCAiXHRIZWFkIHJlcXVlc3Qg dGFpbDogJXVcbiIsCiAJCQkJICAgaGVhZF9yZXEtPnRhaWwpOwogCQl9CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaAppbmRleCA4Y2Y2NTVjNmZjMDMuLmI3N2E1ZDg0ZWFjMiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCkBAIC04ODEsNiArODgxLDcgQEAgc3RydWN0IGludGVsX2NvbnRleHQgewogCQlz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqc3RhdGU7CiAJCXN0cnVjdCBpbnRlbF9yaW5nYnVm ZmVyICpyaW5nYnVmOwogCQlpbnQgcGluX2NvdW50OworCQl1MzIgbHJjYTsKIAl9IGVuZ2luZVtJ OTE1X05VTV9SSU5HU107CiAKIAlzdHJ1Y3QgbGlzdF9oZWFkIGxpbms7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2xyYy5jCmluZGV4IGZmMTQ2YTE1ZDM5NS4uZmZlMDA0ZGUyMmIwIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYwpAQCAtMjY1LDcgKzI2NSw4IEBAIGludCBpbnRlbF9zYW5pdGl6ZV9lbmFi bGVfZXhlY2xpc3RzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBlbmFibGVfZXhlY2xpc3Rz CiAKIC8qKgogICogaW50ZWxfZXhlY2xpc3RzX2N0eF9pZCgpIC0gZ2V0IHRoZSBFeGVjbGlzdHMg Q29udGV4dCBJRAotICogQGN0eF9vYmo6IExvZ2ljYWwgUmluZyBDb250ZXh0IGJhY2tpbmcgb2Jq ZWN0LgorICogQGN0eDogQ29udGV4dCB0byBnZXQgdGhlIElEIGZvcgorICogQHJpbmc6IEVuZ2lu ZSB0byBnZXQgdGhlIElEIGZvcgogICoKICAqIERvIG5vdCBjb25mdXNlIHdpdGggY3R4LT5pZCEg VW5mb3J0dW5hdGVseSB3ZSBoYXZlIGEgbmFtZSBvdmVybG9hZAogICogaGVyZTogdGhlIG9sZCBj b250ZXh0IElEIHdlIHBhc3MgdG8gdXNlcnNwYWNlIGFzIGEgaGFuZGxlciBzbyB0aGF0CkBAIC0y NzUsMTQgKzI3NiwxMiBAQCBpbnQgaW50ZWxfc2FuaXRpemVfZW5hYmxlX2V4ZWNsaXN0cyhzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgZW5hYmxlX2V4ZWNsaXN0cwogICoKICAqIFJldHVybjog MjAtYml0cyBnbG9iYWxseSB1bmlxdWUgY29udGV4dCBJRC4KICAqLwotdTMyIGludGVsX2V4ZWNs aXN0c19jdHhfaWQoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKmN0eF9vYmopCit1MzIgaW50 ZWxfZXhlY2xpc3RzX2N0eF9pZChzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAorCQkJICAgc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIHsKLQl1MzIgbHJjYSA9IGk5MTVfZ2VtX29ial9n Z3R0X29mZnNldChjdHhfb2JqKSArCi0JCQlMUkNfUFBIV1NQX1BOICogUEFHRV9TSVpFOwotCiAJ LyogTFJDQSBpcyByZXF1aXJlZCB0byBiZSA0SyBhbGlnbmVkIHNvIHRoZSBtb3JlIHNpZ25pZmlj YW50IDIwIGJpdHMKIAkgKiBhcmUgZ2xvYmFsbHkgdW5pcXVlICovCi0JcmV0dXJuIGxyY2EgPj4g MTI7CisJcmV0dXJuIGN0eC0+ZW5naW5lW3JpbmctPmlkXS5scmNhID4+IDEyOwogfQogCiBzdGF0 aWMgYm9vbCBkaXNhYmxlX2xpdGVfcmVzdG9yZV93YShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nKQpAQCAtMjk3LDEzICsyOTYsMTEgQEAgc3RhdGljIGJvb2wgZGlzYWJsZV9saXRlX3Jlc3Rv cmVfd2Eoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIHVpbnQ2NF90IGludGVsX2xyX2Nv bnRleHRfZGVzY3JpcHRvcihzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAogCQkJCSAgICAgc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqY3R4X29iaiA9IGN0eC0+ZW5naW5lW3JpbmctPmlkXS5zdGF0ZTsKKwl1aW50NjRfdCBscmNh ID0gY3R4LT5lbmdpbmVbcmluZy0+aWRdLmxyY2E7CiAJdWludDY0X3QgZGVzYyA9IHJpbmctPmN0 eF9kZXNjX3RlbXBsYXRlOwotCXVpbnQ2NF90IGxyY2EgPSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZz ZXQoY3R4X29iaikgKwotCQkJTFJDX1BQSFdTUF9QTiAqIFBBR0VfU0laRTsKIAogCWRlc2MgfD0g bHJjYTsKLQlkZXNjIHw9ICh1NjQpaW50ZWxfZXhlY2xpc3RzX2N0eF9pZChjdHhfb2JqKSA8PCBH RU44X0NUWF9JRF9TSElGVDsKKwlkZXNjIHw9ICh1NjQpaW50ZWxfZXhlY2xpc3RzX2N0eF9pZChj dHgsIHJpbmcpIDw8IEdFTjhfQ1RYX0lEX1NISUZUOwogCiAJcmV0dXJuIGRlc2M7CiB9CkBAIC00 NjEsOSArNDU4LDcgQEAgc3RhdGljIGJvb2wgZXhlY2xpc3RzX2NoZWNrX3JlbW92ZV9yZXF1ZXN0 KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJCQkJCSAgICBleGVjbGlzdF9saW5rKTsK IAogCWlmIChoZWFkX3JlcSAhPSBOVUxMKSB7Ci0JCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpjdHhfb2JqID0KLQkJCQloZWFkX3JlcS0+Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnN0YXRlOwot CQlpZiAoaW50ZWxfZXhlY2xpc3RzX2N0eF9pZChjdHhfb2JqKSA9PSByZXF1ZXN0X2lkKSB7CisJ CWlmIChpbnRlbF9leGVjbGlzdHNfY3R4X2lkKGhlYWRfcmVxLT5jdHgsIHJpbmcpID09IHJlcXVl c3RfaWQpIHsKIAkJCVdBUk4oaGVhZF9yZXEtPmVsc3Bfc3VibWl0dGVkID09IDAsCiAJCQkgICAg ICJOZXZlciBzdWJtaXR0ZWQgaGVhZCByZXF1ZXN0XG4iKTsKIApAQCAtMTAyMywxNSArMTAxOCwx NyBAQCBpbnQgbG9naWNhbF9yaW5nX2ZsdXNoX2FsbF9jYWNoZXMoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEpCiB9CiAKIHN0YXRpYyBpbnQgaW50ZWxfbHJfY29udGV4dF9kb19waW4o c3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKLQkJc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKmN0eF9vYmosCi0JCXN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmKQorCQkJCSAg IHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgpCiB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IHJpbmctPmRldjsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRl dl9wcml2YXRlOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpjdHhfb2JqID0gY3R4LT5l bmdpbmVbcmluZy0+aWRdLnN0YXRlOworCXN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVm ID0gY3R4LT5lbmdpbmVbcmluZy0+aWRdLnJpbmdidWY7CiAJdTY0IGxyY2E7Ci0JaW50IHJldCA9 IDA7CisJaW50IHJldDsKIAogCVdBUk5fT04oIW11dGV4X2lzX2xvY2tlZCgmcmluZy0+ZGV2LT5z dHJ1Y3RfbXV0ZXgpKTsKKwogCXJldCA9IGk5MTVfZ2VtX29ial9nZ3R0X3BpbihjdHhfb2JqLCBH RU44X0xSX0NPTlRFWFRfQUxJR04sCiAJCQlQSU5fT0ZGU0VUX0JJQVMgfCBHVUNfV09QQ01fVE9Q KTsKIAlpZiAocmV0KQpAQCAtMTA0Nyw2ICsxMDQ0LDcgQEAgc3RhdGljIGludCBpbnRlbF9scl9j b250ZXh0X2RvX3BpbihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCWlmIChyZXQpCiAJ CWdvdG8gdW5waW5fY3R4X29iajsKIAorCWN0eC0+ZW5naW5lW3JpbmctPmlkXS5scmNhID0gbHJj YTsKIAljdHhfb2JqLT5kaXJ0eSA9IHRydWU7CiAKIAkvKiBJbnZhbGlkYXRlIEd1QyBUTEIuICov CkBAIC0xMDY1LDExICsxMDYzLDkgQEAgc3RhdGljIGludCBpbnRlbF9scl9jb250ZXh0X3Bpbihz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJxKQogewogCWludCByZXQgPSAwOwogCXN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPSBycS0+cmluZzsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqY3R4X29iaiA9IHJxLT5jdHgtPmVuZ2luZVtyaW5nLT5pZF0uc3RhdGU7Ci0Jc3Ry dWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdidWYgPSBycS0+cmluZ2J1ZjsKIAogCWlmIChycS0+ Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnBpbl9jb3VudCsrID09IDApIHsKLQkJcmV0ID0gaW50ZWxf bHJfY29udGV4dF9kb19waW4ocmluZywgY3R4X29iaiwgcmluZ2J1Zik7CisJCXJldCA9IGludGVs X2xyX2NvbnRleHRfZG9fcGluKHJpbmcsIHJxLT5jdHgpOwogCQlpZiAocmV0KQogCQkJZ290byBy ZXNldF9waW5fY291bnQ7CiAJfQpAQCAtMTA5MSw2ICsxMDg3LDcgQEAgdm9pZCBpbnRlbF9scl9j b250ZXh0X3VucGluKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcnEpCiAJCWlmICgtLXJx LT5jdHgtPmVuZ2luZVtyaW5nLT5pZF0ucGluX2NvdW50ID09IDApIHsKIAkJCWludGVsX3VucGlu X3JpbmdidWZmZXJfb2JqKHJpbmdidWYpOwogCQkJaTkxNV9nZW1fb2JqZWN0X2dndHRfdW5waW4o Y3R4X29iaik7CisJCQlycS0+Y3R4LT5lbmdpbmVbcmluZy0+aWRdLmxyY2EgPSAwOwogCQl9CiAJ fQogfQpAQCAtMTk2MCwxMCArMTk1Nyw3IEBAIHN0YXRpYyBpbnQgbG9naWNhbF9yaW5nX2luaXQo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluCiAJCWdv dG8gZXJyb3I7CiAKIAkvKiBBcyB0aGlzIGlzIHRoZSBkZWZhdWx0IGNvbnRleHQsIGFsd2F5cyBw aW4gaXQgKi8KLQlyZXQgPSBpbnRlbF9scl9jb250ZXh0X2RvX3BpbigKLQkJCXJpbmcsCi0JCQly aW5nLT5kZWZhdWx0X2NvbnRleHQtPmVuZ2luZVtyaW5nLT5pZF0uc3RhdGUsCi0JCQlyaW5nLT5k ZWZhdWx0X2NvbnRleHQtPmVuZ2luZVtyaW5nLT5pZF0ucmluZ2J1Zik7CisJcmV0ID0gaW50ZWxf bHJfY29udGV4dF9kb19waW4ocmluZywgcmluZy0+ZGVmYXVsdF9jb250ZXh0KTsKIAlpZiAocmV0 KSB7CiAJCURSTV9FUlJPUigKIAkJCSJGYWlsZWQgdG8gcGluIGFuZCBtYXAgcmluZ2J1ZmZlciAl czogJWRcbiIsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCmluZGV4IGRlNDFhZDZjZDYzZC4uZjlk YjVmMTg3ZDc3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaApAQCAtMTA2LDYgKzEwNiw4IEBA IHZvaWQgaW50ZWxfbHJfY29udGV4dF9yZXNldChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJ c3RydWN0IGludGVsX2NvbnRleHQgKmN0eCk7CiB1aW50NjRfdCBpbnRlbF9scl9jb250ZXh0X2Rl c2NyaXB0b3Ioc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKIAkJCQkgICAgIHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmcpOwordTMyIGludGVsX2V4ZWNsaXN0c19jdHhfaWQoc3RydWN0IGlu dGVsX2NvbnRleHQgKmN0eCwKKwkJCSAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOwog CiAvKiBFeGVjbGlzdHMgKi8KIGludCBpbnRlbF9zYW5pdGl6ZV9lbmFibGVfZXhlY2xpc3RzKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBlbmFibGVfZXhlY2xpc3RzKTsKQEAgLTExMyw3ICsx MTUsNiBAQCBzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtczsKIGludCBpbnRlbF9leGVjbGlz dHNfc3VibWlzc2lvbihzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zLAogCQkJ ICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgKmFyZ3MsCiAJCQkgICAgICAg c3RydWN0IGxpc3RfaGVhZCAqdm1hcyk7Ci11MzIgaW50ZWxfZXhlY2xpc3RzX2N0eF9pZChzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY3R4X29iaik7CiAKIHZvaWQgaW50ZWxfbHJjX2lycV9o YW5kbGVyKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOwogdm9pZCBpbnRlbF9leGVjbGlz dHNfcmV0aXJlX3JlcXVlc3RzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOwotLSAKMS45 LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==