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 AF7B86E193 for ; Thu, 13 Aug 2020 08:57:50 +0000 (UTC) From: =?UTF-8?q?Zbigniew=20Kempczy=C5=84ski?= Date: Thu, 13 Aug 2020 10:56:45 +0200 Message-Id: <20200813085657.20658-19-zbigniew.kempczynski@intel.com> In-Reply-To: <20200813085657.20658-1-zbigniew.kempczynski@intel.com> References: <20200813085657.20658-1-zbigniew.kempczynski@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v28 18/30] tests/gem_ppgtt: remove libdrm dependency 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: Chris Wilson List-ID: RnJvbTogRG9taW5payBHcnplZ29yemVrIDxkb21pbmlrLmdyemVnb3J6ZWtAaW50ZWwuY29tPgoK VXNlIGludGVsX2JiIC8gaW50ZWxfYnVmIHRvIHJlbW92ZSBsaWJkcm0gZGVwZW5kZW5jeS4KClNp Z25lZC1vZmYtYnk6IERvbWluaWsgR3J6ZWdvcnplayA8ZG9taW5pay5ncnplZ29yemVrQGludGVs LmNvbT4KQ2M6IFpiaWduaWV3IEtlbXBjennFhHNraSA8emJpZ25pZXcua2VtcGN6eW5za2lAaW50 ZWwuY29tPgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0tLQog dGVzdHMvaTkxNS9nZW1fcHBndHQuYyB8IDE4OSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDg3IGluc2VydGlvbnMoKyksIDEwMiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS90ZXN0cy9pOTE1L2dlbV9wcGd0dC5jIGIvdGVzdHMvaTkx NS9nZW1fcHBndHQuYwppbmRleCA4YzAyZTRhZi4uZTRiMWZlNDUgMTAwNjQ0Ci0tLSBhL3Rlc3Rz L2k5MTUvZ2VtX3BwZ3R0LmMKKysrIGIvdGVzdHMvaTkxNS9nZW1fcHBndHQuYwpAQCAtMzgsNTYg KzM4LDUwIEBACiAjaW5jbHVkZSAiaTkxNS9nZW0uaCIKICNpbmNsdWRlICJpZ3QuaCIKICNpbmNs dWRlICJpZ3RfZGVidWdmcy5oIgotI2luY2x1ZGUgImludGVsX2J1Zm1nci5oIgogCiAjZGVmaW5l IFdJRFRIIDUxMgogI2RlZmluZSBTVFJJREUgKFdJRFRIKjQpCiAjZGVmaW5lIEhFSUdIVCA1MTIK ICNkZWZpbmUgU0laRSAoSEVJR0hUKlNUUklERSkKIAotc3RhdGljIGRybV9pbnRlbF9ibyAqY3Jl YXRlX2JvKGRybV9pbnRlbF9idWZtZ3IgKmJ1Zm1nciwKLQkJCSAgICAgICB1aW50MzJfdCBwaXhl bCkKK3N0YXRpYyBzdHJ1Y3QgaW50ZWxfYnVmICpjcmVhdGVfYm8oc3RydWN0IGJ1Zl9vcHMgKmJv cHMsIHVpbnQzMl90IHBpeGVsKQogewogCXVpbnQ2NF90IHZhbHVlID0gKHVpbnQ2NF90KXBpeGVs IDw8IDMyIHwgcGl4ZWwsICp2OwotCWRybV9pbnRlbF9ibyAqYm87CisJc3RydWN0IGludGVsX2J1 ZiAqYnVmOworCWludCBpOTE1ID0gYnVmX29wc19nZXRfZmQoYm9wcyk7CiAKLQlibyA9IGRybV9p bnRlbF9ib19hbGxvYyhidWZtZ3IsICJzdXJmYWNlIiwgU0laRSwgNDA5Nik7Ci0JaWd0X2Fzc2Vy dChibyk7CisJYnVmID0gaW50ZWxfYnVmX2NyZWF0ZShib3BzLCBXSURUSCwgSEVJR0hULCAzMiwg MCwgSTkxNV9USUxJTkdfTk9ORSwgMCk7CisKKwlpZiAoZ2VtX2hhc19sbGMoaTkxNSkpCisJCXYg PSBpbnRlbF9idWZfY3B1X21hcChidWYsIHRydWUpOworCWVsc2UKKwkJdiA9IGludGVsX2J1Zl9k ZXZpY2VfbWFwKGJ1ZiwgdHJ1ZSk7CiAKLQlkb19vcl9kaWUoZHJtX2ludGVsX2JvX21hcChibywg MSkpOwotCXYgPSBiby0+dmlydHVhbDsKIAlmb3IgKGludCBpID0gMDsgaSA8IFNJWkUgLyBzaXpl b2YodmFsdWUpOyBpICs9IDgpIHsKIAkJdltpICsgMF0gPSB2YWx1ZTsgdltpICsgMV0gPSB2YWx1 ZTsKIAkJdltpICsgMl0gPSB2YWx1ZTsgdltpICsgM10gPSB2YWx1ZTsKIAkJdltpICsgNF0gPSB2 YWx1ZTsgdltpICsgNV0gPSB2YWx1ZTsKIAkJdltpICsgNl0gPSB2YWx1ZTsgdltpICsgN10gPSB2 YWx1ZTsKIAl9Ci0JZHJtX2ludGVsX2JvX3VubWFwKGJvKTsKKwlpbnRlbF9idWZfdW5tYXAoYnVm KTsKIAotCXJldHVybiBibzsKKwlyZXR1cm4gYnVmOwogfQogCi1zdGF0aWMgdm9pZCBzY3JhdGNo X2J1Zl9pbml0KHN0cnVjdCBpZ3RfYnVmICpidWYsCi0JCQkgICAgIGRybV9pbnRlbF9idWZtZ3Ig KmJ1Zm1nciwKLQkJCSAgICAgdWludDMyX3QgcGl4ZWwpCitzdGF0aWMgdm9pZCBjbGVhbnVwX2J1 ZnMoc3RydWN0IGludGVsX2J1ZiAqKmJ1ZiwgaW50IGNvdW50KQogewotCW1lbXNldChidWYsIDAs IHNpemVvZigqYnVmKSk7Ci0KLQlidWYtPmJvID0gY3JlYXRlX2JvKGJ1Zm1nciwgcGl4ZWwpOwot CWJ1Zi0+c3VyZmFjZVswXS5zdHJpZGUgPSBTVFJJREU7Ci0JYnVmLT50aWxpbmcgPSBJOTE1X1RJ TElOR19OT05FOwotCWJ1Zi0+c3VyZmFjZVswXS5zaXplID0gU0laRTsKLQlidWYtPmJwcCA9IDMy OwotfQorCWZvciAoaW50IGNoaWxkID0gMDsgY2hpbGQgPCBjb3VudDsgY2hpbGQrKykgeworCQlz dHJ1Y3QgYnVmX29wcyAqYm9wcyA9IGJ1ZltjaGlsZF0tPmJvcHM7CisJCWludCBmZCA9IGJ1Zl9v cHNfZ2V0X2ZkKGJ1ZltjaGlsZF0tPmJvcHMpOwogCi1zdGF0aWMgdm9pZCBzY3JhdGNoX2J1Zl9m aW5pKHN0cnVjdCBpZ3RfYnVmICpidWYpCi17Ci0JZHJtX2ludGVsX2JvX3VucmVmZXJlbmNlKGJ1 Zi0+Ym8pOwotCW1lbXNldChidWYsIDAsIHNpemVvZigqYnVmKSk7CisJCWludGVsX2J1Zl9kZXN0 cm95KGJ1ZltjaGlsZF0pOworCQlidWZfb3BzX2Rlc3Ryb3koYm9wcyk7CisJCWNsb3NlKGZkKTsK Kwl9CiB9CiAKIHN0YXRpYyB2b2lkIGZvcmtfcmNzX2NvcHkoaW50IHRpbWVvdXQsIHVpbnQzMl90 IGZpbmFsLAotCQkJICBkcm1faW50ZWxfYm8gKipkc3QsIGludCBjb3VudCwKKwkJCSAgc3RydWN0 IGludGVsX2J1ZiAqKmRzdCwgaW50IGNvdW50LAogCQkJICB1bnNpZ25lZCBmbGFncykKICNkZWZp bmUgQ1JFQVRFX0NPTlRFWFQgMHgxCiB7CkBAIC0xMDIsMjEgKzk2LDEzIEBAIHN0YXRpYyB2b2lk IGZvcmtfcmNzX2NvcHkoaW50IHRpbWVvdXQsIHVpbnQzMl90IGZpbmFsLAogCiAJZm9yIChpbnQg Y2hpbGQgPSAwOyBjaGlsZCA8IGNvdW50OyBjaGlsZCsrKSB7CiAJCWludCBmZCA9IGRybV9vcGVu X2RyaXZlcihEUklWRVJfSU5URUwpOwotCQlkcm1faW50ZWxfYnVmbWdyICpidWZtZ3I7CisJCXN0 cnVjdCBidWZfb3BzICpib3BzOwogCiAJCWRldmlkID0gaW50ZWxfZ2V0X2RybV9kZXZpZChmZCk7 CiAKLQkJYnVmbWdyID0gZHJtX2ludGVsX2J1Zm1ncl9nZW1faW5pdChmZCwgNDA5Nik7Ci0JCWln dF9hc3NlcnQoYnVmbWdyKTsKKwkJYm9wcyA9IGJ1Zl9vcHNfY3JlYXRlKGZkKTsKIAotCQlkc3Rb Y2hpbGRdID0gY3JlYXRlX2JvKGJ1Zm1nciwgfjApOwotCi0JCWlmIChmbGFncyAmIENSRUFURV9D T05URVhUKSB7Ci0JCQlkcm1faW50ZWxfY29udGV4dCAqY3R4OwotCi0JCQljdHggPSBkcm1faW50 ZWxfZ2VtX2NvbnRleHRfY3JlYXRlKGRzdFtjaGlsZF0tPmJ1Zm1ncik7Ci0JCQlpZ3RfcmVxdWly ZShjdHgpOwotCQl9CisJCWRzdFtjaGlsZF0gPSBjcmVhdGVfYm8oYm9wcywgfjApOwogCiAJCXJl bmRlcl9jb3B5ID0gaWd0X2dldF9yZW5kZXJfY29weWZ1bmMoZGV2aWQpOwogCQlpZ3RfcmVxdWly ZV9mKHJlbmRlcl9jb3B5LApAQCAtMTI0LDExMyArMTEwLDEwNiBAQCBzdGF0aWMgdm9pZCBmb3Jr X3Jjc19jb3B5KGludCB0aW1lb3V0LCB1aW50MzJfdCBmaW5hbCwKIAl9CiAKIAlpZ3RfZm9yayhj aGlsZCwgY291bnQpIHsKLQkJc3RydWN0IGludGVsX2JhdGNoYnVmZmVyICpiYXRjaDsKLQkJc3Ry dWN0IGlndF9idWYgYnVmID0ge307Ci0JCXN0cnVjdCBpZ3RfYnVmIHNyYzsKKwkJc3RydWN0IGlu dGVsX2JiICppYmI7CisJCXVpbnQzMl90IGN0eCA9IDA7CisJCXN0cnVjdCBpbnRlbF9idWYgKnNy YzsKIAkJdW5zaWduZWQgbG9uZyBpOwogCi0JCWJhdGNoID0gaW50ZWxfYmF0Y2hidWZmZXJfYWxs b2MoZHN0W2NoaWxkXS0+YnVmbWdyLAotCQkJCQkJZGV2aWQpOwotCQlpZ3RfYXNzZXJ0KGJhdGNo KTsKLQotCQlpZiAoZmxhZ3MgJiBDUkVBVEVfQ09OVEVYVCkgewotCQkJZHJtX2ludGVsX2NvbnRl eHQgKmN0eDsKLQotCQkJY3R4ID0gZHJtX2ludGVsX2dlbV9jb250ZXh0X2NyZWF0ZShkc3RbY2hp bGRdLT5idWZtZ3IpOwotCQkJaW50ZWxfYmF0Y2hidWZmZXJfc2V0X2NvbnRleHQoYmF0Y2gsIGN0 eCk7Ci0JCX0KKwkJaWJiID0gaW50ZWxfYmJfY3JlYXRlKGJ1Zl9vcHNfZ2V0X2ZkKGRzdFtjaGls ZF0tPmJvcHMpLCA0MDk2KTsKIAotCQlidWYuYm8gPSBkc3RbY2hpbGRdOwotCQlidWYuc3VyZmFj ZVswXS5zdHJpZGUgPSBTVFJJREU7Ci0JCWJ1Zi50aWxpbmcgPSBJOTE1X1RJTElOR19OT05FOwot CQlidWYuc3VyZmFjZVswXS5zaXplID0gU0laRTsKLQkJYnVmLmJwcCA9IDMyOworCQlpZiAoZmxh Z3MgJiBDUkVBVEVfQ09OVEVYVCkKKwkJCWN0eCA9IGdlbV9jb250ZXh0X2NyZWF0ZShidWZfb3Bz X2dldF9mZChkc3RbY2hpbGRdLT5ib3BzKSk7CiAKIAkJaSA9IDA7CiAJCWlndF91bnRpbF90aW1l b3V0KHRpbWVvdXQpIHsKLQkJCXNjcmF0Y2hfYnVmX2luaXQoJnNyYywgZHN0W2NoaWxkXS0+YnVm bWdyLAotCQkJCQkgaSsrIHwgY2hpbGQgPDwgMTYpOwotCQkJcmVuZGVyX2NvcHkoYmF0Y2gsIE5V TEwsCi0JCQkJICAgICZzcmMsIDAsIDAsCisJCQlzcmMgPSBjcmVhdGVfYm8oZHN0W2NoaWxkXS0+ Ym9wcywKKwkJCQkJaSsrIHwgY2hpbGQgPDwgMTYpOworCQkJcmVuZGVyX2NvcHkoaWJiLCBjdHgs CisJCQkJICAgIHNyYywgMCwgMCwKIAkJCQkgICAgV0lEVEgsIEhFSUdIVCwKLQkJCQkgICAgJmJ1 ZiwgMCwgMCk7Ci0JCQlzY3JhdGNoX2J1Zl9maW5pKCZzcmMpOworCQkJCSAgICBkc3RbY2hpbGRd LCAwLCAwKTsKKworCQkJaW50ZWxfYnVmX2Rlc3Ryb3koc3JjKTsKIAkJfQogCi0JCXNjcmF0Y2hf YnVmX2luaXQoJnNyYywgZHN0W2NoaWxkXS0+YnVmbWdyLAotCQkJCSBmaW5hbCB8IGNoaWxkIDw8 IDE2KTsKLQkJcmVuZGVyX2NvcHkoYmF0Y2gsIE5VTEwsCi0JCQkgICAgJnNyYywgMCwgMCwKKwkJ c3JjID0gY3JlYXRlX2JvKGRzdFtjaGlsZF0tPmJvcHMsCisJCQkJZmluYWwgfCBjaGlsZCA8PCAx Nik7CisJCXJlbmRlcl9jb3B5KGliYiwgY3R4LAorCQkJICAgIHNyYywgMCwgMCwKIAkJCSAgICBX SURUSCwgSEVJR0hULAotCQkJICAgICZidWYsIDAsIDApOwotCQlzY3JhdGNoX2J1Zl9maW5pKCZz cmMpOworCQkJICAgIGRzdFtjaGlsZF0sIDAsIDApOworCQlpbnRlbF9iYl9zeW5jKGliYik7CisK KwkJaW50ZWxfYnVmX2Rlc3Ryb3koc3JjKTsKKworCQlpbnRlbF9iYl9kZXN0cm95KGliYik7CiAJ fQogfQogCiBzdGF0aWMgdm9pZCBmb3JrX2Jjc19jb3B5KGludCB0aW1lb3V0LCB1aW50MzJfdCBm aW5hbCwKLQkJCSAgZHJtX2ludGVsX2JvICoqZHN0LCBpbnQgY291bnQpCisJCQkgIHN0cnVjdCBp bnRlbF9idWYgKipkc3QsIGludCBjb3VudCkKIHsKLQlpbnQgZGV2aWQ7Ci0KIAlmb3IgKGludCBj aGlsZCA9IDA7IGNoaWxkIDwgY291bnQ7IGNoaWxkKyspIHsKLQkJZHJtX2ludGVsX2J1Zm1nciAq YnVmbWdyOworCQlzdHJ1Y3QgYnVmX29wcyAqYm9wczsKIAkJaW50IGZkID0gZHJtX29wZW5fZHJp dmVyKERSSVZFUl9JTlRFTCk7CiAKLQkJZGV2aWQgPSBpbnRlbF9nZXRfZHJtX2RldmlkKGZkKTsK LQotCQlidWZtZ3IgPSBkcm1faW50ZWxfYnVmbWdyX2dlbV9pbml0KGZkLCA0MDk2KTsKLQkJaWd0 X2Fzc2VydChidWZtZ3IpOwotCi0JCWRzdFtjaGlsZF0gPSBjcmVhdGVfYm8oYnVmbWdyLCB+MCk7 CisJCWJvcHMgPSBidWZfb3BzX2NyZWF0ZShmZCk7CisJCWRzdFtjaGlsZF0gPSBjcmVhdGVfYm8o Ym9wcywgfjApOwogCX0KIAogCWlndF9mb3JrKGNoaWxkLCBjb3VudCkgewotCQlzdHJ1Y3QgaW50 ZWxfYmF0Y2hidWZmZXIgKmJhdGNoOwotCQlkcm1faW50ZWxfYm8gKnNyY1syXTsKKwkJc3RydWN0 IGludGVsX2J1ZiAqc3JjWzJdOworCQlzdHJ1Y3QgaW50ZWxfYmIgKmliYjsKIAkJdW5zaWduZWQg bG9uZyBpOwogCi0KLQkJYmF0Y2ggPSBpbnRlbF9iYXRjaGJ1ZmZlcl9hbGxvYyhkc3RbY2hpbGRd LT5idWZtZ3IsCi0JCQkJCQlkZXZpZCk7Ci0JCWlndF9hc3NlcnQoYmF0Y2gpOworCQlpYmIgPSBp bnRlbF9iYl9jcmVhdGUoYnVmX29wc19nZXRfZmQoZHN0W2NoaWxkXS0+Ym9wcyksIDQwOTYpOwog CiAJCWkgPSAwOwogCQlpZ3RfdW50aWxfdGltZW91dCh0aW1lb3V0KSB7Ci0JCQlzcmNbMF0gPSBj cmVhdGVfYm8oZHN0W2NoaWxkXS0+YnVmbWdyLAorCQkJc3JjWzBdID0gY3JlYXRlX2JvKGRzdFtj aGlsZF0tPmJvcHMsCiAJCQkJCSAgIH4wKTsKLQkJCXNyY1sxXSA9IGNyZWF0ZV9ibyhkc3RbY2hp bGRdLT5idWZtZ3IsCisJCQlzcmNbMV0gPSBjcmVhdGVfYm8oZHN0W2NoaWxkXS0+Ym9wcywKIAkJ CQkJICAgaSsrIHwgY2hpbGQgPDwgMTYpOwogCi0JCQlpbnRlbF9jb3B5X2JvKGJhdGNoLCBzcmNb MF0sIHNyY1sxXSwgU0laRSk7Ci0JCQlpbnRlbF9jb3B5X2JvKGJhdGNoLCBkc3RbY2hpbGRdLCBz cmNbMF0sIFNJWkUpOworCQkJaW50ZWxfYmJfYmx0X2NvcHkoaWJiLCBzcmNbMV0sIDAsIDAsIDQw OTYsCisJCQkJCSAgc3JjWzBdLCAwLCAwLCA0MDk2LAorCQkJCQkgIDQwOTYvNCwgU0laRS80MDk2 LCAzMik7CisJCQlpbnRlbF9iYl9ibHRfY29weShpYmIsIHNyY1swXSwgMCwgMCwgNDA5NiwKKwkJ CQkJICBkc3RbY2hpbGRdLCAwLCAwLCA0MDk2LAorCQkJCQkgIDQwOTYvNCwgU0laRS80MDk2LCAz Mik7CiAKLQkJCWRybV9pbnRlbF9ib191bnJlZmVyZW5jZShzcmNbMV0pOwotCQkJZHJtX2ludGVs X2JvX3VucmVmZXJlbmNlKHNyY1swXSk7CisJCQlpbnRlbF9idWZfZGVzdHJveShzcmNbMV0pOwor CQkJaW50ZWxfYnVmX2Rlc3Ryb3koc3JjWzBdKTsKIAkJfQogCi0JCXNyY1swXSA9IGNyZWF0ZV9i byhkc3RbY2hpbGRdLT5idWZtZ3IsCi0JCQkJICAgfjApOwotCQlzcmNbMV0gPSBjcmVhdGVfYm8o ZHN0W2NoaWxkXS0+YnVmbWdyLAorCQlzcmNbMF0gPSBjcmVhdGVfYm8oZHN0W2NoaWxkXS0+Ym9w cywgfjApOworCQlzcmNbMV0gPSBjcmVhdGVfYm8oZHN0W2NoaWxkXS0+Ym9wcywKIAkJCQkgICBm aW5hbCB8IGNoaWxkIDw8IDE2KTsKIAotCQlpbnRlbF9jb3B5X2JvKGJhdGNoLCBzcmNbMF0sIHNy Y1sxXSwgU0laRSk7Ci0JCWludGVsX2NvcHlfYm8oYmF0Y2gsIGRzdFtjaGlsZF0sIHNyY1swXSwg U0laRSk7CisJCWludGVsX2JiX2JsdF9jb3B5KGliYiwgc3JjWzFdLCAwLCAwLCA0MDk2LAorCQkJ CSAgc3JjWzBdLCAwLCAwLCA0MDk2LAorCQkJCSAgNDA5Ni80LCBTSVpFLzQwOTYsIDMyKTsKKwkJ aW50ZWxfYmJfYmx0X2NvcHkoaWJiLCBzcmNbMF0sIDAsIDAsIDQwOTYsCisJCQkJICBkc3RbY2hp bGRdLCAwLCAwLCA0MDk2LAorCQkJCSAgNDA5Ni80LCBTSVpFLzQwOTYsIDMyKTsKKwkJaW50ZWxf YmJfc3luYyhpYmIpOwogCi0JCWRybV9pbnRlbF9ib191bnJlZmVyZW5jZShzcmNbMV0pOwotCQlk cm1faW50ZWxfYm9fdW5yZWZlcmVuY2Uoc3JjWzBdKTsKKwkJaW50ZWxfYnVmX2Rlc3Ryb3koc3Jj WzFdKTsKKwkJaW50ZWxfYnVmX2Rlc3Ryb3koc3JjWzBdKTsKKworCQlpbnRlbF9iYl9kZXN0cm95 KGliYik7CiAJfQogfQogCi1zdGF0aWMgdm9pZCBzdXJmYWNlc19jaGVjayhkcm1faW50ZWxfYm8g KipibywgaW50IGNvdW50LCB1aW50MzJfdCBleHBlY3RlZCkKK3N0YXRpYyB2b2lkIHN1cmZhY2Vz X2NoZWNrKHN0cnVjdCBpbnRlbF9idWYgKipidWYsIGludCBjb3VudCwgdWludDMyX3QgZXhwZWN0 ZWQpCiB7CiAJZm9yIChpbnQgY2hpbGQgPSAwOyBjaGlsZCA8IGNvdW50OyBjaGlsZCsrKSB7CiAJ CXVpbnQzMl90ICpwdHI7CiAKLQkJZG9fb3JfZGllKGRybV9pbnRlbF9ib19tYXAoYm9bY2hpbGRd LCAwKSk7Ci0JCXB0ciA9IGJvW2NoaWxkXS0+dmlydHVhbDsKKwkJcHRyID0gaW50ZWxfYnVmX2Nw dV9tYXAoYnVmW2NoaWxkXSwgMCk7CiAJCWZvciAoaW50IGogPSAwOyBqIDwgU0laRS80OyBqKysp CiAJCQlpZ3RfYXNzZXJ0X2VxKHB0cltqXSwgZXhwZWN0ZWQgfCBjaGlsZCA8PCAxNik7Ci0JCWRy bV9pbnRlbF9ib191bm1hcChib1tjaGlsZF0pOworCQlpbnRlbF9idWZfdW5tYXAoYnVmW2NoaWxk XSk7CiAJfQogfQogCkBAIC0zMDEsNyArMjgwLDcgQEAgaWd0X21haW4KIAl9CiAKIAlpZ3Rfc3Vi dGVzdCgiYmx0LXZzLXJlbmRlci1jdHgwIikgewotCQlkcm1faW50ZWxfYm8gKmJjc1sxXSwgKnJj c1tOX0NISUxEXTsKKwkJc3RydWN0IGludGVsX2J1ZiAqYmNzWzFdLCAqcmNzW05fQ0hJTERdOwog CiAJCWZvcmtfYmNzX2NvcHkoMzAsIDB4NDAwMCwgYmNzLCAxKTsKIAkJZm9ya19yY3NfY29weSgz MCwgMHg4MDAwIC8gTl9DSElMRCwgcmNzLCBOX0NISUxELCAwKTsKQEAgLTMxMCwxMCArMjg5LDEz IEBAIGlndF9tYWluCiAKIAkJc3VyZmFjZXNfY2hlY2soYmNzLCAxLCAweDQwMDApOwogCQlzdXJm YWNlc19jaGVjayhyY3MsIE5fQ0hJTEQsIDB4ODAwMCAvIE5fQ0hJTEQpOworCisJCWNsZWFudXBf YnVmcyhiY3MsIDEpOworCQljbGVhbnVwX2J1ZnMocmNzLCBOX0NISUxEKTsKIAl9CiAKIAlpZ3Rf c3VidGVzdCgiYmx0LXZzLXJlbmRlci1jdHhOIikgewotCQlkcm1faW50ZWxfYm8gKmJjc1sxXSwg KnJjc1tOX0NISUxEXTsKKwkJc3RydWN0IGludGVsX2J1ZiAqYmNzWzFdLCAqcmNzW05fQ0hJTERd OwogCiAJCWZvcmtfcmNzX2NvcHkoMzAsIDB4ODAwMCAvIE5fQ0hJTEQsIHJjcywgTl9DSElMRCwg Q1JFQVRFX0NPTlRFWFQpOwogCQlmb3JrX2Jjc19jb3B5KDMwLCAweDQwMDAsIGJjcywgMSk7CkBA IC0zMjIsNiArMzA0LDkgQEAgaWd0X21haW4KIAogCQlzdXJmYWNlc19jaGVjayhiY3MsIDEsIDB4 NDAwMCk7CiAJCXN1cmZhY2VzX2NoZWNrKHJjcywgTl9DSElMRCwgMHg4MDAwIC8gTl9DSElMRCk7 CisKKwkJY2xlYW51cF9idWZzKGJjcywgMSk7CisJCWNsZWFudXBfYnVmcyhyY3MsIE5fQ0hJTEQp OwogCX0KIAogCWlndF9zdWJ0ZXN0KCJmbGluay1hbmQtY2xvc2Utdm1hLWxlYWsiKQotLSAKMi4y Ni4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3Qt ZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK