From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH] drm/i915/selftests: Teach workarounds to take intel_gt as its argument Date: Wed, 16 Oct 2019 12:49:02 +0100 Message-ID: <20191016114902.24388-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6BFBB89A9A for ; Wed, 16 Oct 2019 11:49:21 +0000 (UTC) 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 VGhlIHdvcmthcm91bmRzIHNlbGZ0ZXN0cyBhcmUgaGFyZHdhcmUgY2VudHJpYyBhbmQgc28gd2Fu dCB0byB1c2UgdGhlIGd0CmFzIGl0cyB0YXJnZXQuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxz b24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28u dXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogLi4uL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF93b3Jr YXJvdW5kcy5jICAgIHwgMTI4ICsrKysrKysrKy0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDY1 IGluc2VydGlvbnMoKyksIDYzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X3dvcmthcm91bmRzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9zZWxmdGVzdF93b3JrYXJvdW5kcy5jCmluZGV4IGRjMTFmN2FkNTBhMi4uODg1NmM2YzQ2 Y2M0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF93b3JrYXJv dW5kcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X3dvcmthcm91bmRz LmMKQEAgLTU4LDcgKzU4LDcgQEAgc3RhdGljIGludCByZXF1ZXN0X2FkZF9zcGluKHN0cnVjdCBp OTE1X3JlcXVlc3QgKnJxLCBzdHJ1Y3QgaWd0X3NwaW5uZXIgKnNwaW4pCiB9CiAKIHN0YXRpYyB2 b2lkCi1yZWZlcmVuY2VfbGlzdHNfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwg c3RydWN0IHdhX2xpc3RzICpsaXN0cykKK3JlZmVyZW5jZV9saXN0c19pbml0KHN0cnVjdCBpbnRl bF9ndCAqZ3QsIHN0cnVjdCB3YV9saXN0cyAqbGlzdHMpCiB7CiAJc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lOwogCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkOwpAQCAtNjYsMTAgKzY2LDEw IEBAIHJlZmVyZW5jZV9saXN0c19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LCBz dHJ1Y3Qgd2FfbGlzdHMgKmxpc3RzKQogCW1lbXNldChsaXN0cywgMCwgc2l6ZW9mKCpsaXN0cykp OwogCiAJd2FfaW5pdF9zdGFydCgmbGlzdHMtPmd0X3dhX2xpc3QsICJHVF9SRUYiLCAiZ2xvYmFs Iik7Ci0JZ3RfaW5pdF93b3JrYXJvdW5kcyhpOTE1LCAmbGlzdHMtPmd0X3dhX2xpc3QpOworCWd0 X2luaXRfd29ya2Fyb3VuZHMoZ3QtPmk5MTUsICZsaXN0cy0+Z3Rfd2FfbGlzdCk7CiAJd2FfaW5p dF9maW5pc2goJmxpc3RzLT5ndF93YV9saXN0KTsKIAotCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUs IGk5MTUsIGlkKSB7CisJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgZ3QtPmk5MTUsIGlkKSB7CiAJ CXN0cnVjdCBpOTE1X3dhX2xpc3QgKndhbCA9ICZsaXN0cy0+ZW5naW5lW2lkXS53YV9saXN0Owog CiAJCXdhX2luaXRfc3RhcnQod2FsLCAiUkVGIiwgZW5naW5lLT5uYW1lKTsKQEAgLTgzLDEyICs4 MywxMiBAQCByZWZlcmVuY2VfbGlzdHNfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkx NSwgc3RydWN0IHdhX2xpc3RzICpsaXN0cykKIH0KIAogc3RhdGljIHZvaWQKLXJlZmVyZW5jZV9s aXN0c19maW5pKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LCBzdHJ1Y3Qgd2FfbGlzdHMg Kmxpc3RzKQorcmVmZXJlbmNlX2xpc3RzX2Zpbmkoc3RydWN0IGludGVsX2d0ICpndCwgc3RydWN0 IHdhX2xpc3RzICpsaXN0cykKIHsKIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7CiAJ ZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQ7CiAKLQlmb3JfZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1 LCBpZCkKKwlmb3JfZWFjaF9lbmdpbmUoZW5naW5lLCBndC0+aTkxNSwgaWQpCiAJCWludGVsX3dh X2xpc3RfZnJlZSgmbGlzdHMtPmVuZ2luZVtpZF0ud2FfbGlzdCk7CiAKIAlpbnRlbF93YV9saXN0 X2ZyZWUoJmxpc3RzLT5ndF93YV9saXN0KTsKQEAgLTIxNSwxMCArMjE1LDEwIEBAIHN0YXRpYyBp bnQgY2hlY2tfd2hpdGVsaXN0KHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAKIAllcnIg PSAwOwogCWk5MTVfZ2VtX29iamVjdF9sb2NrKHJlc3VsdHMpOwotCWludGVsX3dlZGdlX29uX3Rp bWVvdXQoJndlZGdlLCAmY3R4LT5pOTE1LT5ndCwgSFogLyA1KSAvKiBzYWZldHkgbmV0ISAqLwor CWludGVsX3dlZGdlX29uX3RpbWVvdXQoJndlZGdlLCBlbmdpbmUtPmd0LCBIWiAvIDUpIC8qIHNh ZmV0eSBuZXQhICovCiAJCWVyciA9IGk5MTVfZ2VtX29iamVjdF9zZXRfdG9fY3B1X2RvbWFpbihy ZXN1bHRzLCBmYWxzZSk7CiAJaTkxNV9nZW1fb2JqZWN0X3VubG9jayhyZXN1bHRzKTsKLQlpZiAo aW50ZWxfZ3RfaXNfd2VkZ2VkKCZjdHgtPmk5MTUtPmd0KSkKKwlpZiAoaW50ZWxfZ3RfaXNfd2Vk Z2VkKGVuZ2luZS0+Z3QpKQogCQllcnIgPSAtRUlPOwogCWlmIChlcnIpCiAJCWdvdG8gb3V0X3B1 dDsKQEAgLTYwNSw3ICs2MDUsNyBAQCBzdGF0aWMgaW50IGNoZWNrX2RpcnR5X3doaXRlbGlzdChz dHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAogCQlpZiAoZXJyKSB7CiAJCQlwcl9lcnIoIiVz OiBGdXR6aW5nICV4IHRpbWVkb3V0OyBjYW5jZWxsaW5nIHRlc3RcbiIsCiAJCQkgICAgICAgZW5n aW5lLT5uYW1lLCByZWcpOwotCQkJaW50ZWxfZ3Rfc2V0X3dlZGdlZCgmY3R4LT5pOTE1LT5ndCk7 CisJCQlpbnRlbF9ndF9zZXRfd2VkZ2VkKGVuZ2luZS0+Z3QpOwogCQkJZ290byBvdXRfYmF0Y2g7 CiAJCX0KIApAQCAtNzA0LDcgKzcwNCw3IEBAIHN0YXRpYyBpbnQgY2hlY2tfZGlydHlfd2hpdGVs aXN0KHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAKIHN0YXRpYyBpbnQgbGl2ZV9kaXJ0 eV93aGl0ZWxpc3Qodm9pZCAqYXJnKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 ID0gYXJnOworCXN0cnVjdCBpbnRlbF9ndCAqZ3QgPSBhcmc7CiAJc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lOwogCXN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHg7CiAJZW51bSBpbnRl bF9lbmdpbmVfaWQgaWQ7CkBAIC03MTMsMjAgKzcxMywyMCBAQCBzdGF0aWMgaW50IGxpdmVfZGly dHlfd2hpdGVsaXN0KHZvaWQgKmFyZykKIAogCS8qIENhbiB0aGUgdXNlciB3cml0ZSB0byB0aGUg d2hpdGVsaXN0ZWQgcmVnaXN0ZXJzPyAqLwogCi0JaWYgKElOVEVMX0dFTihpOTE1KSA8IDcpIC8q IG1pbmltdW0gcmVxdWlyZW1lbnQgZm9yIExSSSwgU1JNLCBMUk0gKi8KKwlpZiAoSU5URUxfR0VO KGd0LT5pOTE1KSA8IDcpIC8qIG1pbmltdW0gcmVxdWlyZW1lbnQgZm9yIExSSSwgU1JNLCBMUk0g Ki8KIAkJcmV0dXJuIDA7CiAKLQlmaWxlID0gbW9ja19maWxlKGk5MTUpOworCWZpbGUgPSBtb2Nr X2ZpbGUoZ3QtPmk5MTUpOwogCWlmIChJU19FUlIoZmlsZSkpCiAJCXJldHVybiBQVFJfRVJSKGZp bGUpOwogCi0JY3R4ID0gbGl2ZV9jb250ZXh0KGk5MTUsIGZpbGUpOworCWN0eCA9IGxpdmVfY29u dGV4dChndC0+aTkxNSwgZmlsZSk7CiAJaWYgKElTX0VSUihjdHgpKSB7CiAJCWVyciA9IFBUUl9F UlIoY3R4KTsKIAkJZ290byBvdXRfZmlsZTsKIAl9CiAKLQlmb3JfZWFjaF9lbmdpbmUoZW5naW5l LCBpOTE1LCBpZCkgeworCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGd0LT5pOTE1LCBpZCkgewog CQlpZiAoZW5naW5lLT53aGl0ZWxpc3QuY291bnQgPT0gMCkKIAkJCWNvbnRpbnVlOwogCkBAIC03 MzYsNDEgKzczNiw0MyBAQCBzdGF0aWMgaW50IGxpdmVfZGlydHlfd2hpdGVsaXN0KHZvaWQgKmFy ZykKIAl9CiAKIG91dF9maWxlOgotCW1vY2tfZmlsZV9mcmVlKGk5MTUsIGZpbGUpOworCW1vY2tf ZmlsZV9mcmVlKGd0LT5pOTE1LCBmaWxlKTsKIAlyZXR1cm4gZXJyOwogfQogCiBzdGF0aWMgaW50 IGxpdmVfcmVzZXRfd2hpdGVsaXN0KHZvaWQgKmFyZykKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqaTkxNSA9IGFyZzsKLQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUgPSBpOTE1 LT5lbmdpbmVbUkNTMF07CisJc3RydWN0IGludGVsX2d0ICpndCA9IGFyZzsKKwlzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICplbmdpbmU7CisJZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQ7CiAJaW50IGVy ciA9IDA7CiAKIAkvKiBJZiB3ZSByZXNldCB0aGUgZ3B1LCB3ZSBzaG91bGQgbm90IGxvc2UgdGhl IFJJTkdfTk9OUFJJViAqLworCWlndF9nbG9iYWxfcmVzZXRfbG9jayhndCk7CiAKLQlpZiAoIWVu Z2luZSB8fCBlbmdpbmUtPndoaXRlbGlzdC5jb3VudCA9PSAwKQotCQlyZXR1cm4gMDsKLQotCWln dF9nbG9iYWxfcmVzZXRfbG9jaygmaTkxNS0+Z3QpOworCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUs IGd0LT5pOTE1LCBpZCkgeworCQlpZiAoZW5naW5lLT53aGl0ZWxpc3QuY291bnQgPT0gMCkKKwkJ CWNvbnRpbnVlOwogCi0JaWYgKGludGVsX2hhc19yZXNldF9lbmdpbmUoJmk5MTUtPmd0KSkgewot CQllcnIgPSBjaGVja193aGl0ZWxpc3RfYWNyb3NzX3Jlc2V0KGVuZ2luZSwKLQkJCQkJCSAgIGRv X2VuZ2luZV9yZXNldCwKLQkJCQkJCSAgICJlbmdpbmUiKTsKLQkJaWYgKGVycikKLQkJCWdvdG8g b3V0OwotCX0KKwkJaWYgKGludGVsX2hhc19yZXNldF9lbmdpbmUoZ3QpKSB7CisJCQllcnIgPSBj aGVja193aGl0ZWxpc3RfYWNyb3NzX3Jlc2V0KGVuZ2luZSwKKwkJCQkJCQkgICBkb19lbmdpbmVf cmVzZXQsCisJCQkJCQkJICAgImVuZ2luZSIpOworCQkJaWYgKGVycikKKwkJCQlnb3RvIG91dDsK KwkJfQogCi0JaWYgKGludGVsX2hhc19ncHVfcmVzZXQoJmk5MTUtPmd0KSkgewotCQllcnIgPSBj aGVja193aGl0ZWxpc3RfYWNyb3NzX3Jlc2V0KGVuZ2luZSwKLQkJCQkJCSAgIGRvX2RldmljZV9y ZXNldCwKLQkJCQkJCSAgICJkZXZpY2UiKTsKLQkJaWYgKGVycikKLQkJCWdvdG8gb3V0OworCQlp ZiAoaW50ZWxfaGFzX2dwdV9yZXNldChndCkpIHsKKwkJCWVyciA9IGNoZWNrX3doaXRlbGlzdF9h Y3Jvc3NfcmVzZXQoZW5naW5lLAorCQkJCQkJCSAgIGRvX2RldmljZV9yZXNldCwKKwkJCQkJCQkg ICAiZGV2aWNlIik7CisJCQlpZiAoZXJyKQorCQkJCWdvdG8gb3V0OworCQl9CiAJfQogCiBvdXQ6 Ci0JaWd0X2dsb2JhbF9yZXNldF91bmxvY2soJmk5MTUtPmd0KTsKKwlpZ3RfZ2xvYmFsX3Jlc2V0 X3VubG9jayhndCk7CiAJcmV0dXJuIGVycjsKIH0KIApAQCAtOTk2LDcgKzk5OCw3IEBAIGNoZWNr X3doaXRlbGlzdGVkX3JlZ2lzdGVycyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCiAK IHN0YXRpYyBpbnQgbGl2ZV9pc29sYXRlZF93aGl0ZWxpc3Qodm9pZCAqYXJnKQogewotCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gYXJnOworCXN0cnVjdCBpbnRlbF9ndCAqZ3QgPSBh cmc7CiAJc3RydWN0IHsKIAkJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eDsKIAkJc3RydWN0 IGk5MTVfdm1hICpzY3JhdGNoWzJdOwpAQCAtMTAxMCwxNyArMTAxMiwxNCBAQCBzdGF0aWMgaW50 IGxpdmVfaXNvbGF0ZWRfd2hpdGVsaXN0KHZvaWQgKmFyZykKIAkgKiBpbnZpc2libGUgdG8gYSBz ZWNvbmQgY29udGV4dC4KIAkgKi8KIAotCWlmICghaW50ZWxfZW5naW5lc19oYXNfY29udGV4dF9p c29sYXRpb24oaTkxNSkpCi0JCXJldHVybiAwOwotCi0JaWYgKCFpOTE1LT5rZXJuZWxfY29udGV4 dC0+dm0pCisJaWYgKCFpbnRlbF9lbmdpbmVzX2hhc19jb250ZXh0X2lzb2xhdGlvbihndC0+aTkx NSkpCiAJCXJldHVybiAwOwogCiAJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoY2xpZW50KTsg aSsrKSB7CiAJCXN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtOwogCQlzdHJ1Y3QgaTkxNV9n ZW1fY29udGV4dCAqYzsKIAotCQljID0ga2VybmVsX2NvbnRleHQoaTkxNSk7CisJCWMgPSBrZXJu ZWxfY29udGV4dChndC0+aTkxNSk7CiAJCWlmIChJU19FUlIoYykpIHsKIAkJCWVyciA9IFBUUl9F UlIoYyk7CiAJCQlnb3RvIGVycjsKQEAgLTEwNDksNyArMTA0OCwxMCBAQCBzdGF0aWMgaW50IGxp dmVfaXNvbGF0ZWRfd2hpdGVsaXN0KHZvaWQgKmFyZykKIAkJaTkxNV92bV9wdXQodm0pOwogCX0K IAotCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGk5MTUsIGlkKSB7CisJZm9yX2VhY2hfZW5naW5l KGVuZ2luZSwgZ3QtPmk5MTUsIGlkKSB7CisJCWlmICghZW5naW5lLT5rZXJuZWxfY29udGV4dC0+ dm0pCisJCQljb250aW51ZTsKKwogCQlpZiAoIXdoaXRlbGlzdF93cml0YWJsZV9jb3VudChlbmdp bmUpKQogCQkJY29udGludWU7CiAKQEAgLTExMDMsNyArMTEwNSw3IEBAIHN0YXRpYyBpbnQgbGl2 ZV9pc29sYXRlZF93aGl0ZWxpc3Qodm9pZCAqYXJnKQogCQlrZXJuZWxfY29udGV4dF9jbG9zZShj bGllbnRbaV0uY3R4KTsKIAl9CiAKLQlpZiAoaWd0X2ZsdXNoX3Rlc3QoaTkxNSkpCisJaWYgKGln dF9mbHVzaF90ZXN0KGd0LT5pOTE1KSkKIAkJZXJyID0gLUVJTzsKIAogCXJldHVybiBlcnI7CkBA IC0xMTM4LDE2ICsxMTQwLDE2IEBAIHZlcmlmeV93YV9saXN0cyhzdHJ1Y3QgaTkxNV9nZW1fY29u dGV4dCAqY3R4LCBzdHJ1Y3Qgd2FfbGlzdHMgKmxpc3RzLAogc3RhdGljIGludAogbGl2ZV9ncHVf cmVzZXRfd29ya2Fyb3VuZHModm9pZCAqYXJnKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1ID0gYXJnOworCXN0cnVjdCBpbnRlbF9ndCAqZ3QgPSBhcmc7CiAJc3RydWN0IGk5MTVf Z2VtX2NvbnRleHQgKmN0eDsKIAlpbnRlbF93YWtlcmVmX3Qgd2FrZXJlZjsKIAlzdHJ1Y3Qgd2Ff bGlzdHMgbGlzdHM7CiAJYm9vbCBvazsKIAotCWlmICghaW50ZWxfaGFzX2dwdV9yZXNldCgmaTkx NS0+Z3QpKQorCWlmICghaW50ZWxfaGFzX2dwdV9yZXNldChndCkpCiAJCXJldHVybiAwOwogCi0J Y3R4ID0ga2VybmVsX2NvbnRleHQoaTkxNSk7CisJY3R4ID0ga2VybmVsX2NvbnRleHQoZ3QtPmk5 MTUpOwogCWlmIChJU19FUlIoY3R4KSkKIAkJcmV0dXJuIFBUUl9FUlIoY3R4KTsKIApAQCAtMTE1 NSwyNSArMTE1NywyNSBAQCBsaXZlX2dwdV9yZXNldF93b3JrYXJvdW5kcyh2b2lkICphcmcpCiAK IAlwcl9pbmZvKCJWZXJpZnlpbmcgYWZ0ZXIgR1BVIHJlc2V0Li4uXG4iKTsKIAotCWlndF9nbG9i YWxfcmVzZXRfbG9jaygmaTkxNS0+Z3QpOwotCXdha2VyZWYgPSBpbnRlbF9ydW50aW1lX3BtX2dl dCgmaTkxNS0+cnVudGltZV9wbSk7CisJaWd0X2dsb2JhbF9yZXNldF9sb2NrKGd0KTsKKwl3YWtl cmVmID0gaW50ZWxfcnVudGltZV9wbV9nZXQoZ3QtPnVuY29yZS0+cnBtKTsKIAotCXJlZmVyZW5j ZV9saXN0c19pbml0KGk5MTUsICZsaXN0cyk7CisJcmVmZXJlbmNlX2xpc3RzX2luaXQoZ3QsICZs aXN0cyk7CiAKIAlvayA9IHZlcmlmeV93YV9saXN0cyhjdHgsICZsaXN0cywgImJlZm9yZSByZXNl dCIpOwogCWlmICghb2spCiAJCWdvdG8gb3V0OwogCi0JaW50ZWxfZ3RfcmVzZXQoJmk5MTUtPmd0 LCBBTExfRU5HSU5FUywgImxpdmVfd29ya2Fyb3VuZHMiKTsKKwlpbnRlbF9ndF9yZXNldChndCwg QUxMX0VOR0lORVMsICJsaXZlX3dvcmthcm91bmRzIik7CiAKIAlvayA9IHZlcmlmeV93YV9saXN0 cyhjdHgsICZsaXN0cywgImFmdGVyIHJlc2V0Iik7CiAKIG91dDoKIAlpOTE1X2dlbV9jb250ZXh0 X3VubG9ja19lbmdpbmVzKGN0eCk7CiAJa2VybmVsX2NvbnRleHRfY2xvc2UoY3R4KTsKLQlyZWZl cmVuY2VfbGlzdHNfZmluaShpOTE1LCAmbGlzdHMpOwotCWludGVsX3J1bnRpbWVfcG1fcHV0KCZp OTE1LT5ydW50aW1lX3BtLCB3YWtlcmVmKTsKLQlpZ3RfZ2xvYmFsX3Jlc2V0X3VubG9jaygmaTkx NS0+Z3QpOworCXJlZmVyZW5jZV9saXN0c19maW5pKGd0LCAmbGlzdHMpOworCWludGVsX3J1bnRp bWVfcG1fcHV0KGd0LT51bmNvcmUtPnJwbSwgd2FrZXJlZik7CisJaWd0X2dsb2JhbF9yZXNldF91 bmxvY2soZ3QpOwogCiAJcmV0dXJuIG9rID8gMCA6IC1FU1JDSDsKIH0KQEAgLTExODEsNyArMTE4 Myw3IEBAIGxpdmVfZ3B1X3Jlc2V0X3dvcmthcm91bmRzKHZvaWQgKmFyZykKIHN0YXRpYyBpbnQK IGxpdmVfZW5naW5lX3Jlc2V0X3dvcmthcm91bmRzKHZvaWQgKmFyZykKIHsKLQlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqaTkxNSA9IGFyZzsKKwlzdHJ1Y3QgaW50ZWxfZ3QgKmd0ID0gYXJnOwog CXN0cnVjdCBpOTE1X2dlbV9lbmdpbmVzX2l0ZXIgaXQ7CiAJc3RydWN0IGk5MTVfZ2VtX2NvbnRl eHQgKmN0eDsKIAlzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2U7CkBAIC0xMTkxLDE3ICsxMTkzLDE3 IEBAIGxpdmVfZW5naW5lX3Jlc2V0X3dvcmthcm91bmRzKHZvaWQgKmFyZykKIAlzdHJ1Y3Qgd2Ff bGlzdHMgbGlzdHM7CiAJaW50IHJldCA9IDA7CiAKLQlpZiAoIWludGVsX2hhc19yZXNldF9lbmdp bmUoJmk5MTUtPmd0KSkKKwlpZiAoIWludGVsX2hhc19yZXNldF9lbmdpbmUoZ3QpKQogCQlyZXR1 cm4gMDsKIAotCWN0eCA9IGtlcm5lbF9jb250ZXh0KGk5MTUpOworCWN0eCA9IGtlcm5lbF9jb250 ZXh0KGd0LT5pOTE1KTsKIAlpZiAoSVNfRVJSKGN0eCkpCiAJCXJldHVybiBQVFJfRVJSKGN0eCk7 CiAKLQlpZ3RfZ2xvYmFsX3Jlc2V0X2xvY2soJmk5MTUtPmd0KTsKLQl3YWtlcmVmID0gaW50ZWxf cnVudGltZV9wbV9nZXQoJmk5MTUtPnJ1bnRpbWVfcG0pOworCWlndF9nbG9iYWxfcmVzZXRfbG9j ayhndCk7CisJd2FrZXJlZiA9IGludGVsX3J1bnRpbWVfcG1fZ2V0KGd0LT51bmNvcmUtPnJwbSk7 CiAKLQlyZWZlcmVuY2VfbGlzdHNfaW5pdChpOTE1LCAmbGlzdHMpOworCXJlZmVyZW5jZV9saXN0 c19pbml0KGd0LCAmbGlzdHMpOwogCiAJZm9yX2VhY2hfZ2VtX2VuZ2luZShjZSwgaTkxNV9nZW1f Y29udGV4dF9sb2NrX2VuZ2luZXMoY3R4KSwgaXQpIHsKIAkJc3RydWN0IGludGVsX2VuZ2luZV9j cyAqZW5naW5lID0gY2UtPmVuZ2luZTsKQEAgLTEyNTQsMTIgKzEyNTYsMTIgQEAgbGl2ZV9lbmdp bmVfcmVzZXRfd29ya2Fyb3VuZHModm9pZCAqYXJnKQogCX0KIGVycjoKIAlpOTE1X2dlbV9jb250 ZXh0X3VubG9ja19lbmdpbmVzKGN0eCk7Ci0JcmVmZXJlbmNlX2xpc3RzX2ZpbmkoaTkxNSwgJmxp c3RzKTsKLQlpbnRlbF9ydW50aW1lX3BtX3B1dCgmaTkxNS0+cnVudGltZV9wbSwgd2FrZXJlZik7 Ci0JaWd0X2dsb2JhbF9yZXNldF91bmxvY2soJmk5MTUtPmd0KTsKKwlyZWZlcmVuY2VfbGlzdHNf ZmluaShndCwgJmxpc3RzKTsKKwlpbnRlbF9ydW50aW1lX3BtX3B1dChndC0+dW5jb3JlLT5ycG0s IHdha2VyZWYpOworCWlndF9nbG9iYWxfcmVzZXRfdW5sb2NrKGd0KTsKIAlrZXJuZWxfY29udGV4 dF9jbG9zZShjdHgpOwogCi0JaWd0X2ZsdXNoX3Rlc3QoaTkxNSk7CisJaWd0X2ZsdXNoX3Rlc3Qo Z3QtPmk5MTUpOwogCiAJcmV0dXJuIHJldDsKIH0KQEAgLTEyNzcsNSArMTI3OSw1IEBAIGludCBp bnRlbF93b3JrYXJvdW5kc19saXZlX3NlbGZ0ZXN0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq aTkxNSkKIAlpZiAoaW50ZWxfZ3RfaXNfd2VkZ2VkKCZpOTE1LT5ndCkpCiAJCXJldHVybiAwOwog Ci0JcmV0dXJuIGk5MTVfc3VidGVzdHModGVzdHMsIGk5MTUpOworCXJldHVybiBpbnRlbF9ndF9s aXZlX3N1YnRlc3RzKHRlc3RzLCAmaTkxNS0+Z3QpOwogfQotLSAKMi4yMy4wCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=