From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 96DCA6E3C3 for ; Thu, 13 Sep 2018 23:40:36 +0000 (UTC) From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= Date: Thu, 13 Sep 2018 16:40:18 -0700 Message-Id: <20180913234018.31478-2-jose.souza@intel.com> In-Reply-To: <20180913234018.31478-1-jose.souza@intel.com> References: <20180913234018.31478-1-jose.souza@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v5 2/2] tests: Check and skip unhandled tests that needs display List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Jani Nikula List-ID: J2xpYjogUmVxdWlyZSBkcm1Nb2RlUmVzb3VyY2VzKCknIHRha2UgY2FyZSBvZiBhbGwgdGVzdHMg dGhhdCBjYWxscwppZ3RfZGlzcGxheV9pbml0KCksIGhlcmUgaGFuZGxpbmcgb3RoZXIgdGVzdHMg dGhhdCBuZWVkcyBkaXNwbGF5IGFuZApkbyBub3QgY2FsbCBpdC4KCnYyOgotIE5vdCBza2lwcGlu ZyBhbGwgdGVzdHMgaW4gZGVidWdmc190ZXN0LCBwZXJmX3BtdSBhbmQgcGVyZl9wbXUsCm5vdyBz a2lwaW5nIG9ubHkgdGhlIHJlcXVpcmVkIHN1YnRlc3RzCgp2MzoKLSBSZW5hbWVkIGlndF9yZXF1 aXJlX2Rpc3BsYXkgdG8gaWd0X2Rpc3BsYXlfcmVxdWlyZWQsIHRvIGtlZXAgbmFtaW5nCmNvbnNp c3RlbnQKLSBBZGRlZCBpZ3RfZGlzcGxheV9hdmFpbGFibGUoKQotIENoZWNraW5nIGlmIGRpc3Bs YXkgaXMgYXZhaWxhYmxlIGJ5IHF1ZXJpbmcgYSBtb2Rlc2V0IGNhcGFiaWxpdHkKaW5zdGVhZCBv ZiBkcm1Nb2RlR2V0UmVzb3VyY2VzKCkKLSBOb3Qgc2tpcGluZyByZWFkX2FsbF9lbnRyaWVzIHRl c3RzIHdoZW4gZGlzcGxheSBpcyBkaXNhYmxlZAoKdjQ6Ci0gVXNpbmcgJ2xpYjogUmVxdWlyZSBk cm1Nb2RlUmVzb3VyY2VzKCknLCBzbyBhbGwgdGVzdHMgYWxyZWFkeQpoYW5kbGVkIGJ5IHRoYXQg cGF0Y2ggaGFkIHRoZSBpZ3RfZGlzcGxheV9yZXF1aXJlKCkgY2FsbCByZW1vdmVkLgoKdjU6Ci0g UmVwbGFjaW5nIGlndF9kaXNwbGF5X3JlcXVpcmUoKSBjYWxscyB0byBpZ3RfcmVxdWlyZSgpIG92 ZXIgdGhlCnJldHVybiBvZiBkcm1Nb2RlR2V0UmVzb3VyY2VzKCkgd2hlbiBwb3NzaWJsZQoKQ2M6 IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogSmFuaSBOaWt1bGEg PGphbmkubmlrdWxhQGludGVsLmNvbT4KQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFs YUBsaW51eC5pbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8gZGUgU291emEg PGpvc2Uuc291emFAaW50ZWwuY29tPgotLS0KIGxpYi9pZ3Rfa21zLmMgICAgICAgICAgICAgICAg ICAgICB8IDMwICsrKysrKysrKysrKystCiBsaWIvaWd0X2ttcy5oICAgICAgICAgICAgICAgICAg ICAgfCAgMiArCiB0ZXN0cy9kZWJ1Z2ZzX3Rlc3QuYyAgICAgICAgICAgICAgfCAxNCArKysrKy0t CiB0ZXN0cy9rbXNfM2QuYyAgICAgICAgICAgICAgICAgICAgfCAgMyArLQogdGVzdHMva21zX2Fk ZGZiX2Jhc2ljLmMgICAgICAgICAgIHwgIDQgKy0KIHRlc3RzL2ttc19kcmF3X2NyYy5jICAgICAg ICAgICAgICB8ICAxICsKIHRlc3RzL2ttc19mYmNvbl9mYnQuYyAgICAgICAgICAgICB8ICAxICsK IHRlc3RzL2ttc19mb3JjZV9jb25uZWN0b3JfYmFzaWMuYyB8ICAyICstCiB0ZXN0cy9rbXNfZ2V0 ZmIuYyAgICAgICAgICAgICAgICAgfCAgNCArLQogdGVzdHMva21zX2hkbWlfaW5qZWN0LmMgICAg ICAgICAgIHwgIDEgKwogdGVzdHMva21zX3NldG1vZGUuYyAgICAgICAgICAgICAgIHwgIDIgKy0K IHRlc3RzL2ttc19zeXNmc19lZGlkX3RpbWluZy5jICAgICB8ICA0ICsrCiB0ZXN0cy9rbXNfdHZf bG9hZF9kZXRlY3QuYyAgICAgICAgfCAgMiArLQogdGVzdHMvcGVyZl9wbXUuYyAgICAgICAgICAg ICAgICAgIHwgMTIgKysrLS0tCiB0ZXN0cy9wbV9scHNwLmMgICAgICAgICAgICAgICAgICAgfCAg MSArCiB0ZXN0cy9wbV9ycG0uYyAgICAgICAgICAgICAgICAgICAgfCA2OSArKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tCiB0ZXN0cy9wcmltZV92Z2VtLmMgICAgICAgICAgICAgICAgfCAg MiArCiB0ZXN0cy90ZXN0ZGlzcGxheS5jICAgICAgICAgICAgICAgfCAyMyArKysrLS0tLS0tLQog MTggZmlsZXMgY2hhbmdlZCwgMTI4IGluc2VydGlvbnMoKyksIDQ5IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2xpYi9pZ3Rfa21zLmMgYi9saWIvaWd0X2ttcy5jCmluZGV4IGMyMGNmMWViLi4y YmM5MmM4MSAxMDA2NDQKLS0tIGEvbGliL2lndF9rbXMuYworKysgYi9saWIvaWd0X2ttcy5jCkBA IC0yMDE4LDYgKzIwMTgsMzQgQEAgaW50IGlndF9kaXNwbGF5X2dldF9uX3BpcGVzKGlndF9kaXNw bGF5X3QgKmRpc3BsYXkpCiAJcmV0dXJuIGRpc3BsYXktPm5fcGlwZXM7CiB9CiAKKy8qKgorICog aWd0X2Rpc3BsYXlfcmVxdWlyZToKKyAqIEBkcm1fZmQ6IGEgZHJtIGZpbGUgZGVzY3JpcHRvcgor ICoKKyAqIENoZWNrcyBpZiBkcml2ZXIgc3VwcG9ydHMgbW9kZXNldCBhbmQgaGF2ZSBkaXNwbGF5 IGVuYWJsZWQuCisgKi8KK3ZvaWQgaWd0X2Rpc3BsYXlfcmVxdWlyZShpbnQgZmQpCit7CisJYm9v bCBhdmFpbGFibGUgPSBpZ3RfZGlzcGxheV9hdmFpbGFibGUoZmQpOworCWlndF9yZXF1aXJlX2Yo YXZhaWxhYmxlLCAiZHJtIGRyaXZlciBkbyBub3Qgc3VwcG9ydCBtb2Rlc2V0XG4iKTsKK30KKwor LyoqCisgKiBpZ3RfZGlzcGxheV9hdmFpbGFibGU6CisgKiBAZHJtX2ZkOiBhIGRybSBmaWxlIGRl c2NyaXB0b3IKKyAqCisgKiBSZXR1cm4gdHJ1ZSBpZiBkcml2ZXIgc3VwcG9ydHMgbW9kZXNldCBh bmQgaGF2ZSBkaXNwbGF5IGVuYWJsZWQuCisgKi8KK2Jvb2wgaWd0X2Rpc3BsYXlfYXZhaWxhYmxl KGludCBmZCkKK3sKKwl1aW50NjRfdCBjYXA7CisKKwkvKiBDaGVjayBpZiBkcml2ZXIgc3VwcG9y dCBtb2Rlc2V0IGJ5IGNoZWNraW5nIG9uZSBvZiB0aGUgbW9kZXNldAorCSAqIHNwZWNpZmljIGNh cGFiaWxpdGllcywgaW4gY2FzZSBvZiBlcnJvciBpdCBpcyBub3Qgc3VwcG9ydGVkLgorCSAqLwor CXJldHVybiAhZHJtR2V0Q2FwKGZkLCBEUk1fQ0FQX0RVTUJfQlVGRkVSLCAmY2FwKTsKK30KKwog LyoqCiAgKiBpZ3RfZGlzcGxheV9yZXF1aXJlX291dHB1dDoKICAqIEBkaXNwbGF5OiBBIHBvaW50 ZXIgdG8gYW4gI2lndF9kaXNwbGF5X3Qgc3RydWN0dXJlCkBAIC0zODk1LDcgKzM5MjMsNyBAQCB2 b2lkIGlndF9lbmFibGVfY29ubmVjdG9ycyh2b2lkKQogCWRybV9mZCA9IGRybV9vcGVuX2RyaXZl cihEUklWRVJfQU5ZKTsKIAogCXJlcyA9IGRybU1vZGVHZXRSZXNvdXJjZXMoZHJtX2ZkKTsKLQlp Z3RfYXNzZXJ0KHJlcyAhPSBOVUxMKTsKKwlpZ3RfcmVxdWlyZShyZXMgIT0gTlVMTCk7CiAKIAlm b3IgKGludCBpID0gMDsgaSA8IHJlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKSB7CiAJCWRybU1v ZGVDb25uZWN0b3IgKmM7CmRpZmYgLS1naXQgYS9saWIvaWd0X2ttcy5oIGIvbGliL2lndF9rbXMu aAppbmRleCAzODYyZWZhMi4uZmVhZmVkYTkgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3Rfa21zLmgKKysr IGIvbGliL2lndF9rbXMuaApAQCAtMzg4LDYgKzM4OCw4IEBAIHZvaWQgaWd0X2Rpc3BsYXlfY29t bWl0X2F0b21pYyhpZ3RfZGlzcGxheV90ICpkaXNwbGF5LCB1aW50MzJfdCBmbGFncywgdm9pZCAq dXNlCiBpbnQgIGlndF9kaXNwbGF5X3RyeV9jb21taXQyKGlndF9kaXNwbGF5X3QgKmRpc3BsYXks IGVudW0gaWd0X2NvbW1pdF9zdHlsZSBzKTsKIGludCAgaWd0X2Rpc3BsYXlfZHJvcF9ldmVudHMo aWd0X2Rpc3BsYXlfdCAqZGlzcGxheSk7CiBpbnQgIGlndF9kaXNwbGF5X2dldF9uX3BpcGVzKGln dF9kaXNwbGF5X3QgKmRpc3BsYXkpOwordm9pZCBpZ3RfZGlzcGxheV9yZXF1aXJlKGludCBmZCk7 Citib29sIGlndF9kaXNwbGF5X2F2YWlsYWJsZShpbnQgZmQpOwogdm9pZCBpZ3RfZGlzcGxheV9y ZXF1aXJlX291dHB1dChpZ3RfZGlzcGxheV90ICpkaXNwbGF5KTsKIHZvaWQgaWd0X2Rpc3BsYXlf cmVxdWlyZV9vdXRwdXRfb25fcGlwZShpZ3RfZGlzcGxheV90ICpkaXNwbGF5LCBlbnVtIHBpcGUg cGlwZSk7CiAKZGlmZiAtLWdpdCBhL3Rlc3RzL2RlYnVnZnNfdGVzdC5jIGIvdGVzdHMvZGVidWdm c190ZXN0LmMKaW5kZXggMmU4N2U0NDIuLmU0NDM2OTllIDEwMDY0NAotLS0gYS90ZXN0cy9kZWJ1 Z2ZzX3Rlc3QuYworKysgYi90ZXN0cy9kZWJ1Z2ZzX3Rlc3QuYwpAQCAtMTAyLDcgKzEwMiwxMCBA QCBpZ3RfbWFpbgogCQlkZWJ1Z2ZzID0gaWd0X2RlYnVnZnNfZGlyKGZkKTsKIAogCQlrbXN0ZXN0 X3NldF92dF9ncmFwaGljc19tb2RlKCk7Ci0JCWlndF9kaXNwbGF5X2luaXQoJmRpc3BsYXksIGZk KTsKKwkJaWYgKGlndF9kaXNwbGF5X2F2YWlsYWJsZShmZCkpCisJCQlpZ3RfZGlzcGxheV9pbml0 KCZkaXNwbGF5LCBmZCk7CisJCWVsc2UKKwkJCWRpc3BsYXkubl9waXBlcyA9IGRpc3BsYXkubl9v dXRwdXRzID0gMDsKIAl9CiAKIAlpZ3Rfc3VidGVzdCgicmVhZF9hbGxfZW50cmllcyIpIHsKQEAg LTEzMSw4ICsxMzQsOSBAQCBpZ3RfbWFpbgogCQkJfQogCQl9CiAKLQkJaWd0X2Rpc3BsYXlfY29t bWl0MigmZGlzcGxheSwgZGlzcGxheS5pc19hdG9taWMgPyBDT01NSVRfQVRPTUlDIDogQ09NTUlU X0xFR0FDWSk7Ci0KKwkJaWYgKGRpc3BsYXkubl9waXBlcykKKwkJCWlndF9kaXNwbGF5X2NvbW1p dDIoJmRpc3BsYXksIGRpc3BsYXkuaXNfYXRvbWljID8KKwkJCQkJICAgIENPTU1JVF9BVE9NSUMg OiBDT01NSVRfTEVHQUNZKTsKIAkJcmVhZF9hbmRfZGlzY2FyZF9zeXNmc19lbnRyaWVzKGRlYnVn ZnMsIDApOwogCX0KIApAQCAtMTQ3LDcgKzE1MSw5IEBAIGlndF9tYWluCiAJCQlmb3JfZWFjaF9w bGFuZV9vbl9waXBlKCZkaXNwbGF5LCBwaXBlLCBwbGFuZSkKIAkJCQlpZ3RfcGxhbmVfc2V0X2Zi KHBsYW5lLCBOVUxMKTsKIAotCQlpZ3RfZGlzcGxheV9jb21taXQyKCZkaXNwbGF5LCBkaXNwbGF5 LmlzX2F0b21pYyA/IENPTU1JVF9BVE9NSUMgOiBDT01NSVRfTEVHQUNZKTsKKwkJaWYgKGRpc3Bs YXkubl9waXBlcykKKwkJCWlndF9kaXNwbGF5X2NvbW1pdDIoJmRpc3BsYXksIGRpc3BsYXkuaXNf YXRvbWljID8KKwkJCQkJICAgIENPTU1JVF9BVE9NSUMgOiBDT01NSVRfTEVHQUNZKTsKIAogCQly ZWFkX2FuZF9kaXNjYXJkX3N5c2ZzX2VudHJpZXMoZGVidWdmcywgMCk7CiAJfQpkaWZmIC0tZ2l0 IGEvdGVzdHMva21zXzNkLmMgYi90ZXN0cy9rbXNfM2QuYwppbmRleCBiZmM5ODFlZS4uZWYyMWE3 NDUgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ttc18zZC5jCisrKyBiL3Rlc3RzL2ttc18zZC5jCkBAIC0z NiwxMCArMzYsOSBAQCBpZ3Rfc2ltcGxlX21haW4KIAlpbnQgbW9kZV9jb3VudCwgY29ubmVjdG9y X2lkOwogCiAJZHJtX2ZkID0gZHJtX29wZW5fZHJpdmVyX21hc3RlcihEUklWRVJfSU5URUwpOwor CWlndF9yZXF1aXJlKGRybVNldENsaWVudENhcChkcm1fZmQsIERSTV9DTElFTlRfQ0FQX1NURVJF T18zRCwgMSkgPj0gMCk7CiAJcmVzID0gZHJtTW9kZUdldFJlc291cmNlcyhkcm1fZmQpOwogCi0J aWd0X2Fzc2VydChkcm1TZXRDbGllbnRDYXAoZHJtX2ZkLCBEUk1fQ0xJRU5UX0NBUF9TVEVSRU9f M0QsIDEpID49IDApOwotCiAJLyogZmluZCBhbiBoZG1pIGNvbm5lY3RvciAqLwogCWZvciAoaW50 IGkgPSAwOyBpIDwgcmVzLT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKIApkaWZmIC0tZ2l0IGEv dGVzdHMva21zX2FkZGZiX2Jhc2ljLmMgYi90ZXN0cy9rbXNfYWRkZmJfYmFzaWMuYwppbmRleCBj ZTQ4ZDI0Zi4uNWQzZjliODUgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ttc19hZGRmYl9iYXNpYy5jCisr KyBiL3Rlc3RzL2ttc19hZGRmYl9iYXNpYy5jCkBAIC02NzEsOCArNjcxLDEwIEBAIGludCBmZDsK IAogaWd0X21haW4KIHsKLQlpZ3RfZml4dHVyZQorCWlndF9maXh0dXJlIHsKIAkJZmQgPSBkcm1f b3Blbl9kcml2ZXJfbWFzdGVyKERSSVZFUl9BTlkpOworCQlpZ3RfZGlzcGxheV9yZXF1aXJlKGZk KTsKKwl9CiAKIAlpbnZhbGlkX3Rlc3RzKGZkKTsKIApkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2Ry YXdfY3JjLmMgYi90ZXN0cy9rbXNfZHJhd19jcmMuYwppbmRleCA4NmRjZjM5Mi4uZWExMzE3MDUg MTAwNjQ0Ci0tLSBhL3Rlc3RzL2ttc19kcmF3X2NyYy5jCisrKyBiL3Rlc3RzL2ttc19kcmF3X2Ny Yy5jCkBAIC0yNTMsNiArMjUzLDcgQEAgc3RhdGljIHZvaWQgc2V0dXBfZW52aXJvbm1lbnQodm9p ZCkKIAlpZ3RfcmVxdWlyZShkcm1fZmQgPj0gMCk7CiAKIAlkcm1fcmVzID0gZHJtTW9kZUdldFJl c291cmNlcyhkcm1fZmQpOworCWlndF9yZXF1aXJlKGRybV9yZXMpOwogCWlndF9hc3NlcnQoZHJt X3Jlcy0+Y291bnRfY29ubmVjdG9ycyA8PSBNQVhfQ09OTkVDVE9SUyk7CiAKIAlmb3IgKGkgPSAw OyBpIDwgZHJtX3Jlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKQpkaWZmIC0tZ2l0IGEvdGVzdHMv a21zX2ZiY29uX2ZidC5jIGIvdGVzdHMva21zX2ZiY29uX2ZidC5jCmluZGV4IDEzOGVkYTliLi45 ZjljMzBkMiAxMDA2NDQKLS0tIGEvdGVzdHMva21zX2ZiY29uX2ZidC5jCisrKyBiL3Rlc3RzL2tt c19mYmNvbl9mYnQuYwpAQCAtNjMsNiArNjMsNyBAQCBzdGF0aWMgdm9pZCBzZXR1cF9kcm0oc3Ry dWN0IGRybV9pbmZvICpkcm0pCiAJZHJtLT5kZWJ1Z2ZzX2ZkID0gaWd0X2RlYnVnZnNfZGlyKGRy bS0+ZmQpOwogCiAJZHJtLT5yZXMgPSBkcm1Nb2RlR2V0UmVzb3VyY2VzKGRybS0+ZmQpOworCWln dF9yZXF1aXJlKGRybS0+cmVzKTsKIAlpZ3RfYXNzZXJ0KGRybS0+cmVzLT5jb3VudF9jb25uZWN0 b3JzIDw9IE1BWF9DT05ORUNUT1JTKTsKIAogCWZvciAoaSA9IDA7IGkgPCBkcm0tPnJlcy0+Y291 bnRfY29ubmVjdG9yczsgaSsrKQpkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2ZvcmNlX2Nvbm5lY3Rv cl9iYXNpYy5jIGIvdGVzdHMva21zX2ZvcmNlX2Nvbm5lY3Rvcl9iYXNpYy5jCmluZGV4IDg5NDMx MjMyLi41YjZmNzA3ZiAxMDA2NDQKLS0tIGEvdGVzdHMva21zX2ZvcmNlX2Nvbm5lY3Rvcl9iYXNp Yy5jCisrKyBiL3Rlc3RzL2ttc19mb3JjZV9jb25uZWN0b3JfYmFzaWMuYwpAQCAtOTAsNyArOTAs NyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAKIAkJZHJtX2ZkID0gZHJtX29w ZW5fZHJpdmVyX21hc3RlcihEUklWRVJfSU5URUwpOwogCQlyZXMgPSBkcm1Nb2RlR2V0UmVzb3Vy Y2VzKGRybV9mZCk7Ci0JCWlndF9hc3NlcnQocmVzKTsKKwkJaWd0X3JlcXVpcmUocmVzKTsKIAog CQkvKiBmaW5kIHRoZSB2Z2EgY29ubmVjdG9yICovCiAJCWZvciAoaW50IGkgPSAwOyBpIDwgcmVz LT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKZGlmZiAtLWdpdCBhL3Rlc3RzL2ttc19nZXRmYi5j IGIvdGVzdHMva21zX2dldGZiLmMKaW5kZXggODFkNzk2YTQuLjY3MDg4ODgzIDEwMDY0NAotLS0g YS90ZXN0cy9rbXNfZ2V0ZmIuYworKysgYi90ZXN0cy9rbXNfZ2V0ZmIuYwpAQCAtMTk4LDggKzE5 OCwxMCBAQCBpZ3RfbWFpbgogewogCWludCBmZDsKIAotCWlndF9maXh0dXJlCisJaWd0X2ZpeHR1 cmUgewogCQlmZCA9IGRybV9vcGVuX2RyaXZlcl9tYXN0ZXIoRFJJVkVSX0FOWSk7CisJCWlndF9k aXNwbGF5X3JlcXVpcmUoZmQpOworCX0KIAogCWlndF9zdWJ0ZXN0X2dyb3VwCiAJCXRlc3RfaGFu ZGxlX2lucHV0KGZkKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL2ttc19oZG1pX2luamVjdC5jIGIvdGVz dHMva21zX2hkbWlfaW5qZWN0LmMKaW5kZXggMjI1NzBhNGIuLmMzZTk3NDZlIDEwMDY0NAotLS0g YS90ZXN0cy9rbXNfaGRtaV9pbmplY3QuYworKysgYi90ZXN0cy9rbXNfaGRtaV9pbmplY3QuYwpA QCAtMjU1LDYgKzI1NSw3IEBAIGlndF9tYWluCiAJaWd0X2ZpeHR1cmUgewogCQlkcm1fZmQgPSBk cm1fb3Blbl9kcml2ZXJfbWFzdGVyKERSSVZFUl9JTlRFTCk7CiAJCXJlcyA9IGRybU1vZGVHZXRS ZXNvdXJjZXMoZHJtX2ZkKTsKKwkJaWd0X3JlcXVpcmUocmVzKTsKIAogCQljb25uZWN0b3IgPSBn ZXRfY29ubmVjdG9yKGRybV9mZCwgcmVzKTsKIAkJaWd0X3JlcXVpcmUoY29ubmVjdG9yKTsKZGlm ZiAtLWdpdCBhL3Rlc3RzL2ttc19zZXRtb2RlLmMgYi90ZXN0cy9rbXNfc2V0bW9kZS5jCmluZGV4 IDQ3ZDA0ZmI1Li42ODE0OTYwNCAxMDA2NDQKLS0tIGEvdGVzdHMva21zX3NldG1vZGUuYworKysg Yi90ZXN0cy9rbXNfc2V0bW9kZS5jCkBAIC04NTgsNyArODU4LDcgQEAgaW50IG1haW4oaW50IGFy Z2MsIGNoYXIgKiphcmd2KQogCQkJa21zdGVzdF9zZXRfdnRfZ3JhcGhpY3NfbW9kZSgpOwogCiAJ CWRybV9yZXNvdXJjZXMgPSBkcm1Nb2RlR2V0UmVzb3VyY2VzKGRybV9mZCk7Ci0JCWlndF9hc3Nl cnQoZHJtX3Jlc291cmNlcyk7CisJCWlndF9yZXF1aXJlKGRybV9yZXNvdXJjZXMpOwogCX0KIAog CWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzKTsgaSsrKSB7CmRpZmYgLS1naXQgYS90 ZXN0cy9rbXNfc3lzZnNfZWRpZF90aW1pbmcuYyBiL3Rlc3RzL2ttc19zeXNmc19lZGlkX3RpbWlu Zy5jCmluZGV4IDEyMDEzODgxLi43ZWE0NThhNyAxMDA2NDQKLS0tIGEvdGVzdHMva21zX3N5c2Zz X2VkaWRfdGltaW5nLmMKKysrIGIvdGVzdHMva21zX3N5c2ZzX2VkaWRfdGltaW5nLmMKQEAgLTQx LDYgKzQxLDEwIEBAIGlndF9zaW1wbGVfbWFpbgogewogCURJUiAqZGlycDsKIAlzdHJ1Y3QgZGly ZW50ICpkZTsKKwlpbnQgZHJtX2ZkOworCisJZHJtX2ZkID0gZHJtX29wZW5fZHJpdmVyX21hc3Rl cihEUklWRVJfQU5ZKTsKKwljbG9zZShkcm1fZmQpOwogCiAJZGlycCA9IG9wZW5kaXIoIi9zeXMv Y2xhc3MvZHJtIik7CiAJaWd0X2Fzc2VydChkaXJwICE9IE5VTEwpOwpkaWZmIC0tZ2l0IGEvdGVz dHMva21zX3R2X2xvYWRfZGV0ZWN0LmMgYi90ZXN0cy9rbXNfdHZfbG9hZF9kZXRlY3QuYwppbmRl eCA1Njg0YjI2Ny4uNTZmZGNiNWYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ttc190dl9sb2FkX2RldGVj dC5jCisrKyBiL3Rlc3RzL2ttc190dl9sb2FkX2RldGVjdC5jCkBAIC0zOCw3ICszOCw3IEBAIGlu dCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKIAlpZ3RfZml4dHVyZSB7CiAJCWRybV9mZCA9 IGRybV9vcGVuX2RyaXZlcl9tYXN0ZXIoRFJJVkVSX0lOVEVMKTsKIAkJcmVzID0gZHJtTW9kZUdl dFJlc291cmNlcyhkcm1fZmQpOwotCQlpZ3RfYXNzZXJ0KHJlcyk7CisJCWlndF9yZXF1aXJlKHJl cyk7CiAKIAkJLyogZmluZCB0aGUgVFYgY29ubmVjdG9yICovCiAJCWZvciAoaW50IGkgPSAwOyBp IDwgcmVzLT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKZGlmZiAtLWdpdCBhL3Rlc3RzL3BlcmZf cG11LmMgYi90ZXN0cy9wZXJmX3BtdS5jCmluZGV4IDZhYjI1OTViLi5mNTNiMDZhYyAxMDA2NDQK LS0tIGEvdGVzdHMvcGVyZl9wbXUuYworKysgYi90ZXN0cy9wZXJmX3BtdS5jCkBAIC0xMzk4LDEy ICsxMzk4LDEyIEBAIHRlc3RfcmM2KGludCBnZW1fZmQsIHVuc2lnbmVkIGludCBmbGFncykKIAkJ ZHJtTW9kZVJlcyAqcmVzOwogCiAJCXJlcyA9IGRybU1vZGVHZXRSZXNvdXJjZXMoZ2VtX2ZkKTsK LQkJaWd0X2Fzc2VydChyZXMpOwotCi0JCS8qIGZvcmNlIGFsbCBjb25uZWN0b3JzIG9mZiAqLwot CQlrbXN0ZXN0X3NldF92dF9ncmFwaGljc19tb2RlKCk7Ci0JCWttc3Rlc3RfdW5zZXRfYWxsX2Ny dGNzKGdlbV9mZCwgcmVzKTsKLQkJZHJtTW9kZUZyZWVSZXNvdXJjZXMocmVzKTsKKwkJaWYgKHJl cykgeworCQkJLyogZm9yY2UgYWxsIGNvbm5lY3RvcnMgb2ZmICovCisJCQlrbXN0ZXN0X3NldF92 dF9ncmFwaGljc19tb2RlKCk7CisJCQlrbXN0ZXN0X3Vuc2V0X2FsbF9jcnRjcyhnZW1fZmQsIHJl cyk7CisJCQlkcm1Nb2RlRnJlZVJlc291cmNlcyhyZXMpOworCQl9CiAKIAkJaWd0X3JlcXVpcmUo aWd0X3NldHVwX3J1bnRpbWVfcG0oKSk7CiAJCWlndF9yZXF1aXJlKGlndF93YWl0X2Zvcl9wbV9z dGF0dXMoSUdUX1JVTlRJTUVfUE1fU1RBVFVTX1NVU1BFTkRFRCkpOwpkaWZmIC0tZ2l0IGEvdGVz dHMvcG1fbHBzcC5jIGIvdGVzdHMvcG1fbHBzcC5jCmluZGV4IGE3NDFjYjc4Li5iMzE5ZGJlOSAx MDA2NDQKLS0tIGEvdGVzdHMvcG1fbHBzcC5jCisrKyBiL3Rlc3RzL3BtX2xwc3AuYwpAQCAtMTk5 LDYgKzE5OSw3IEBAIGlndF9tYWluCiAJCWRldmlkID0gaW50ZWxfZ2V0X2RybV9kZXZpZChkcm1f ZmQpOwogCiAJCWRybV9yZXMgPSBkcm1Nb2RlR2V0UmVzb3VyY2VzKGRybV9mZCk7CisJCWlndF9y ZXF1aXJlKGRybV9yZXMpOwogCQlpZ3RfYXNzZXJ0KGRybV9yZXMtPmNvdW50X2Nvbm5lY3RvcnMg PD0gTUFYX0NPTk5FQ1RPUlMpOwogCiAJCWZvciAoaSA9IDA7IGkgPCBkcm1fcmVzLT5jb3VudF9j b25uZWN0b3JzOyBpKyspCmRpZmYgLS1naXQgYS90ZXN0cy9wbV9ycG0uYyBiL3Rlc3RzL3BtX3Jw bS5jCmluZGV4IGMyNGZkOTViLi5lZjdmMzEyOCAxMDA2NDQKLS0tIGEvdGVzdHMvcG1fcnBtLmMK KysrIGIvdGVzdHMvcG1fcnBtLmMKQEAgLTIyMiw2ICsyMjIsOSBAQCBzdGF0aWMgdm9pZCBkaXNh YmxlX2FsbF9zY3JlZW5zX2RwbXMoc3RydWN0IG1vZGVfc2V0X2RhdGEgKmRhdGEpCiB7CiAJaW50 IGk7CiAKKwlpZiAoIWRhdGEtPnJlcykKKwkJcmV0dXJuOworCiAJZm9yIChpID0gMDsgaSA8IGRh dGEtPnJlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKSB7CiAJCWRybU1vZGVDb25uZWN0b3JQdHIg YyA9IGRhdGEtPmNvbm5lY3RvcnNbaV07CiAKQEAgLTIzMSw2ICsyMzQsOSBAQCBzdGF0aWMgdm9p ZCBkaXNhYmxlX2FsbF9zY3JlZW5zX2RwbXMoc3RydWN0IG1vZGVfc2V0X2RhdGEgKmRhdGEpCiAK IHN0YXRpYyB2b2lkIGRpc2FibGVfYWxsX3NjcmVlbnMoc3RydWN0IG1vZGVfc2V0X2RhdGEgKmRh dGEpCiB7CisJaWYgKCFkYXRhLT5yZXMpCisJCXJldHVybjsKKwogCWttc3Rlc3RfdW5zZXRfYWxs X2NydGNzKGRybV9mZCwgZGF0YS0+cmVzKTsKIH0KIApAQCAtMzI5LDYgKzMzNSw4IEBAIHN0YXRp YyBib29sIGVuYWJsZV9vbmVfc2NyZWVuX3dpdGhfdHlwZShzdHJ1Y3QgbW9kZV9zZXRfZGF0YSAq ZGF0YSwKIHsKIAlzdHJ1Y3QgbW9kZXNldF9wYXJhbXMgKnBhcmFtcyA9IE5VTEw7CiAKKwlpZ3Rf ZGlzcGxheV9yZXF1aXJlKGRybV9mZCk7CisKIAlzd2l0Y2ggKHR5cGUpIHsKIAljYXNlIFNDUkVF Tl9UWVBFX0FOWToKIAkJcGFyYW1zID0gZGVmYXVsdF9tb2RlX3BhcmFtczsKQEAgLTM4OCw4ICsz OTYsMTEgQEAgc3RhdGljIHZvaWQgaW5pdF9tb2RlX3NldF9kYXRhKHN0cnVjdCBtb2RlX3NldF9k YXRhICpkYXRhKQogewogCWludCBpOwogCisJZGF0YS0+ZGV2aWQgPSBpbnRlbF9nZXRfZHJtX2Rl dmlkKGRybV9mZCk7CisKIAlkYXRhLT5yZXMgPSBkcm1Nb2RlR2V0UmVzb3VyY2VzKGRybV9mZCk7 Ci0JaWd0X2Fzc2VydChkYXRhLT5yZXMpOworCWlmICghZGF0YS0+cmVzKQorCQlyZXR1cm47CiAJ aWd0X2Fzc2VydChkYXRhLT5yZXMtPmNvdW50X2Nvbm5lY3RvcnMgPD0gTUFYX0NPTk5FQ1RPUlMp OwogCiAJZm9yIChpID0gMDsgaSA8IGRhdGEtPnJlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKSB7 CkBAIC0zOTgsOCArNDA5LDYgQEAgc3RhdGljIHZvaWQgaW5pdF9tb2RlX3NldF9kYXRhKHN0cnVj dCBtb2RlX3NldF9kYXRhICpkYXRhKQogCQlkYXRhLT5lZGlkc1tpXSA9IGdldF9jb25uZWN0b3Jf ZWRpZChkYXRhLT5jb25uZWN0b3JzW2ldLCBpKTsKIAl9CiAKLQlkYXRhLT5kZXZpZCA9IGludGVs X2dldF9kcm1fZGV2aWQoZHJtX2ZkKTsKLQogCWttc3Rlc3Rfc2V0X3Z0X2dyYXBoaWNzX21vZGUo KTsKIAogCWluaXRfbW9kZXNldF9jYWNoZWRfcGFyYW1zKCZtc19kYXRhKTsKQEAgLTQwOSwxMSAr NDE4LDE1IEBAIHN0YXRpYyB2b2lkIGZpbmlfbW9kZV9zZXRfZGF0YShzdHJ1Y3QgbW9kZV9zZXRf ZGF0YSAqZGF0YSkKIHsKIAlpbnQgaTsKIAorCWlmICghZGF0YS0+cmVzKQorCQlyZXR1cm47CisK IAlmb3IgKGkgPSAwOyBpIDwgZGF0YS0+cmVzLT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKIAkJ ZHJtTW9kZUZyZWVDb25uZWN0b3IoZGF0YS0+Y29ubmVjdG9yc1tpXSk7CiAJCWRybU1vZGVGcmVl UHJvcGVydHlCbG9iKGRhdGEtPmVkaWRzW2ldKTsKIAl9CiAJZHJtTW9kZUZyZWVSZXNvdXJjZXMo ZGF0YS0+cmVzKTsKKwlkYXRhLT5yZXMgPSBOVUxMOwogfQogCiBzdGF0aWMgdm9pZCBnZXRfZHJt X2luZm8oc3RydWN0IGNvbXBhcmVfZGF0YSAqZGF0YSkKQEAgLTU3NCw2ICs1ODcsOSBAQCBzdGF0 aWMgaW50IGNvdW50X2RybV92YWxpZF9lZGlkcyhzdHJ1Y3QgbW9kZV9zZXRfZGF0YSAqZGF0YSkK IHsKIAlpbnQgaSwgcmV0ID0gMDsKIAorCWlmICghZGF0YS0+cmVzKQorCQlyZXR1cm4gcmV0Owor CiAJZm9yIChpID0gMDsgaSA8IGRhdGEtPnJlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKQogCQlp ZiAoZGF0YS0+ZWRpZHNbaV0gJiYgZWRpZF9pc192YWxpZChkYXRhLT5lZGlkc1tpXS0+ZGF0YSkp CiAJCQlyZXQrKzsKQEAgLTYzNyw2ICs2NTMsOSBAQCBzdGF0aWMgaW50IGNvdW50X3ZnYV9vdXRw dXRzKHN0cnVjdCBtb2RlX3NldF9kYXRhICpkYXRhKQogewogCWludCBpLCBjb3VudCA9IDA7CiAK KwlpZiAoIWRhdGEtPnJlcykKKwkJcmV0dXJuIGNvdW50OworCiAJZm9yIChpID0gMDsgaSA8IGRh dGEtPnJlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKQogCQlpZiAoZGF0YS0+Y29ubmVjdG9yc1tp XS0+Y29ubmVjdG9yX3R5cGUgPT0KIAkJICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9WR0EpCkBAIC03 MzAsNyArNzQ5LDggQEAgc3RhdGljIGJvb2wgc2V0dXBfZW52aXJvbm1lbnQodm9pZCkKIAlpZ3Rf aW5mbygiUnVudGltZSBQTSBzdXBwb3J0OiAlZFxuIiwgaGFzX3J1bnRpbWVfcG0pOwogCWlndF9p bmZvKCJQQzggcmVzaWRlbmN5IHN1cHBvcnQ6ICVkXG4iLCBoYXNfcGM4KTsKIAlpZ3RfcmVxdWly ZShoYXNfcnVudGltZV9wbSk7Ci0JaWd0X3JlcXVpcmUoZG1jX2xvYWRlZCgpKTsKKwlpZiAobXNf ZGF0YS5yZXMpCisJCWlndF9yZXF1aXJlKGRtY19sb2FkZWQoKSk7CiAKIG91dDoKIAlkaXNhYmxl X2FsbF9zY3JlZW5zKCZtc19kYXRhKTsKQEAgLTc3Myw2ICs3OTMsOSBAQCBzdGF0aWMgdm9pZCBw YzhfcmVzaWRlbmN5X3N1YnRlc3Qodm9pZCkKIAkJICAgICAiTWFjaGluZSBpcyBub3QgcmVhY2hp bmcgUEM4KyBzdGF0ZXMsIHBsZWFzZSBjaGVjayBpdHMgIgogCQkgICAgICJjb25maWd1cmF0aW9u LlxuIik7CiAKKwlpZiAoIW1zX2RhdGEucmVzKQorCQlyZXR1cm47CisKIAkvKiBNYWtlIHN1cmUg UEM4KyByZXNpZGVuY2llcyBzdG9wISAqLwogCWVuYWJsZV9vbmVfc2NyZWVuKCZtc19kYXRhKTsK IAlpZ3RfYXNzZXJ0X2YoIXBjOF9wbHVzX3Jlc2lkZW5jeV9jaGFuZ2VkKDEwKSwKQEAgLTc4Myw2 ICs4MDYsOCBAQCBzdGF0aWMgdm9pZCBtb2Rlc2V0X3N1YnRlc3QoZW51bSBzY3JlZW5fdHlwZSB0 eXBlLCBpbnQgcm91bmRzLCBpbnQgd2FpdF9mbGFncykKIHsKIAlpbnQgaTsKIAorCWlndF9kaXNw bGF5X3JlcXVpcmUoZHJtX2ZkKTsKKwogCWlmICh3YWl0X2ZsYWdzICYgV0FJVF9QQzhfUkVTKQog CQlpZ3RfcmVxdWlyZShoYXNfcGM4KTsKIApAQCAtODY0LDYgKzg4OSw3IEBAIHN0YXRpYyB2b2lk IGkyY19zdWJ0ZXN0X2NoZWNrX2Vudmlyb25tZW50KHZvaWQpCiAvKiBUcnkgdG8gdXNlIHJhdyBJ MkMsIHdoaWNoIGFsc28gbmVlZHMgaW50ZXJydXB0cy4gKi8KIHN0YXRpYyB2b2lkIGkyY19zdWJ0 ZXN0KHZvaWQpCiB7CisJaWd0X2Rpc3BsYXlfcmVxdWlyZShkcm1fZmQpOwogCWkyY19zdWJ0ZXN0 X2NoZWNrX2Vudmlyb25tZW50KCk7CiAKIAllbmFibGVfb25lX3NjcmVlbl9hbmRfd2FpdCgmbXNf ZGF0YSk7CkBAIC05NjcsNyArOTkzLDggQEAgc3RhdGljIHZvaWQgZ2VtX21tYXBfc3VidGVzdChi b29sIGd0dF9tbWFwKQogCXVpbnQ4X3QgKmdlbV9idWY7CiAKIAkvKiBDcmVhdGUsIG1hcCBhbmQg c2V0IGRhdGEgd2hpbGUgdGhlIGRldmljZSBpcyBhY3RpdmUuICovCi0JZW5hYmxlX29uZV9zY3Jl ZW5fYW5kX3dhaXQoJm1zX2RhdGEpOworCWlmIChtc19kYXRhLnJlcykKKwkJZW5hYmxlX29uZV9z Y3JlZW5fYW5kX3dhaXQoJm1zX2RhdGEpOwogCiAJaGFuZGxlID0gZ2VtX2NyZWF0ZShkcm1fZmQs IGJ1Zl9zaXplKTsKIApAQCAtOTk4LDcgKzEwMjUsOCBAQCBzdGF0aWMgdm9pZCBnZW1fbW1hcF9z dWJ0ZXN0KGJvb2wgZ3R0X21tYXApCiAJaWd0X2Fzc2VydCh3YWl0X2Zvcl9zdXNwZW5kZWQoKSk7 CiAKIAkvKiBOb3cgcmVzdW1lIGFuZCBzZWUgaWYgaXQncyBzdGlsbCB0aGVyZS4gKi8KLQllbmFi bGVfb25lX3NjcmVlbl9hbmRfd2FpdCgmbXNfZGF0YSk7CisJaWYgKG1zX2RhdGEucmVzKQorCQll bmFibGVfb25lX3NjcmVlbl9hbmRfd2FpdCgmbXNfZGF0YSk7CiAJZm9yIChpID0gMDsgaSA8IGJ1 Zl9zaXplOyBpKyspCiAJCWlndF9hc3NlcnQoZ2VtX2J1ZltpXSA9PSAofmkgJiAweEZGKSk7CiAK QEAgLTEwMjcsNyArMTA1NSw4IEBAIHN0YXRpYyB2b2lkIGdlbV9tbWFwX3N1YnRlc3QoYm9vbCBn dHRfbW1hcCkKIAlpZ3RfYXNzZXJ0KHdhaXRfZm9yX3N1c3BlbmRlZCgpKTsKIAogCS8qIFJlc3Vt ZSBhbmQgY2hlY2sgaWYgaXQncyBzdGlsbCB0aGVyZS4gKi8KLQllbmFibGVfb25lX3NjcmVlbl9h bmRfd2FpdCgmbXNfZGF0YSk7CisJaWYgKG1zX2RhdGEucmVzKQorCQllbmFibGVfb25lX3NjcmVl bl9hbmRfd2FpdCgmbXNfZGF0YSk7CiAJZm9yIChpID0gMDsgaSA8IGJ1Zl9zaXplOyBpKyspCiAJ CWlndF9hc3NlcnQoZ2VtX2J1ZltpXSA9PSAoaSAmIDB4RkYpKTsKIApAQCAtMTA1MCw3ICsxMDc5 LDggQEAgc3RhdGljIHZvaWQgZ2VtX3ByZWFkX3N1YnRlc3Qodm9pZCkKIAltZW1zZXQocmVhZF9i dWYsIDAsIGJ1Zl9zaXplKTsKIAogCS8qIENyZWF0ZSBhbmQgc2V0IGRhdGEgd2hpbGUgdGhlIGRl dmljZSBpcyBhY3RpdmUuICovCi0JZW5hYmxlX29uZV9zY3JlZW5fYW5kX3dhaXQoJm1zX2RhdGEp OworCWlmIChtc19kYXRhLnJlcykKKwkJZW5hYmxlX29uZV9zY3JlZW5fYW5kX3dhaXQoJm1zX2Rh dGEpOwogCiAJaGFuZGxlID0gZ2VtX2NyZWF0ZShkcm1fZmQsIGJ1Zl9zaXplKTsKIApAQCAtMTA4 MCw3ICsxMTEwLDggQEAgc3RhdGljIHZvaWQgZ2VtX3ByZWFkX3N1YnRlc3Qodm9pZCkKIAlpZ3Rf YXNzZXJ0KHdhaXRfZm9yX3N1c3BlbmRlZCgpKTsKIAogCS8qIE5vdyByZXN1bWUgYW5kIHNlZSBp ZiBpdCdzIHN0aWxsIHRoZXJlLiAqLwotCWVuYWJsZV9vbmVfc2NyZWVuX2FuZF93YWl0KCZtc19k YXRhKTsKKwlpZiAobXNfZGF0YS5yZXMpCisJCWVuYWJsZV9vbmVfc2NyZWVuX2FuZF93YWl0KCZt c19kYXRhKTsKIAogCW1lbXNldChyZWFkX2J1ZiwgMCwgYnVmX3NpemUpOwogCWdlbV9yZWFkKGRy bV9mZCwgaGFuZGxlLCAwLCByZWFkX2J1ZiwgYnVmX3NpemUpOwpAQCAtMTE4Nyw3ICsxMjE4LDgg QEAgc3RhdGljIHZvaWQgZ2VtX2V4ZWNidWZfc3VidGVzdCh2b2lkKQogCXVpbnQzMl90IGNvbG9y OwogCiAJLyogQ3JlYXRlIGFuZCBzZXQgZGF0YSB3aGlsZSB0aGUgZGV2aWNlIGlzIGFjdGl2ZS4g Ki8KLQllbmFibGVfb25lX3NjcmVlbl9hbmRfd2FpdCgmbXNfZGF0YSk7CisJaWYgKG1zX2RhdGEu cmVzKQorCQllbmFibGVfb25lX3NjcmVlbl9hbmRfd2FpdCgmbXNfZGF0YSk7CiAKIAloYW5kbGUg PSBnZW1fY3JlYXRlKGRybV9mZCwgZHN0X3NpemUpOwogCkBAIC0xMjE5LDcgKzEyNTEsOCBAQCBz dGF0aWMgdm9pZCBnZW1fZXhlY2J1Zl9zdWJ0ZXN0KHZvaWQpCiAJfQogCiAJLyogTm93IHJlc3Vt ZSBhbmQgY2hlY2sgZm9yIGl0IGFnYWluLiAqLwotCWVuYWJsZV9vbmVfc2NyZWVuX2FuZF93YWl0 KCZtc19kYXRhKTsKKwlpZiAobXNfZGF0YS5yZXMpCisJCWVuYWJsZV9vbmVfc2NyZWVuX2FuZF93 YWl0KCZtc19kYXRhKTsKIAogCW1lbXNldChjcHVfYnVmLCAwLCBkc3Rfc2l6ZSk7CiAJZ2VtX3Jl YWQoZHJtX2ZkLCBoYW5kbGUsIDAsIGNwdV9idWYsIGRzdF9zaXplKTsKQEAgLTEzODgsOCArMTQy MSwxMCBAQCBzdGF0aWMgdm9pZCBwY2lfZDNfc3RhdGVfc3VidGVzdCh2b2lkKQogCWRpc2FibGVf YWxsX3NjcmVlbnNfYW5kX3dhaXQoJm1zX2RhdGEpOwogCWlndF9hc3NlcnQoaWd0X3dhaXQoZGV2 aWNlX2luX3BjaV9kMygpLCAyMDAwLCAxMDApKTsKIAotCWVuYWJsZV9vbmVfc2NyZWVuX2FuZF93 YWl0KCZtc19kYXRhKTsKLQlpZ3RfYXNzZXJ0KCFkZXZpY2VfaW5fcGNpX2QzKCkpOworCWlmICht c19kYXRhLnJlcykgeworCQllbmFibGVfb25lX3NjcmVlbl9hbmRfd2FpdCgmbXNfZGF0YSk7CisJ CWlndF9hc3NlcnQoIWRldmljZV9pbl9wY2lfZDMoKSk7CisJfQogfQogCiBzdGF0aWMgdm9pZCBf X2F0dHJpYnV0ZV9fKChub3JldHVybikpIHN0YXlfc3VidGVzdCh2b2lkKQpAQCAtMTQ1Myw3ICsx NDg4LDggQEAgc3RhdGljIHZvaWQgc3lzdGVtX3N1c3BlbmRfbW9kZXNldF9zdWJ0ZXN0KHZvaWQp CiAJaWd0X3N5c3RlbV9zdXNwZW5kX2F1dG9yZXN1bWUoU1VTUEVORF9TVEFURV9NRU0sIFNVU1BF TkRfVEVTVF9OT05FKTsKIAlpZ3RfYXNzZXJ0KHdhaXRfZm9yX3N1c3BlbmRlZCgpKTsKIAotCWVu YWJsZV9vbmVfc2NyZWVuX2FuZF93YWl0KCZtc19kYXRhKTsKKwlpZiAobXNfZGF0YS5yZXMpCisJ CWVuYWJsZV9vbmVfc2NyZWVuX2FuZF93YWl0KCZtc19kYXRhKTsKIAlkaXNhYmxlX2FsbF9zY3Jl ZW5zX2FuZF93YWl0KCZtc19kYXRhKTsKIH0KIApAQCAtMTQ2MSw2ICsxNDk3LDggQEAgc3RhdGlj IHZvaWQgc3lzdGVtX3N1c3BlbmRfbW9kZXNldF9zdWJ0ZXN0KHZvaWQpCiAgKiBwcm9kdWNlZCBX QVJOcyBvbiB0aGlzIGNhc2UuICovCiBzdGF0aWMgdm9pZCBkcG1zX21vZGVfdW5zZXRfc3VidGVz dChlbnVtIHNjcmVlbl90eXBlIHR5cGUpCiB7CisJaWd0X2Rpc3BsYXlfcmVxdWlyZShkcm1fZmQp OworCiAJZGlzYWJsZV9hbGxfc2NyZWVuc19hbmRfd2FpdCgmbXNfZGF0YSk7CiAKIAlpZ3RfcmVx dWlyZShlbmFibGVfb25lX3NjcmVlbl93aXRoX3R5cGUoJm1zX2RhdGEsIHR5cGUpKTsKQEAgLTE3 ODMsNyArMTgyMSw4IEBAIHN0YXRpYyB2b2lkIHBtX3Rlc3RfdGlsaW5nKHZvaWQpCiAJCQlpZ3Rf YXNzZXJ0KHRpbGluZ19tb2Rlc1tpXSA9PSB0aSk7CiAJCX0KIAotCQllbmFibGVfb25lX3NjcmVl bl9hbmRfd2FpdCgmbXNfZGF0YSk7CisJCWlmIChtc19kYXRhLnJlcykKKwkJCWVuYWJsZV9vbmVf c2NyZWVuX2FuZF93YWl0KCZtc19kYXRhKTsKIAogCQlmb3IgKGogPSAwLCBrID0gMSA8PCBvZmZf Yml0OwogCQkgICAgIGsgPD0gZ3R0X29ial9tYXhfc2l6ZTsgayA8PD0gMSwgaisrKSB7CmRpZmYg LS1naXQgYS90ZXN0cy9wcmltZV92Z2VtLmMgYi90ZXN0cy9wcmltZV92Z2VtLmMKaW5kZXggYjgy MWZiYjguLjM5OWU0ZWJlIDEwMDY0NAotLS0gYS90ZXN0cy9wcmltZV92Z2VtLmMKKysrIGIvdGVz dHMvcHJpbWVfdmdlbS5jCkBAIC03NDcsNiArNzQ3LDggQEAgc3RhdGljIHZvaWQgdGVzdF9mbGlw KGludCBpOTE1LCBpbnQgdmdlbSwgdW5zaWduZWQgaGFuZykKIAlzdHJ1Y3QgdmdlbV9ibyBib1sy XTsKIAl1aW50MzJfdCBmYl9pZFsyXSwgaGFuZGxlWzJdLCBjcnRjX2lkOwogCisJaWd0X2Rpc3Bs YXlfcmVxdWlyZShpOTE1KTsKKwogCXNpZ25hbChTSUdIVVAsIHNpZ2hhbmRsZXIpOwogCiAJZm9y IChpbnQgaSA9IDA7IGkgPCAyOyBpKyspIHsKZGlmZiAtLWdpdCBhL3Rlc3RzL3Rlc3RkaXNwbGF5 LmMgYi90ZXN0cy90ZXN0ZGlzcGxheS5jCmluZGV4IDBmZjk4YTJiLi44NzAyZjM1NiAxMDA2NDQK LS0tIGEvdGVzdHMvdGVzdGRpc3BsYXkuYworKysgYi90ZXN0cy90ZXN0ZGlzcGxheS5jCkBAIC0x MTIsMTcgKzExMiwxMCBAQCBzdHJ1Y3QgY29ubmVjdG9yIHsKIAlpbnQgcGlwZTsKIH07CiAKLXN0 YXRpYyB2b2lkIGR1bXBfY29ubmVjdG9yc19mZChpbnQgZHJtZmQpCitzdGF0aWMgdm9pZCBkdW1w X2Nvbm5lY3RvcnNfZmQoaW50IGRybWZkLCBkcm1Nb2RlUmVzICptb2RlX3Jlc291cmNlcykKIHsK IAlpbnQgaSwgajsKIAotCWRybU1vZGVSZXMgKm1vZGVfcmVzb3VyY2VzID0gZHJtTW9kZUdldFJl c291cmNlcyhkcm1mZCk7Ci0KLQlpZiAoIW1vZGVfcmVzb3VyY2VzKSB7Ci0JCWlndF93YXJuKCJk cm1Nb2RlR2V0UmVzb3VyY2VzIGZhaWxlZDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7Ci0JCXJl dHVybjsKLQl9Ci0KIAlpZ3RfaW5mbygiQ29ubmVjdG9yczpcbiIpOwogCWlndF9pbmZvKCJpZFx0 ZW5jb2Rlclx0c3RhdHVzXHRcdHR5cGVcdHNpemUgKG1tKVx0bW9kZXNcbiIpOwogCWZvciAoaSA9 IDA7IGkgPCBtb2RlX3Jlc291cmNlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKSB7CkBAIC0xNTQs MTAgKzE0Nyw5IEBAIHN0YXRpYyB2b2lkIGR1bXBfY29ubmVjdG9yc19mZChpbnQgZHJtZmQpCiAJ ZHJtTW9kZUZyZWVSZXNvdXJjZXMobW9kZV9yZXNvdXJjZXMpOwogfQogCi1zdGF0aWMgdm9pZCBk dW1wX2NydGNzX2ZkKGludCBkcm1mZCkKK3N0YXRpYyB2b2lkIGR1bXBfY3J0Y3NfZmQoaW50IGRy bWZkLCBkcm1Nb2RlUmVzICptb2RlX3Jlc291cmNlcykKIHsKIAlpbnQgaTsKLQlkcm1Nb2RlUmVz ICptb2RlX3Jlc291cmNlcyA9IGRybU1vZGVHZXRSZXNvdXJjZXMoZHJtZmQpOwogCiAJaWd0X2lu Zm8oIkNSVENzOlxuIik7CiAJaWd0X2luZm8oImlkXHRmYlx0cG9zXHRzaXplXG4iKTsKQEAgLTE4 MSw4ICsxNzMsMTAgQEAgc3RhdGljIHZvaWQgZHVtcF9jcnRjc19mZChpbnQgZHJtZmQpCiAKIHN0 YXRpYyB2b2lkIGR1bXBfaW5mbyh2b2lkKQogewotCWR1bXBfY29ubmVjdG9yc19mZChkcm1fZmQp OwotCWR1bXBfY3J0Y3NfZmQoZHJtX2ZkKTsKKwlkcm1Nb2RlUmVzICpyZXNvdXJjZXMgPSBkcm1N b2RlR2V0UmVzb3VyY2VzKGRybV9mZCk7CisJaWd0X3JlcXVpcmUocmVzb3VyY2VzKTsKKwlkdW1w X2Nvbm5lY3RvcnNfZmQoZHJtX2ZkLCByZXNvdXJjZXMpOworCWR1bXBfY3J0Y3NfZmQoZHJtX2Zk LCByZXNvdXJjZXMpOwogfQogCiBzdGF0aWMgdm9pZCBjb25uZWN0b3JfZmluZF9wcmVmZXJyZWRf bW9kZSh1aW50MzJfdCBjb25uZWN0b3JfaWQsCkBAIC00NTQsMTAgKzQ0OCw3IEBAIGludCB1cGRh dGVfZGlzcGxheShib29sIHByb2JlKQogCWludCBjOwogCiAJcmVzb3VyY2VzID0gZHJtTW9kZUdl dFJlc291cmNlcyhkcm1fZmQpOwotCWlmICghcmVzb3VyY2VzKSB7Ci0JCWlndF93YXJuKCJkcm1N b2RlR2V0UmVzb3VyY2VzIGZhaWxlZDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7Ci0JCXJldHVy biAwOwotCX0KKwlpZ3RfcmVxdWlyZShyZXNvdXJjZXMpOwogCiAJY29ubmVjdG9ycyA9IGNhbGxv YyhyZXNvdXJjZXMtPmNvdW50X2Nvbm5lY3RvcnMsCiAJCQkgICAgc2l6ZW9mKHN0cnVjdCBjb25u ZWN0b3IpKTsKLS0gCjIuMTkuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3Qt ZGV2Cg==