From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v4 18/38] drm/i915: Added scheduler support to __wait_request() calls Date: Mon, 11 Jan 2016 18:42:47 +0000 Message-ID: <1452537788-32136-19-git-send-email-John.C.Harrison@Intel.com> References: <1448278774-31376-1-git-send-email-John.C.Harrison@Intel.com> <1452537788-32136-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id E1F5D6E517 for ; Mon, 11 Jan 2016 10:43:28 -0800 (PST) In-Reply-To: <1452537788-32136-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBzY2hl ZHVsZXIgY2FuIGNhdXNlIGJhdGNoIGJ1ZmZlcnMsIGFuZCBoZW5jZSByZXF1ZXN0cywgdG8gYmUK c3VibWl0dGVkIHRvIHRoZSByaW5nIG91dCBvZiBvcmRlciBhbmQgYXN5bmNocm9ub3VzbHkgdG8g dGhlaXIKc3VibWlzc2lvbiB0byB0aGUgZHJpdmVyLiBUaHVzIGF0IHRoZSBwb2ludCBvZiB3YWl0 aW5nIGZvciB0aGUKY29tcGxldGlvbiBvZiBhIGdpdmVuIHJlcXVlc3QsIGl0IGlzIG5vdCBldmVu IGd1YXJhbnRlZWQgdGhhdCB0aGUKcmVxdWVzdCBoYXMgYWN0dWFsbHkgYmVlbiBzZW50IHRvIHRo ZSBoYXJkd2FyZSB5ZXQuIEV2ZW4gaXQgaXMgaGFzCmJlZW4gc2VudCwgaXQgaXMgcG9zc2libGUg dGhhdCBpdCBjb3VsZCBiZSBwcmUtZW1wdGVkIGFuZCB0aHVzCid1bnNlbnQnLgoKVGhpcyBtZWFu cyB0aGF0IGl0IGlzIG5lY2Vzc2FyeSB0byBiZSBhYmxlIHRvIHN1Ym1pdCByZXF1ZXN0cyB0byB0 aGUKaGFyZHdhcmUgZHVyaW5nIHRoZSB3YWl0IGNhbGwgaXRzZWxmLiBVbmZvcnR1bmF0ZWx5LCB3 aGlsZSBzb21lCmNhbGxlcnMgb2YgX193YWl0X3JlcXVlc3QoKSByZWxlYXNlIHRoZSBtdXRleCBs b2NrIGZpcnN0LCBvdGhlcnMgZG8Kbm90IChhbmQgYXBwYXJlbnRseSBjYW4gbm90KS4gSGVuY2Ug dGhlcmUgaXMgdGhlIGFiaWxpdHkgdG8gZGVhZGxvY2sKYXMgdGhlIHdhaXQgc3RhbGxzIGZvciBz dWJtaXNzaW9uIGJ1dCB0aGUgYXN5bmNocm9ub3VzIHN1Ym1pc3Npb24gaXMKc3RhbGxlZCBmb3Ig dGhlIG11dGV4IGxvY2suCgpUaGlzIGNoYW5nZSBob29rcyB0aGUgc2NoZWR1bGVyIGluIHRvIHRo ZSBfX3dhaXRfcmVxdWVzdCgpIGNvZGUgdG8KZW5zdXJlIGNvcnJlY3QgYmVoYXZpb3VyLiBUaGF0 IGlzLCBmbHVzaCB0aGUgdGFyZ2V0IGJhdGNoIGJ1ZmZlcgp0aHJvdWdoIHRvIHRoZSBoYXJkd2Fy ZSBhbmQgZG8gbm90IGRlYWRsb2NrIHdhaXRpbmcgZm9yIHNvbWV0aGluZyB0aGF0CmNhbm5vdCBj dXJyZW50bHkgYmUgc3VibWl0dGVkLiBJbnN0ZWFkLCB0aGUgd2FpdCBjYWxsIG11c3QgcmV0dXJu CkVBR0FJTiBhdCBsZWFzdCBhcyBmYXIgYmFjayBhcyBuZWNlc3NhcnkgdG8gcmVsZWFzZSB0aGUg bXV0ZXggbG9jayBhbmQKYWxsb3cgdGhlIHNjaGVkdWxlcidzIGFzeW5jaHJvbm91cyBwcm9jZXNz aW5nIHRvIGdldCBpbiBhbmQgaGFuZGxlIHRoZQpwcmUtZW1wdGlvbiBvcGVyYXRpb24gYW5kIGV2 ZW50dWFsbHkgKHJlLSlzdWJtaXQgdGhlIHdvcmsuCgp2MzogUmVtb3ZlZCB0aGUgZXhwbGljaXQg c2NoZWR1bGVyIGZsdXNoIGZyb20gaTkxNV93YWl0X3JlcXVlc3QoKS4KVGhpcyBpcyBubyBsb25n ZXIgbmVjZXNzYXJ5IGFuZCB3YXMgY2F1c2luZyB1bmludGVuZGVkIGNoYW5nZXMgdG8gdGhlCnNj aGVkdWxlciBwcmlvcml0eSBsZXZlbCB3aGljaCBicm9rZSBhIHZhbGlkYXRpb24gdGVhbSB0ZXN0 LgoKdjQ6IENvcnJlY3RlZCB0aGUgZm9ybWF0IG9mIHNvbWUgY29tbWVudHMgdG8ga2VlcCB0aGUg c3R5bGUgY2hlY2tlcgpoYXBweS4KCkZvcjogVklaLTE1ODcKU2lnbmVkLW9mZi1ieTogSm9obiBI YXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oICAgICAgICAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtLmMgICAgICAgICB8IDM3ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zY2hlZHVsZXIuYyAgIHwgMjAgKysrKysrKysrKysr KysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxlci5oICAgfCAgMiArKwog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jICAgIHwgIDUgKysrLS0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyB8ICAyICstCiA2IGZpbGVzIGNoYW5n ZWQsIDU4IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oCmluZGV4IDMxYmYzNDkuLjI5MDZiYjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAt MzAyMSw3ICszMDIxLDggQEAgaW50IF9faTkxNV93YWl0X3JlcXVlc3Qoc3RydWN0IGRybV9pOTE1 X2dlbV9yZXF1ZXN0ICpyZXEsCiAJCQl1bnNpZ25lZCByZXNldF9jb3VudGVyLAogCQkJYm9vbCBp bnRlcnJ1cHRpYmxlLAogCQkJczY0ICp0aW1lb3V0LAotCQkJc3RydWN0IGludGVsX3Jwc19jbGll bnQgKnJwcyk7CisJCQlzdHJ1Y3QgaW50ZWxfcnBzX2NsaWVudCAqcnBzLAorCQkJYm9vbCBpc19s b2NrZWQpOwogaW50IF9fbXVzdF9jaGVjayBpOTE1X3dhaXRfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKnJlcSk7CiBpbnQgaTkxNV9nZW1fZmF1bHQoc3RydWN0IHZtX2FyZWFf c3RydWN0ICp2bWEsIHN0cnVjdCB2bV9mYXVsdCAqdm1mKTsKIGludCBfX211c3RfY2hlY2sKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IGNlMDU1MWEuLjU5MDI0YTMgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYwpAQCAtMTIyMSw3ICsxMjIxLDggQEAgaW50IF9faTkxNV93YWl0X3JlcXVlc3Qo c3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCiAJCQl1bnNpZ25lZCByZXNldF9jb3Vu dGVyLAogCQkJYm9vbCBpbnRlcnJ1cHRpYmxlLAogCQkJczY0ICp0aW1lb3V0LAotCQkJc3RydWN0 IGludGVsX3Jwc19jbGllbnQgKnJwcykKKwkJCXN0cnVjdCBpbnRlbF9ycHNfY2xpZW50ICpycHMs CisJCQlib29sIGlzX2xvY2tlZCkKIHsKIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nID0g aTkxNV9nZW1fcmVxdWVzdF9nZXRfcmluZyhyZXEpOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSByaW5nLT5kZXY7CkBAIC0xMjMwLDggKzEyMzEsMTAgQEAgaW50IF9faTkxNV93YWl0X3JlcXVl c3Qoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCiAJREVGSU5FX1dBSVQod2FpdCk7 CiAJdW5zaWduZWQgbG9uZyB0aW1lb3V0X2V4cGlyZTsKIAlzNjQgYmVmb3JlLCBub3c7Ci0JaW50 IHJldDsKKwlpbnQgcmV0ID0gMDsKKwlib29sICAgIGJ1c3k7CiAKKwltaWdodF9zbGVlcCgpOwog CVdBUk4oIWludGVsX2lycXNfZW5hYmxlZChkZXZfcHJpdiksICJJUlFzIGRpc2FibGVkIik7CiAK IAlpZiAoaTkxNV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQocmVxKSkKQEAgLTEyNzYsNiArMTI3OSwy NiBAQCBpbnQgX19pOTE1X3dhaXRfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg KnJlcSwKIAkJCWJyZWFrOwogCQl9CiAKKwkJaWYgKGlzX2xvY2tlZCkgeworCQkJLyoKKwkJCSAq IElmIHRoaXMgcmVxdWVzdCBpcyBiZWluZyBwcm9jZXNzZWQgYnkgdGhlIHNjaGVkdWxlcgorCQkJ ICogdGhlbiBpdCBpcyB1bnNhZmUgdG8gc2xlZXAgd2l0aCB0aGUgbXV0ZXggbG9jayBoZWxkCisJ CQkgKiBhcyB0aGUgc2NoZWR1bGVyIG1heSByZXF1aXJlIHRoZSBsb2NrIGluIG9yZGVyIHRvCisJ CQkgKiBwcm9ncmVzcyB0aGUgcmVxdWVzdC4KKwkJCSAqLworCQkJaWYgKGk5MTVfc2NoZWR1bGVy X2lzX3JlcXVlc3RfdHJhY2tlZChyZXEsIE5VTEwsICZidXN5KSkgeworCQkJCWlmIChidXN5KSB7 CisJCQkJCXJldCA9IC1FQUdBSU47CisJCQkJCWJyZWFrOworCQkJCX0KKwkJCX0KKworCQkJLyoK KwkJCSAqIElmIHRoZSByZXF1ZXN0IGlzIG5vdCB0cmFja2VkIGJ5IHRoZSBzY2hlZHVsZXIKKwkJ CSAqIHRoZW4gdGhlIHJlZ3VsYXIgdGVzdCBjYW4gYmUgZG9uZS4KKwkJCSAqLworCQl9CisKIAkJ aWYgKGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkKHJlcSkpIHsKIAkJCXJldCA9IDA7CiAJCQli cmVhazsKQEAgLTE0ODgsNyArMTUxMSw3IEBAIGk5MTVfd2FpdF9yZXF1ZXN0KHN0cnVjdCBkcm1f aTkxNV9nZW1fcmVxdWVzdCAqcmVxKQogCiAJcmV0ID0gX19pOTE1X3dhaXRfcmVxdWVzdChyZXEs CiAJCQkJICBhdG9taWNfcmVhZCgmZGV2X3ByaXYtPmdwdV9lcnJvci5yZXNldF9jb3VudGVyKSwK LQkJCQkgIGludGVycnVwdGlibGUsIE5VTEwsIE5VTEwpOworCQkJCSAgaW50ZXJydXB0aWJsZSwg TlVMTCwgTlVMTCwgdHJ1ZSk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtMTYwMSw3 ICsxNjI0LDcgQEAgaTkxNV9nZW1fb2JqZWN0X3dhaXRfcmVuZGVyaW5nX19ub25ibG9ja2luZyhz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1 Y3RfbXV0ZXgpOwogCWZvciAoaSA9IDA7IHJldCA9PSAwICYmIGkgPCBuOyBpKyspCiAJCXJldCA9 IF9faTkxNV93YWl0X3JlcXVlc3QocmVxdWVzdHNbaV0sIHJlc2V0X2NvdW50ZXIsIHRydWUsCi0J CQkJCSAgTlVMTCwgcnBzKTsKKwkJCQkJICBOVUxMLCBycHMsIGZhbHNlKTsKIAltdXRleF9sb2Nr KCZkZXYtPnN0cnVjdF9tdXRleCk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CkBAIC0z NDU4LDcgKzM0ODEsNyBAQCBpOTE1X2dlbV93YWl0X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKIAkJaWYgKHJldCA9PSAwKQog CQkJcmV0ID0gX19pOTE1X3dhaXRfcmVxdWVzdChyZXFbaV0sIHJlc2V0X2NvdW50ZXIsIHRydWUs CiAJCQkJCQkgIGFyZ3MtPnRpbWVvdXRfbnMgPiAwID8gJmFyZ3MtPnRpbWVvdXRfbnMgOiBOVUxM LAotCQkJCQkJICBmaWxlLT5kcml2ZXJfcHJpdik7CisJCQkJCQkgIGZpbGUtPmRyaXZlcl9wcml2 LCBmYWxzZSk7CiAJCWk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZlcmVuY2UocmVxW2ldKTsKIAl9CiAJ cmV0dXJuIHJldDsKQEAgLTM0OTEsNyArMzUxNCw3IEBAIF9faTkxNV9nZW1fb2JqZWN0X3N5bmMo c3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAkJCQkJICBhdG9taWNfcmVhZCgmaTkx NS0+Z3B1X2Vycm9yLnJlc2V0X2NvdW50ZXIpLAogCQkJCQkgIGk5MTUtPm1tLmludGVycnVwdGli bGUsCiAJCQkJCSAgTlVMTCwKLQkJCQkJICAmaTkxNS0+cnBzLnNlbWFwaG9yZXMpOworCQkJCQkg ICZpOTE1LT5ycHMuc2VtYXBob3JlcywgdHJ1ZSk7CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4gcmV0 OwogCkBAIC00NDUwLDcgKzQ0NzMsNyBAQCBpOTE1X2dlbV9yaW5nX3Rocm90dGxlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKIAlpZiAodGFyZ2V0ID09IE5V TEwpCiAJCXJldHVybiAwOwogCi0JcmV0ID0gX19pOTE1X3dhaXRfcmVxdWVzdCh0YXJnZXQsIHJl c2V0X2NvdW50ZXIsIHRydWUsIE5VTEwsIE5VTEwpOworCXJldCA9IF9faTkxNV93YWl0X3JlcXVl c3QodGFyZ2V0LCByZXNldF9jb3VudGVyLCB0cnVlLCBOVUxMLCBOVUxMLCBmYWxzZSk7CiAJaWYg KHJldCA9PSAwKQogCQlxdWV1ZV9kZWxheWVkX3dvcmsoZGV2X3ByaXYtPndxLCAmZGV2X3ByaXYt Pm1tLnJldGlyZV93b3JrLCAwKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9zY2hlZHVsZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1bGVyLmMK aW5kZXggMGI3ZjFkZi4uOGMwNWRkMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9zY2hlZHVsZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxl ci5jCkBAIC04ODEsNiArODgxLDI2IEBAIHN0YXRpYyBpbnQgaTkxNV9zY2hlZHVsZXJfcmVtb3Zl X2RlcGVuZGVudChzdHJ1Y3QgaTkxNV9zY2hlZHVsZXIgKnNjaGVkdWxlciwKIAlyZXR1cm4gMDsK IH0KIAorYm9vbCBpOTE1X3NjaGVkdWxlcl9pc19yZXF1ZXN0X3RyYWNrZWQoc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEsCisJCQkJICAgICAgIGJvb2wgKmNvbXBsZXRlZCwgYm9vbCAq YnVzeSkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSByZXEtPnJpbmct PmRldi0+ZGV2X3ByaXZhdGU7CisJc3RydWN0IGk5MTVfc2NoZWR1bGVyICAgKnNjaGVkdWxlciA9 IGRldl9wcml2LT5zY2hlZHVsZXI7CisKKwlpZiAoIXNjaGVkdWxlcikKKwkJcmV0dXJuIGZhbHNl OworCisJaWYgKHJlcS0+c2NoZWR1bGVyX3FlID09IE5VTEwpCisJCXJldHVybiBmYWxzZTsKKwor CWlmIChjb21wbGV0ZWQpCisJCSpjb21wbGV0ZWQgPSBJOTE1X1NRU19JU19DT01QTEVURShyZXEt PnNjaGVkdWxlcl9xZSk7CisJaWYgKGJ1c3kpCisJCSpidXN5ICAgICAgPSBJOTE1X1NRU19JU19R VUVVRUQocmVxLT5zY2hlZHVsZXJfcWUpOworCisJcmV0dXJuIHRydWU7Cit9CisKIGludCBpOTE1 X3NjaGVkdWxlcl9jbG9zZWZpbGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9m aWxlICpmaWxlKQogewogCXN0cnVjdCBpOTE1X3NjaGVkdWxlcl9xdWV1ZV9lbnRyeSAgKm5vZGU7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxlci5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zY2hlZHVsZXIuaAppbmRleCA1NGQ4N2ZiLi5jM2U3YWM2 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxlci5oCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1bGVyLmgKQEAgLTkzLDUgKzkzLDcgQEAg aW50ICAgICAgICAgaTkxNV9zY2hlZHVsZXJfcXVldWVfZXhlY2J1ZmZlcihzdHJ1Y3QgaTkxNV9z Y2hlZHVsZXJfcXVldWVfZW50cnkgKnEKIGJvb2wgICAgICAgIGk5MTVfc2NoZWR1bGVyX25vdGlm eV9yZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKTsKIHZvaWQgICAgICAg IGk5MTVfc2NoZWR1bGVyX3dha2V1cChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHZvaWQgICAg ICAgIGk5MTVfZ2VtX3NjaGVkdWxlcl93b3JrX2hhbmRsZXIoc3RydWN0IHdvcmtfc3RydWN0ICp3 b3JrKTsKK2Jvb2wgICAgICAgIGk5MTVfc2NoZWR1bGVyX2lzX3JlcXVlc3RfdHJhY2tlZChzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKKwkJCQkJICAgICAgYm9vbCAqY29tcGxldGVk LCBib29sICpidXN5KTsKIAogI2VuZGlmICAvKiBfSTkxNV9TQ0hFRFVMRVJfSF8gKi8KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCBjMDBiYzUwLi41OGM0NjRmIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0xMTI1OCw3ICsxMTI1OCw4IEBAIHN0YXRp YyB2b2lkIGludGVsX21taW9fZmxpcF93b3JrX2Z1bmMoc3RydWN0IHdvcmtfc3RydWN0ICp3b3Jr KQogCQlXQVJOX09OKF9faTkxNV93YWl0X3JlcXVlc3QobW1pb19mbGlwLT5yZXEsCiAJCQkJCSAg ICBtbWlvX2ZsaXAtPmNydGMtPnJlc2V0X2NvdW50ZXIsCiAJCQkJCSAgICBmYWxzZSwgTlVMTCwK LQkJCQkJICAgICZtbWlvX2ZsaXAtPmk5MTUtPnJwcy5tbWlvZmxpcHMpKTsKKwkJCQkJICAgICZt bWlvX2ZsaXAtPmk5MTUtPnJwcy5tbWlvZmxpcHMsCisJCQkJCSAgICBmYWxzZSkpOwogCQlpOTE1 X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKG1taW9fZmxpcC0+cmVxKTsKIAl9CiAKQEAgLTEzMjU4 LDcgKzEzMjU5LDcgQEAgc3RhdGljIGludCBpbnRlbF9hdG9taWNfcHJlcGFyZV9jb21taXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKIAogCQkJcmV0ID0gX19pOTE1X3dhaXRfcmVxdWVzdChpbnRl bF9wbGFuZV9zdGF0ZS0+d2FpdF9yZXEsCiAJCQkJCQkgIHJlc2V0X2NvdW50ZXIsIHRydWUsCi0J CQkJCQkgIE5VTEwsIE5VTEwpOworCQkJCQkJICBOVUxMLCBOVUxMLCBmYWxzZSk7CiAKIAkJCS8q IFN3YWxsb3cgLUVJTyBlcnJvcnMgdG8gYWxsb3cgdXBkYXRlcyBkdXJpbmcgaHcgbG9ja3VwLiAq LwogCQkJaWYgKHJldCA9PSAtRUlPKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZl ci5jCmluZGV4IGE5M2JiY2UuLjBhZTcwYTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmMKQEAgLTIyOTQsNyArMjI5NCw3IEBAIGludCBpbnRlbF9yaW5nX2lkbGUoc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIAlyZXR1cm4gX19pOTE1X3dhaXRfcmVxdWVzdChy ZXEsCiAJCQkJICAgYXRvbWljX3JlYWQoJnRvX2k5MTUocmluZy0+ZGV2KS0+Z3B1X2Vycm9yLnJl c2V0X2NvdW50ZXIpLAogCQkJCSAgIHRvX2k5MTUocmluZy0+ZGV2KS0+bW0uaW50ZXJydXB0aWJs ZSwKLQkJCQkgICBOVUxMLCBOVUxMKTsKKwkJCQkgICBOVUxMLCBOVUxMLCB0cnVlKTsKIH0KIAog aW50IGludGVsX3JpbmdfYWxsb2NfcmVxdWVzdF9leHRyYXMoc3RydWN0IGRybV9pOTE1X2dlbV9y ZXF1ZXN0ICpyZXF1ZXN0KQotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==