From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: [PATCH v4] drm/i915/execlists: Move WA_TAIL_DWORDS to callee Date: Tue, 9 Feb 2016 15:09:34 +0000 Message-ID: <1455030574-5345-1-git-send-email-david.s.gordon@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 90D936E4E4 for ; Tue, 9 Feb 2016 07:09:48 -0800 (PST) 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 Cc: Ben Widawsky List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CgpDdXJyZW50bHkg ZW1pdC1yZXF1ZXN0IHN0YXJ0cyB3cml0aW5nIHRvIHRoZSByaW5nIGFuZCByZXNlcnZlcyBzcGFj ZQpmb3IgYSB3b3JrYXJvdW5kIHRvIGJlIGVtaXR0ZWQgbGF0ZXIgd2hpbHN0IHN1Ym1pdHRpbmcg dGhlIHJlcXVlc3QuIEl0CmlzIGVhc2llciB0byByZWFkIGlmIHRoZSBjYWxsZXIgb25seSBhbGxv Y2F0ZXMgc3VmZmljaWVudCBzcGFjZSBmb3IKaXRzIGFjY2VzcyAodGhlbiB0aGUgcmVhZGVyIGNh biBxdWlja2x5IHZlcmlmeSB0aGF0IHRoZSByaW5nIGJlZ2luCmFsbG9jYXRlcyB0aGUgZXhhY3Qg c3BhY2UgZm9yIHRoZSBudW1iZXIgb2YgZHdvcmRzIGVtaXR0ZWQpIGFuZCBjbG9zZXMKdGhlIGFj Y2VzcyB0byB0aGUgcmluZy4gRHVyaW5nIHN1Ym1pdCwgaWYgd2UgbmVlZCB0byBhZGQgdGhlIHdv cmthcm91bmQsCndlIGNhbiByZWFjcXVpcmUgcmluZyBhY2Nlc3MsIGluIHRoZSBhc3N1cmFuY2Ug dGhhdCB3ZSByZXNlcnZlZCBzcGFjZQpmb3Igb3Vyc2VsdmVzIHdoZW4gYmVnaW5uaW5nIHRoZSBy ZXF1ZXN0LgoKdjM6CiAgICBSZWluc3RhdGVkICNkZWZpbmUgZm9yIFdBX1RBSUxfRFdPUkRTIHNv IHdlIGNvdWxkIGFjY29tbW9kYXRlIEdQVXMKICAgIHRoYXQgcmVxdWlyZWQgZGlmZmVyZW50IGFt b3VudHMgb2YgcGFkZGluZywgZ2VuZXJhbGlzZWQgTk9PUCBmaWxsCiAgICBbUm9kcmlnbyBWaXZp XSwgYWRkZWQgVy9BIHNwYWNlIHRvIHJlc2VydmVkIGFtb3VudCBhbmQgdXBkYXRlZAogICAgY29k ZSBjb21tZW50cyBbRGF2ZSBHb3Jkb25dLAoKdjQ6CiAgICBNYWRlICNkZWZpbmUgZm9yIFdBX1RB SUxfRFdPUkRTIGEgZnVuY3Rpb24tdHlwZSBtYWNybyBpbiBjYXNlIHdlCiAgICB3YW50IGRpZmZl cmVudCB2YWx1ZXMgb24gZGlmZmVyZW50IHBsYXRmb3JtcyAob3IgZW5naW5lcyEpLiBCdXQKICAg IHRoZSBjdXJyZW50IHZhbHVlIGlzIHN0aWxsIHRoZSBjb25zdGFudCAoMikgb24gYWxsIHBsYXRm b3Jtcywgc28KICAgIHRoaXMgZG9lc24ndCBhZGQgYW55IG92ZXJoZWFkLgoKT3JpZ2luYWxseS1i eTogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZpdmlAZ21haWwuY29tPgpSZXdyaXR0ZW4tYnk6IENo cmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpGdXJ0aGVyLXR3ZWFrZWQtYnk6 IERhdmUgR29yZG9uIDxkYXZpZC5zLmdvcmRvbkBpbnRlbC5jb20+CgpTaWduZWQtb2ZmLWJ5OiBE YXZlIEdvcmRvbiA8ZGF2aWQucy5nb3Jkb25AaW50ZWwuY29tPgpDYzogUm9kcmlnbyBWaXZpIDxy b2RyaWdvLnZpdmlAZ21haWwuY29tPgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxz b24uY28udWs+CkNjOiBEYXZlIEdvcmRvbiA8ZGF2aWQucy5nb3Jkb25AaW50ZWwuY29tPgpDYzog QmVuIFdpZGF3c2t5IDxiZW5qYW1pbi53aWRhd3NreUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgfCA4NCArKysrKysrKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwppbmRleCAzYTAzNjQ2Li5mMmYyZDQ1IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwpAQCAtMjI1LDYgKzIyNSwxNyBAQCBlbnVtIHsKICNk ZWZpbmUgR0VOOF9DVFhfSURfU0hJRlQgMzIKICNkZWZpbmUgQ1RYX1JDU19JTkRJUkVDVF9DVFhf T0ZGU0VUX0RFRkFVTFQgIDB4MTcKIAorLyoKKyAqIFJlc2VydmUgc3BhY2UgZm9yIHNvbWUgTk9P UHMgYXQgdGhlIGVuZCBvZiBlYWNoIHJlcXVlc3QsIHRvIGJlIHVzZWQgYnkKKyAqIGEgd29ya2Fy b3VuZCBmb3Igbm90IGJlaW5nIGFsbG93ZWQgdG8gZG8gbGl0ZSByZXN0b3JlIHdpdGggSEVBRD09 VEFJTAorICogKFdhSWRsZUxpdGVSZXN0b3JlKS4KKyAqCisgKiBUaGUgbnVtYmVyIG9mIE5PT1Bz IGlzIHRoZSBzYW1lIGNvbnN0YW50IG9uIGFsbCBjdXJyZW50IHBsYXRmb3JtcyB0aGF0CisgKiBy ZXF1aXJlIHRoaXMsIGJ1dCBpbiB0aGVvcnkgY291bGQgYmUgYSBwbGF0Zm9ybS0gb3IgZW5naW5l LSBzcGVjaWZpYworICogdmFsdWUgYmFzZWQgb24gdGhlIHJlcXVlc3QuCisgKi8KKyNkZWZpbmUg V0FfVEFJTF9EV09SRFMocmVxdWVzdCkJKDIpCisKIHN0YXRpYyBpbnQgaW50ZWxfbHJfY29udGV4 dF9waW4oc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKIAkJCQlzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICplbmdpbmUpOwogc3RhdGljIHZvaWQgbHJjX3NldHVwX2hhcmR3YXJlX3N0YXR1c19wYWdl KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCkBAIC00NjIsMTAgKzQ3Myw5IEBAIHN0YXRp YyB2b2lkIGV4ZWNsaXN0c19jb250ZXh0X3VucXVldWUoc3RydWN0IGludGVsX2VuZ2luZV9jcyAq cmluZykKIAkJICovCiAJCWlmIChyZXEwLT5lbHNwX3N1Ym1pdHRlZCkgewogCQkJLyoKLQkJCSAq IEFwcGx5IHRoZSB3YSBOT09QUyB0byBwcmV2ZW50IHJpbmc6SEVBRCA9PSByZXE6VEFJTAotCQkJ ICogYXMgd2UgcmVzdWJtaXQgdGhlIHJlcXVlc3QuIFNlZSBnZW44X2VtaXRfcmVxdWVzdCgpCi0J CQkgKiBmb3Igd2hlcmUgd2UgcHJlcGFyZSB0aGUgcGFkZGluZyBhZnRlciB0aGUgZW5kIG9mIHRo ZQotCQkJICogcmVxdWVzdC4KKwkJCSAqIENvbnN1bWUgdGhlIFcvQSBOT09QcyB0byBwcmV2ZW50 IHJpbmc6SEVBRCA9PSByZXE6VEFJTCBhcworCQkJICogd2UgcmVzdWJtaXQgdGhlIHJlcXVlc3Qu IFNlZSBpbnRlbF9sb2dpY2FsX3Jpbmdfc3VibWl0KCkKKwkJCSAqIHdoZXJlIHdlIHByZXBhcmUg dGhlIHBhZGRpbmcgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUgcmVxdWVzdC4KIAkJCSAqLwogCQkJc3Ry dWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdidWY7CiAKQEAgLTc1MiwzMyArNzYyLDQ3IEBAIHN0 YXRpYyBpbnQgbG9naWNhbF9yaW5nX3dhaXRfZm9yX3NwYWNlKHN0cnVjdCBkcm1faTkxNV9nZW1f cmVxdWVzdCAqcmVxLAogfQogCiAvKgotICogaW50ZWxfbG9naWNhbF9yaW5nX2FkdmFuY2VfYW5k X3N1Ym1pdCgpIC0gYWR2YW5jZSB0aGUgdGFpbCBhbmQgc3VibWl0IHRoZSB3b3JrbG9hZAotICog QHJlcXVlc3Q6IFJlcXVlc3QgdG8gYWR2YW5jZSB0aGUgbG9naWNhbCByaW5nYnVmZmVyIG9mLgor ICogaW50ZWxfbG9naWNhbF9yaW5nX3N1Ym1pdCgpIC0gc3VibWl0IHRoZSB3b3JrbG9hZCAodG8g R3VDIG9yIGV4ZWNsaXN0IHF1ZXVlKQorICogQHJlcXVlc3Q6IFJlcXVlc3QgdG8gc3VibWl0CiAg KgotICogVGhlIHRhaWwgaXMgdXBkYXRlZCBpbiBvdXIgbG9naWNhbCByaW5nYnVmZmVyIHN0cnVj dCwgbm90IGluIHRoZSBhY3R1YWwgY29udGV4dC4gV2hhdAotICogcmVhbGx5IGhhcHBlbnMgZHVy aW5nIHN1Ym1pc3Npb24gaXMgdGhhdCB0aGUgY29udGV4dCBhbmQgY3VycmVudCB0YWlsIHdpbGwg YmUgcGxhY2VkCi0gKiBvbiBhIHF1ZXVlIHdhaXRpbmcgZm9yIHRoZSBFTFNQIHRvIGJlIHJlYWR5 IHRvIGFjY2VwdCBhIG5ldyBjb250ZXh0IHN1Ym1pc3Npb24uIEF0IHRoYXQKLSAqIHBvaW50LCB0 aGUgdGFpbCAqaW5zaWRlKiB0aGUgY29udGV4dCBpcyB1cGRhdGVkIGFuZCB0aGUgRUxTUCB3cml0 dGVuIHRvLgorICogVGhlIHRhaWwgaXMgdXBkYXRlZCBpbiBvdXIgbG9naWNhbCByaW5nYnVmZmVy IHN0cnVjdCwgbm90IGluIHRoZSBhY3R1YWwKKyAqIGNvbnRleHQuIFdoYXQgcmVhbGx5IGhhcHBl bnMgZHVyaW5nIHN1Ym1pc3Npb24gaXMgdGhhdCB0aGUgY29udGV4dCBhbmQKKyAqIGN1cnJlbnQg dGFpbCB3aWxsIGJlIHBsYWNlZCBvbiBhIHF1ZXVlIHdhaXRpbmcgZm9yIHRoZSBFTFNQIHRvIGJl IHJlYWR5IAorICogdG8gYWNjZXB0IGEgbmV3IGNvbnRleHQgc3VibWlzc2lvbi4gQXQgdGhhdCBw b2ludCwgdGhlIHRhaWwgKmluc2lkZSogdGhlCisgKiBjb250ZXh0IGlzIHVwZGF0ZWQgYW5kIHRo ZSBFTFNQIHdyaXR0ZW4gdG8gYnkgdGhlIHN1Ym1pdHRpbmcgYWdlbnQgaS5lLgorICogZWl0aGVy IHRoZSBkcml2ZXIgKGluIGV4ZWNsaXN0IG1vZGUpLCBvciB0aGUgR3VDIChpbiBHdUMtc3VibWlz c2lvbiBtb2RlKS4KICAqLwogc3RhdGljIGludAotaW50ZWxfbG9naWNhbF9yaW5nX2FkdmFuY2Vf YW5kX3N1Ym1pdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpCitpbnRlbF9s b2dpY2FsX3Jpbmdfc3VibWl0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkK IHsKIAlzdHJ1Y3QgaW50ZWxfcmluZ2J1ZmZlciAqcmluZ2J1ZiA9IHJlcXVlc3QtPnJpbmdidWY7 CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gcmVxdWVzdC0+aTkxNTsKIAlz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUgPSByZXF1ZXN0LT5yaW5nOworCWludCBwYWRk aW5nID0gV0FfVEFJTF9EV09SRFMocmVxdWVzdCk7CiAKLQlpbnRlbF9sb2dpY2FsX3JpbmdfYWR2 YW5jZShyaW5nYnVmKTsKIAlyZXF1ZXN0LT50YWlsID0gcmluZ2J1Zi0+dGFpbDsKIAogCS8qCi0J ICogSGVyZSB3ZSBhZGQgdHdvIGV4dHJhIE5PT1BzIGFzIHBhZGRpbmcgdG8gYXZvaWQKLQkgKiBs aXRlIHJlc3RvcmUgb2YgYSBjb250ZXh0IHdpdGggSEVBRD09VEFJTC4KLQkgKgotCSAqIENhbGxl ciBtdXN0IHJlc2VydmUgV0FfVEFJTF9EV09SRFMgZm9yIHVzIQorCSAqIEZpbGwgaW4gYSBmZXcg Tk9PUHMgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUgcmVxdWVzdCBwcm9wZXIsCisJICogYXMgYSBidWZm ZXIgYmV0d2VlbiByZXF1ZXN0cyB0byBiZSB1c2VkIGJ5IGEgd29ya2Fyb3VuZAorCSAqIGZvciBu b3QgYmVpbmcgYWxsb3dlZCB0byBkbyBsaXRlIHJlc3RvcmUgd2l0aCBIRUFEPT1UQUlMLgorCSAq IChXYUlkbGVMaXRlUmVzdG9yZSkuIFRoZXNlIHdvcmRzIG1heSBiZSBjb25zdW1lZCBieSB0aGUK KwkgKiBzdWJtaXNzaW9uIG1lY2hhbmlzbSBpZiBhIGNvbnRleHQgaXMgKnJlKnN1Ym1pdHRlZCB3 aGlsZQorCSAqIChwb3RlbnRpYWxseSkgc3RpbGwgYWN0aXZlOyBvdGhlcndpc2UsIHRoZXkgd2ls bCBiZSBsZWZ0CisJICogYXMgYSBoYXJtbGVzcyBwcmVhbWJsZSB0byB0aGUgbmV4dCByZXF1ZXN0 LgogCSAqLwotCWludGVsX2xvZ2ljYWxfcmluZ19lbWl0KHJpbmdidWYsIE1JX05PT1ApOwotCWlu dGVsX2xvZ2ljYWxfcmluZ19lbWl0KHJpbmdidWYsIE1JX05PT1ApOwotCWludGVsX2xvZ2ljYWxf cmluZ19hZHZhbmNlKHJpbmdidWYpOworCWlmIChwYWRkaW5nID4gMCkgeworCQkvKiBTYWZlIGJl Y2F1c2Ugd2UgcmVzZXJ2ZWQgdGhlIHNwYWNlIGVhcmxpZXIgKi8KKwkJaW50IHJldCA9IGludGVs X2xvZ2ljYWxfcmluZ19iZWdpbihyZXF1ZXN0LCBwYWRkaW5nKTsKKwkJaWYgKFdBUk5fT04ocmV0 ICE9IDApKQorCQkJcmV0dXJuIHJldDsKKworCQlkbworCQkJaW50ZWxfbG9naWNhbF9yaW5nX2Vt aXQocmluZ2J1ZiwgTUlfTk9PUCk7CisJCXdoaWxlICgtLXBhZGRpbmcpOworCisJCWludGVsX2xv Z2ljYWxfcmluZ19hZHZhbmNlKHJpbmdidWYpOworCX0KIAogCWlmIChpbnRlbF9yaW5nX3N0b3Bw ZWQoZW5naW5lKSkKIAkJcmV0dXJuIDA7CkBAIC05MDcsNyArOTMxLDggQEAgaW50IGludGVsX2xv Z2ljYWxfcmluZ19yZXNlcnZlX3NwYWNlKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVx dWVzdCkKIAkgKiBhZGRpbmcgYW55IGNvbW1hbmRzIHRvIGl0IHRoZW4gdGhlcmUgbWlnaHQgbm90 IGFjdHVhbGx5IGJlCiAJICogc3VmZmljaWVudCByb29tIGZvciB0aGUgc3VibWlzc2lvbiBjb21t YW5kcy4KIAkgKi8KLQlpbnRlbF9yaW5nX3Jlc2VydmVkX3NwYWNlX3Jlc2VydmUocmVxdWVzdC0+ cmluZ2J1ZiwgTUlOX1NQQUNFX0ZPUl9BRERfUkVRVUVTVCk7CisJaW50ZWxfcmluZ19yZXNlcnZl ZF9zcGFjZV9yZXNlcnZlKHJlcXVlc3QtPnJpbmdidWYsCisJCU1JTl9TUEFDRV9GT1JfQUREX1JF UVVFU1QgKyBXQV9UQUlMX0RXT1JEUyhyZXF1ZXN0KSk7CiAKIAlyZXR1cm4gaW50ZWxfbG9naWNh bF9yaW5nX2JlZ2luKHJlcXVlc3QsIDApOwogfQpAQCAtMTg3NSwxMyArMTkwMCw2IEBAIHN0YXRp YyB2b2lkIGJ4dF9hX3NldF9zZXFubyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLCB1MzIg c2Vxbm8pCiAJaW50ZWxfZmx1c2hfc3RhdHVzX3BhZ2UocmluZywgSTkxNV9HRU1fSFdTX0lOREVY KTsKIH0KIAotLyoKLSAqIFJlc2VydmUgc3BhY2UgZm9yIDIgTk9PUHMgYXQgdGhlIGVuZCBvZiBl YWNoIHJlcXVlc3QgdG8gYmUKLSAqIHVzZWQgYXMgYSB3b3JrYXJvdW5kIGZvciBub3QgYmVpbmcg YWxsb3dlZCB0byBkbyBsaXRlCi0gKiByZXN0b3JlIHdpdGggSEVBRD09VEFJTCAoV2FJZGxlTGl0 ZVJlc3RvcmUpLgotICovCi0jZGVmaW5lIFdBX1RBSUxfRFdPUkRTIDIKLQogc3RhdGljIGlubGlu ZSB1MzIgaHdzX3NlcW5vX2FkZHJlc3Moc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQog ewogCXJldHVybiBlbmdpbmUtPnN0YXR1c19wYWdlLmdmeF9hZGRyICsgSTkxNV9HRU1fSFdTX0lO REVYX0FERFI7CkBAIC0xODkyLDcgKzE5MTAsNyBAQCBzdGF0aWMgaW50IGdlbjhfZW1pdF9yZXF1 ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKIAlzdHJ1Y3QgaW50ZWxf cmluZ2J1ZmZlciAqcmluZ2J1ZiA9IHJlcXVlc3QtPnJpbmdidWY7CiAJaW50IHJldDsKIAotCXJl dCA9IGludGVsX2xvZ2ljYWxfcmluZ19iZWdpbihyZXF1ZXN0LCA2ICsgV0FfVEFJTF9EV09SRFMp OworCXJldCA9IGludGVsX2xvZ2ljYWxfcmluZ19iZWdpbihyZXF1ZXN0LCA2KTsKIAlpZiAocmV0 KQogCQlyZXR1cm4gcmV0OwogCkBAIC0xOTA4LDcgKzE5MjYsOSBAQCBzdGF0aWMgaW50IGdlbjhf ZW1pdF9yZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKIAlpbnRl bF9sb2dpY2FsX3JpbmdfZW1pdChyaW5nYnVmLCBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhy ZXF1ZXN0KSk7CiAJaW50ZWxfbG9naWNhbF9yaW5nX2VtaXQocmluZ2J1ZiwgTUlfVVNFUl9JTlRF UlJVUFQpOwogCWludGVsX2xvZ2ljYWxfcmluZ19lbWl0KHJpbmdidWYsIE1JX05PT1ApOwotCXJl dHVybiBpbnRlbF9sb2dpY2FsX3JpbmdfYWR2YW5jZV9hbmRfc3VibWl0KHJlcXVlc3QpOworCWlu dGVsX2xvZ2ljYWxfcmluZ19hZHZhbmNlKHJpbmdidWYpOworCisJcmV0dXJuIGludGVsX2xvZ2lj YWxfcmluZ19zdWJtaXQocmVxdWVzdCk7CiB9CiAKIHN0YXRpYyBpbnQgZ2VuOF9lbWl0X3JlcXVl c3RfcmVuZGVyKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKQEAgLTE5MTYs NyArMTkzNiw3IEBAIHN0YXRpYyBpbnQgZ2VuOF9lbWl0X3JlcXVlc3RfcmVuZGVyKHN0cnVjdCBk cm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKIAlzdHJ1Y3QgaW50ZWxfcmluZ2J1ZmZlciAq cmluZ2J1ZiA9IHJlcXVlc3QtPnJpbmdidWY7CiAJaW50IHJldDsKIAotCXJldCA9IGludGVsX2xv Z2ljYWxfcmluZ19iZWdpbihyZXF1ZXN0LCA2ICsgV0FfVEFJTF9EV09SRFMpOworCXJldCA9IGlu dGVsX2xvZ2ljYWxfcmluZ19iZWdpbihyZXF1ZXN0LCA2KTsKIAlpZiAocmV0KQogCQlyZXR1cm4g cmV0OwogCkBAIC0xOTMzLDcgKzE5NTMsOSBAQCBzdGF0aWMgaW50IGdlbjhfZW1pdF9yZXF1ZXN0 X3JlbmRlcihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpCiAJaW50ZWxfbG9n aWNhbF9yaW5nX2VtaXQocmluZ2J1ZiwgMCk7CiAJaW50ZWxfbG9naWNhbF9yaW5nX2VtaXQocmlu Z2J1ZiwgaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8ocmVxdWVzdCkpOwogCWludGVsX2xvZ2lj YWxfcmluZ19lbWl0KHJpbmdidWYsIE1JX1VTRVJfSU5URVJSVVBUKTsKLQlyZXR1cm4gaW50ZWxf bG9naWNhbF9yaW5nX2FkdmFuY2VfYW5kX3N1Ym1pdChyZXF1ZXN0KTsKKwlpbnRlbF9sb2dpY2Fs X3JpbmdfYWR2YW5jZShyaW5nYnVmKTsKKworCXJldHVybiBpbnRlbF9sb2dpY2FsX3Jpbmdfc3Vi bWl0KHJlcXVlc3QpOwogfQogCiBzdGF0aWMgaW50IGludGVsX2xyX2NvbnRleHRfcmVuZGVyX3N0 YXRlX2luaXQoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCi0tIAoxLjkuMQoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==