From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [RFC 6/9] drm/i915: Delay the freeing of requests until retire time Date: Fri, 17 Jul 2015 15:31:20 +0100 Message-ID: <1437143483-6234-7-git-send-email-John.C.Harrison@Intel.com> References: <1437143483-6234-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 939996E4DF for ; Fri, 17 Jul 2015 07:31:40 -0700 (PDT) In-Reply-To: <1437143483-6234-1-git-send-email-John.C.Harrison@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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSByZXF1 ZXN0IHN0cnVjdHVyZSBpcyByZWZlcmVuY2UgY291bnRlZC4gV2hlbiB0aGUgY291bnQgcmVhY2hl ZAp6ZXJvLCB0aGUgcmVxdWVzdCB3YXMgaW1tZWRpYXRlbHkgZnJlZWQgYW5kIGFsbCBhc3NvY2lh dGVkIG9iamVjdHMKd2VyZSB1bnJlZmVyZWNlZC91bmFsbG9jYXRlZC4gVGhpcyBtZWFudCB0aGF0 IHRoZSBkcml2ZXIgbXV0ZXggbG9jawptdXN0IGJlIGhlbGQgYXQgdGhlIHBvaW50IHdoZXJlIHRo ZSBjb3VudCByZWFjaGVzIHplcm8uIFRoaXMgd2FzIGZpbmUKd2hpbGUgYWxsIHJlZmVyZW5jZXMg d2VyZSBoZWxkIGludGVybmFsbHkgdG8gdGhlIGRyaXZlci4gSG93ZXZlciwgdGhlCnBsYW4gaXMg dG8gYWxsb3cgdGhlIHVuZGVybHlpbmcgZmVuY2Ugb2JqZWN0IChhbmQgaGVuY2UgdGhlIHJlcXVl c3QKaXRzZWxmKSB0byBiZSByZXR1cm5lZCB0byBvdGhlciBkcml2ZXJzIGFuZCB0byB1c2VybGFu ZC4gRXh0ZXJuYWwKdXNlcnMgY2Fubm90IGJlIGV4cGVjdGVkIHRvIGFjcXVpcmUgYSBkcml2ZXIg cHJpdmF0ZSBtdXRleCBsb2NrLgoKUmF0aGVyIHRoYW4gYXR0ZW1wdCB0byBkaXNlbnRhbmdsZSB0 aGUgcmVxdWVzdCBzdHJ1Y3R1cmUgZnJvbSB0aGUKZHJpdmVyIG11dGV4IGxvY2ssIHRoZSBkZWNz aW9uIHdhcyB0byBkZWZlciB0aGUgZnJlZSBjb2RlIHVudGlsIGEKbGF0ZXIgKHNhZmVyKSBwb2lu dC4gSGVuY2UgdGhpcyBwYXRjaCBjaGFuZ2VzIHRoZSB1bnJlZmVyZW5jZSBjYWxsYmFjawp0byBt ZXJlbHkgbW92ZSB0aGUgcmVxdWVzdCBvbnRvIGEgZGVsYXllZCBmcmVlIGxpc3QuIFRoZSBkcml2 ZXIncwpyZXRpcmUgd29ya2VyIHRocmVhZCB3aWxsIHRoZW4gcHJvY2VzcyB0aGUgbGlzdCBhbmQg YWN0dWFsbHkgY2FsbCB0aGUKZnJlZSBmdW5jdGlvbiBvbiB0aGUgcmVxdWVzdHMuCgpbbmV3IHBh dGNoIGluIHNlcmllc10KCkZvcjogVklaLTUxOTAKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNv biA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICAgICAgfCAyMiArKystLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICB8IDQxICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jICAgIHwgIDIgKy0K IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8ICAyICsrCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3JpbmdidWZmZXIuaCB8ICA0ICsrKysKIDcgZmlsZXMgY2hhbmdlZCwgNTAgaW5zZXJ0aW9u cygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggODhhNDc0 Ni4uNjFjM2RiMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0yMTYxLDE0ICsyMTYxLDkg QEAgdm9pZCBpOTE1X2dlbV90cmFja19mYihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2xk LAogICogaW5pdGlhbCByZWZlcmVuY2UgdGFrZW4gdXNpbmcga3JlZl9pbml0CiAgKi8KIHN0cnVj dCBkcm1faTkxNV9nZW1fcmVxdWVzdCB7Ci0JLyoqCi0JICogVW5kZXJseWluZyBvYmplY3QgZm9y IGltcGxlbWVudGluZyB0aGUgc2lnbmFsL3dhaXQgc3R1ZmYuCi0JICogTkI6IE5ldmVyIHJldHVy biB0aGlzIGZlbmNlIG9iamVjdCB0byB1c2VyIGxhbmQhIEl0IGlzIHVuc2FmZSB0bwotCSAqIGxl dCBhbnl0aGluZyBvdXRzaWRlIG9mIHRoZSBpOTE1IGRyaXZlciBnZXQgaG9sZCBvZiB0aGUgZmVu Y2UKLQkgKiBvYmplY3QgYXMgdGhlIGNsZWFuIHVwIHdoZW4gZGVjcmVtZW50aW5nIHRoZSByZWZl cmVuY2UgY291bnQKLQkgKiByZXF1aXJlcyBob2xkaW5nIHRoZSBkcml2ZXIgbXV0ZXggbG9jay4K LQkgKi8KKwkvKiogVW5kZXJseWluZyBvYmplY3QgZm9yIGltcGxlbWVudGluZyB0aGUgc2lnbmFs L3dhaXQgc3R1ZmYuICovCiAJc3RydWN0IGZlbmNlIGZlbmNlOworCXN0cnVjdCBsaXN0X2hlYWQg ZGVsYXlfZnJlZV9saXN0OwogCiAJLyoqIE9uIFdoaWNoIHJpbmcgdGhpcyByZXF1ZXN0IHdhcyBn ZW5lcmF0ZWQgKi8KIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNTsKQEAgLTIyODEsMjEg KzIyNzYsMTAgQEAgaTkxNV9nZW1fcmVxdWVzdF9yZWZlcmVuY2Uoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEpCiBzdGF0aWMgaW5saW5lIHZvaWQKIGk5MTVfZ2VtX3JlcXVlc3RfdW5y ZWZlcmVuY2Uoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiB7Ci0JV0FSTl9PTigh bXV0ZXhfaXNfbG9ja2VkKCZyZXEtPnJpbmctPmRldi0+c3RydWN0X211dGV4KSk7Ci0JZmVuY2Vf cHV0KCZyZXEtPmZlbmNlKTsKLX0KLQotc3RhdGljIGlubGluZSB2b2lkCi1pOTE1X2dlbV9yZXF1 ZXN0X3VucmVmZXJlbmNlX191bmxvY2tlZChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJl cSkKLXsKLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2OwotCiAJaWYgKCFyZXEpCiAJCXJldHVybjsK IAotCWRldiA9IHJlcS0+cmluZy0+ZGV2OwotCWlmIChrcmVmX3B1dF9tdXRleCgmcmVxLT5mZW5j ZS5yZWZjb3VudCwgZmVuY2VfcmVsZWFzZSwgJmRldi0+c3RydWN0X211dGV4KSkKLQkJbXV0ZXhf dW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CisJZmVuY2VfcHV0KCZyZXEtPmZlbmNlKTsKIH0K IAogc3RhdGljIGlubGluZSB2b2lkIGk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKHN0cnVjdCBkcm1f aTkxNV9nZW1fcmVxdWVzdCAqKnBkc3QsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCBhZjc5 NzE2Li40ODI4MzVhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTI2MTYsMTAgKzI2MTYs MjcgQEAgc3RhdGljIHZvaWQgaTkxNV9zZXRfcmVzZXRfc3RhdHVzKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwKIAl9CiB9CiAKLXN0YXRpYyB2b2lkIGk5MTVfZ2VtX3JlcXVlc3Rf ZnJlZShzdHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSkKK3N0YXRpYyB2b2lkIGk5MTVfZ2VtX3JlcXVl c3RfcmVsZWFzZShzdHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVf Z2VtX3JlcXVlc3QgKnJlcSA9IGNvbnRhaW5lcl9vZihyZXFfZmVuY2UsCiAJCQkJCQkgdHlwZW9m KCpyZXEpLCBmZW5jZSk7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHJlcS0+cmlu ZzsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KHJpbmctPmRl dik7CisJdW5zaWduZWQgbG9uZyBmbGFnczsKKworCS8qCisJICogTmVlZCB0byBhZGQgdGhlIHJl cXVlc3QgdG8gYSBkZWZlcnJlZCBkZXJlZmVyZW5jZSBsaXN0IHRvIGJlCisJICogcHJvY2Vzc2Vk IGF0IGEgbXV0ZXggbG9jayBzYWZlIHRpbWUuCisJICovCisJc3Bpbl9sb2NrX2lycXNhdmUoJnJp bmctPmRlbGF5ZWRfZnJlZV9sb2NrLCBmbGFncyk7CisJbGlzdF9hZGRfdGFpbCgmcmVxLT5kZWxh eV9mcmVlX2xpc3QsICZyaW5nLT5kZWxheWVkX2ZyZWVfbGlzdCk7CisJc3Bpbl91bmxvY2tfaXJx cmVzdG9yZSgmcmluZy0+ZGVsYXllZF9mcmVlX2xvY2ssIGZsYWdzKTsKKworCXF1ZXVlX2RlbGF5 ZWRfd29yayhkZXZfcHJpdi0+d3EsICZkZXZfcHJpdi0+bW0ucmV0aXJlX3dvcmssIDApOworfQor CitzdGF0aWMgdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUoc3RydWN0IGRybV9pOTE1X2dlbV9y ZXF1ZXN0ICpyZXEpCit7CiAJc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCA9IHJlcS0+Y3R4Owog CiAJQlVHX09OKCFtdXRleF9pc19sb2NrZWQoJnJlcS0+cmluZy0+ZGV2LT5zdHJ1Y3RfbXV0ZXgp KTsKQEAgLTI2OTYsNyArMjcxMyw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmVuY2Vfb3BzIGk5 MTVfZ2VtX3JlcXVlc3RfZm9wcyA9IHsKIAkuZW5hYmxlX3NpZ25hbGluZwk9IGk5MTVfZ2VtX3Jl cXVlc3RfZW5hYmxlX3NpZ25hbGluZywKIAkuc2lnbmFsZWQJCT0gaTkxNV9nZW1fcmVxdWVzdF9p c19jb21wbGV0ZWQsCiAJLndhaXQJCQk9IGZlbmNlX2RlZmF1bHRfd2FpdCwKLQkucmVsZWFzZQkJ PSBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUsCisJLnJlbGVhc2UJCT0gaTkxNV9nZW1fcmVxdWVzdF9y ZWxlYXNlLAogCS5mZW5jZV92YWx1ZV9zdHIJPSBpOTE1X2ZlbmNlX3ZhbHVlX3N0ciwKIAkudGlt ZWxpbmVfdmFsdWVfc3RyCT0gaTkxNV9mZW5jZV90aW1lbGluZV92YWx1ZV9zdHIsCiB9OwpAQCAt Mjk5Miw2ICszMDA5LDIxIEBAIGk5MTVfZ2VtX3JldGlyZV9yZXF1ZXN0c19yaW5nKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbmcpCiAJCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZyaW5nLT50 cmFjZV9pcnFfcmVxLCBOVUxMKTsKIAl9CiAKKwl3aGlsZSAoIWxpc3RfZW1wdHkoJnJpbmctPmRl bGF5ZWRfZnJlZV9saXN0KSkgeworCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVl c3Q7CisJCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisKKwkJcmVxdWVzdCA9IGxpc3RfZmlyc3RfZW50 cnkoJnJpbmctPmRlbGF5ZWRfZnJlZV9saXN0LAorCQkJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QsCisJCQkJCSAgIGRlbGF5X2ZyZWVfbGlzdCk7CisKKwkJc3Bpbl9sb2NrX2lycXNh dmUoJnJpbmctPmRlbGF5ZWRfZnJlZV9sb2NrLCBmbGFncyk7CisJCWxpc3RfZGVsKCZyZXF1ZXN0 LT5kZWxheV9mcmVlX2xpc3QpOworCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZyaW5nLT5kZWxh eWVkX2ZyZWVfbG9jaywgZmxhZ3MpOworCisJCWk5MTVfZ2VtX3JlcXVlc3RfZnJlZShyZXF1ZXN0 KTsKKwl9CisKIAlXQVJOX09OKGk5MTVfdmVyaWZ5X2xpc3RzKHJpbmctPmRldikpOwogfQogCkBA IC0zMTgyLDcgKzMyMTQsNyBAQCBpOTE1X2dlbV93YWl0X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKIAkJCXJldCA9IF9faTkx NV93YWl0X3JlcXVlc3QocmVxW2ldLCByZXNldF9jb3VudGVyLCB0cnVlLAogCQkJCQkJICBhcmdz LT50aW1lb3V0X25zID4gMCA/ICZhcmdzLT50aW1lb3V0X25zIDogTlVMTCwKIAkJCQkJCSAgZmls ZS0+ZHJpdmVyX3ByaXYpOwotCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlX191bmxvY2tl ZChyZXFbaV0pOworCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKHJlcVtpXSk7CiAJfQog CXJldHVybiByZXQ7CiAKQEAgLTQ0MjUsNyArNDQ1Nyw3IEBAIGk5MTVfZ2VtX3JpbmdfdGhyb3R0 bGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlKQogCWlmIChy ZXQgPT0gMCkKIAkJcXVldWVfZGVsYXllZF93b3JrKGRldl9wcml2LT53cSwgJmRldl9wcml2LT5t bS5yZXRpcmVfd29yaywgMCk7CiAKLQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlX191bmxv Y2tlZCh0YXJnZXQpOworCWk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZlcmVuY2UodGFyZ2V0KTsKIAog CXJldHVybiByZXQ7CiB9CkBAIC01MzEzLDYgKzUzNDUsNyBAQCBpbml0X3JpbmdfbGlzdHMoc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIHsKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+YWN0 aXZlX2xpc3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5yZXF1ZXN0X2xpc3QpOworCUlOSVRf TElTVF9IRUFEKCZyaW5nLT5kZWxheWVkX2ZyZWVfbGlzdCk7CiB9CiAKIHZvaWQgaTkxNV9pbml0 X3ZtKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwppbmRleCA5M2FjNDNjLi41OTU0MWFkIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCkBAIC0xMTI4OSw3ICsxMTI4OSw3IEBAIHN0YXRpYyB2b2lkIGludGVs X21taW9fZmxpcF93b3JrX2Z1bmMoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQogCiAJaW50ZWxf ZG9fbW1pb19mbGlwKG1taW9fZmxpcC0+Y3J0Yyk7CiAKLQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVm ZXJlbmNlX191bmxvY2tlZChtbWlvX2ZsaXAtPnJlcSk7CisJaTkxNV9nZW1fcmVxdWVzdF91bnJl ZmVyZW5jZShtbWlvX2ZsaXAtPnJlcSk7CiAJa2ZyZWUobW1pb19mbGlwKTsKIH0KIApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuYwppbmRleCA4ZjI1NWRlLi45ZWU4MGY1IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9scmMuYwpAQCAtMTgwOCw3ICsxODA4LDkgQEAgc3RhdGljIGludCBsb2dpY2FsX3Jpbmdf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW4K IAlyaW5nLT5kZXYgPSBkZXY7CiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmFjdGl2ZV9saXN0KTsK IAlJTklUX0xJU1RfSEVBRCgmcmluZy0+cmVxdWVzdF9saXN0KTsKKwlJTklUX0xJU1RfSEVBRCgm cmluZy0+ZGVsYXllZF9mcmVlX2xpc3QpOwogCXNwaW5fbG9ja19pbml0KCZyaW5nLT5mZW5jZV9s b2NrKTsKKwlzcGluX2xvY2tfaW5pdCgmcmluZy0+ZGVsYXllZF9mcmVlX2xvY2spOwogCWk5MTVf Z2VtX2JhdGNoX3Bvb2xfaW5pdChkZXYsICZyaW5nLT5iYXRjaF9wb29sKTsKIAlpbml0X3dhaXRx dWV1ZV9oZWFkKCZyaW5nLT5pcnFfcXVldWUpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwppbmRl eCBjYjA4ZDllLi41MmIxYzM3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKQEAgLTczMTcsNyAr NzMxNyw3IEBAIHN0YXRpYyB2b2lkIF9faW50ZWxfcnBzX2Jvb3N0X3dvcmsoc3RydWN0IHdvcmtf c3RydWN0ICp3b3JrKQogCQlnZW42X3Jwc19ib29zdCh0b19pOTE1KHJlcS0+cmluZy0+ZGV2KSwg TlVMTCwKIAkJCSAgICAgICByZXEtPmVtaXR0ZWRfamlmZmllcyk7CiAKLQlpOTE1X2dlbV9yZXF1 ZXN0X3VucmVmZXJlbmNlX191bmxvY2tlZChyZXEpOworCWk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZl cmVuY2UocmVxKTsKIAlrZnJlZShib29zdCk7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3JpbmdidWZmZXIuYwppbmRleCBkMWNlZDMwLi4xMTQ5NGEzIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5jCkBAIC0yMDQwLDcgKzIwNDAsOSBAQCBzdGF0aWMgaW50IGlu dGVsX2luaXRfcmluZ19idWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlJTklUX0xJU1Rf SEVBRCgmcmluZy0+YWN0aXZlX2xpc3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5yZXF1ZXN0 X2xpc3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5leGVjbGlzdF9xdWV1ZSk7CisJSU5JVF9M SVNUX0hFQUQoJnJpbmctPmRlbGF5ZWRfZnJlZV9saXN0KTsKIAlzcGluX2xvY2tfaW5pdCgmcmlu Zy0+ZmVuY2VfbG9jayk7CisJc3Bpbl9sb2NrX2luaXQoJnJpbmctPmRlbGF5ZWRfZnJlZV9sb2Nr KTsKIAlpOTE1X2dlbV9iYXRjaF9wb29sX2luaXQoZGV2LCAmcmluZy0+YmF0Y2hfcG9vbCk7CiAJ cmluZ2J1Zi0+c2l6ZSA9IDMyICogUEFHRV9TSVpFOwogCXJpbmdidWYtPnJpbmcgPSByaW5nOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCmluZGV4IGUyZWViYzAuLjY4MTcz YTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKQEAgLTI5OSw2ICsy OTksMTAgQEAgc3RydWN0ICBpbnRlbF9lbmdpbmVfY3MgewogCSAqLwogCXUzMiBsYXN0X3N1Ym1p dHRlZF9zZXFubzsKIAorCS8qIGRlZmVycmVkIGZyZWUgbGlzdCB0byBhbGxvdyB1bnJlZmVyZW5j aW5nIHJlcXVlc3RzIG91dHNpZGUgdGhlIGRyaXZlciAqLworCXN0cnVjdCBsaXN0X2hlYWQgZGVs YXllZF9mcmVlX2xpc3Q7CisJc3BpbmxvY2tfdCBkZWxheWVkX2ZyZWVfbG9jazsKKwogCWJvb2wg Z3B1X2NhY2hlc19kaXJ0eTsKIAogCXdhaXRfcXVldWVfaGVhZF90IGlycV9xdWV1ZTsKLS0gCjEu OS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=