From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH libdrm 08/11] tests: modetest: Accept connector names Date: Fri, 23 Jan 2015 17:08:21 +0100 Message-ID: <1422029304-1926-9-git-send-email-thierry.reding@gmail.com> References: <1422029304-1926-1-git-send-email-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pa0-f48.google.com (mail-pa0-f48.google.com [209.85.220.48]) by gabe.freedesktop.org (Postfix) with ESMTP id D38E76E94D for ; Fri, 23 Jan 2015 08:09:05 -0800 (PST) Received: by mail-pa0-f48.google.com with SMTP id ey11so9426587pad.7 for ; Fri, 23 Jan 2015 08:09:05 -0800 (PST) In-Reply-To: <1422029304-1926-1-git-send-email-thierry.reding@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Laurent Pinchart List-Id: dri-devel@lists.freedesktop.org RnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KCkFsbG93IGNvbm5lY3Rv ciBuYW1lcyB0byBiZSB1c2VkIGluIHRoZSBzcGVjaWZpY2F0aW9uIG9mIHRoZSAtcyBvcHRpb24u ClRoaXMgcmVxdWlyZXMgc3RvcmluZyB0aGUgc3RyaW5nIHBhc3NlZCBvbiB0aGUgY29tbWFuZC1s aW5lIHNvIHRoYXQgaXQKY2FuIGxhdGVyIGJlIHJlc29sdmVkIHRvIGEgY29ubmVjdG9yIElEIChh ZnRlciB0aGUgRFJNIGRldmljZSBoYXMgYmVlbgpvcGVuZWQpLgoKU2lnbmVkLW9mZi1ieTogVGhp ZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KLS0tCiB0ZXN0cy9tb2RldGVzdC9tb2Rl dGVzdC5jIHwgMTM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0t LS0KIDEgZmlsZSBjaGFuZ2VkLCAxMjMgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvdGVzdHMvbW9kZXRlc3QvbW9kZXRlc3QuYyBiL3Rlc3RzL21vZGV0ZXN0L21v ZGV0ZXN0LmMKaW5kZXggZDVmZDk5ZWJlMWZkLi5hN2NjOTRmODkzOGMgMTAwNjQ0Ci0tLSBhL3Rl c3RzL21vZGV0ZXN0L21vZGV0ZXN0LmMKKysrIGIvdGVzdHMvbW9kZXRlc3QvbW9kZXRlc3QuYwpA QCAtODIsNiArODIsNyBAQCBzdHJ1Y3QgY29ubmVjdG9yIHsKIAlkcm1Nb2RlQ29ubmVjdG9yICpj b25uZWN0b3I7CiAJZHJtTW9kZU9iamVjdFByb3BlcnRpZXMgKnByb3BzOwogCWRybU1vZGVQcm9w ZXJ0eVJlcyAqKnByb3BzX2luZm87CisJY2hhciAqbmFtZTsKIH07CiAKIHN0cnVjdCBmYiB7CkBA IC0zMjcsNyArMzI4LDcgQEAgc3RhdGljIHZvaWQgZHVtcF9jb25uZWN0b3JzKHN0cnVjdCBkZXZp Y2UgKmRldikKIAlpbnQgaSwgajsKIAogCXByaW50ZigiQ29ubmVjdG9yczpcbiIpOwotCXByaW50 ZigiaWRcdGVuY29kZXJcdHN0YXR1c1x0XHR0eXBlXHRzaXplIChtbSlcdG1vZGVzXHRlbmNvZGVy c1xuIik7CisJcHJpbnRmKCJpZFx0ZW5jb2Rlclx0c3RhdHVzXHRcdG5hbWVcdFx0c2l6ZSAobW0p XHRtb2Rlc1x0ZW5jb2RlcnNcbiIpOwogCWZvciAoaSA9IDA7IGkgPCBkZXYtPnJlc291cmNlcy0+ cmVzLT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKIAkJc3RydWN0IGNvbm5lY3RvciAqX2Nvbm5l Y3RvciA9ICZkZXYtPnJlc291cmNlcy0+Y29ubmVjdG9yc1tpXTsKIAkJZHJtTW9kZUNvbm5lY3Rv ciAqY29ubmVjdG9yID0gX2Nvbm5lY3Rvci0+Y29ubmVjdG9yOwpAQCAtMzM4LDcgKzMzOSw3IEBA IHN0YXRpYyB2b2lkIGR1bXBfY29ubmVjdG9ycyhzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJCSAgICAg ICBjb25uZWN0b3ItPmNvbm5lY3Rvcl9pZCwKIAkJICAgICAgIGNvbm5lY3Rvci0+ZW5jb2Rlcl9p ZCwKIAkJICAgICAgIHV0aWxfbG9va3VwX2Nvbm5lY3Rvcl9zdGF0dXNfbmFtZShjb25uZWN0b3It PmNvbm5lY3Rpb24pLAotCQkgICAgICAgdXRpbF9sb29rdXBfY29ubmVjdG9yX3R5cGVfbmFtZShj b25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlKSwKKwkJICAgICAgIF9jb25uZWN0b3ItPm5hbWUsCiAJ CSAgICAgICBjb25uZWN0b3ItPm1tV2lkdGgsIGNvbm5lY3Rvci0+bW1IZWlnaHQsCiAJCSAgICAg ICBjb25uZWN0b3ItPmNvdW50X21vZGVzKTsKIApAQCAtNDY0LDEyICs0NjUsMTMgQEAgc3RhdGlj IHZvaWQgZHVtcF9wbGFuZXMoc3RydWN0IGRldmljZSAqZGV2KQogCiBzdGF0aWMgdm9pZCBmcmVl X3Jlc291cmNlcyhzdHJ1Y3QgcmVzb3VyY2VzICpyZXMpCiB7CisJaW50IGk7CisKIAlpZiAoIXJl cykKIAkJcmV0dXJuOwogCiAjZGVmaW5lIGZyZWVfcmVzb3VyY2UoX3JlcywgX19yZXMsIHR5cGUs IFR5cGUpCQkJCQlcCiAJZG8gewkJCQkJCQkJCVwKLQkJaW50IGk7CQkJCQkJCQlcCiAJCWlmICgh KF9yZXMpLT50eXBlIyNzKQkJCQkJCVwKIAkJCWJyZWFrOwkJCQkJCQlcCiAJCWZvciAoaSA9IDA7 IGkgPCAoaW50KShfcmVzKS0+X19yZXMtPmNvdW50XyMjdHlwZSMjczsgKytpKSB7CVwKQEAgLTQ4 Miw3ICs0ODQsNiBAQCBzdGF0aWMgdm9pZCBmcmVlX3Jlc291cmNlcyhzdHJ1Y3QgcmVzb3VyY2Vz ICpyZXMpCiAKICNkZWZpbmUgZnJlZV9wcm9wZXJ0aWVzKF9yZXMsIF9fcmVzLCB0eXBlKQkJCQkJ XAogCWRvIHsJCQkJCQkJCQlcCi0JCWludCBpOwkJCQkJCQkJXAogCQlmb3IgKGkgPSAwOyBpIDwg KGludCkoX3JlcyktPl9fcmVzLT5jb3VudF8jI3R5cGUjI3M7ICsraSkgewlcCiAJCQlkcm1Nb2Rl RnJlZU9iamVjdFByb3BlcnRpZXMocmVzLT50eXBlIyNzW2ldLnByb3BzKTsJXAogCQkJZnJlZShy ZXMtPnR5cGUjI3NbaV0ucHJvcHNfaW5mbyk7CQkJXApAQCAtNDk0LDYgKzQ5NSwxMCBAQCBzdGF0 aWMgdm9pZCBmcmVlX3Jlc291cmNlcyhzdHJ1Y3QgcmVzb3VyY2VzICpyZXMpCiAKIAkJZnJlZV9y ZXNvdXJjZShyZXMsIHJlcywgY3J0YywgQ3J0Yyk7CiAJCWZyZWVfcmVzb3VyY2UocmVzLCByZXMs IGVuY29kZXIsIEVuY29kZXIpOworCisJCWZvciAoaSA9IDA7IGkgPCByZXMtPnJlcy0+Y291bnRf Y29ubmVjdG9yczsgaSsrKQorCQkJZnJlZShyZXMtPmNvbm5lY3RvcnNbaV0ubmFtZSk7CisKIAkJ ZnJlZV9yZXNvdXJjZShyZXMsIHJlcywgY29ubmVjdG9yLCBDb25uZWN0b3IpOwogCQlmcmVlX3Jl c291cmNlKHJlcywgcmVzLCBmYiwgRkIpOwogCkBAIC01MTEsNiArNTE2LDQ3IEBAIHN0YXRpYyB2 b2lkIGZyZWVfcmVzb3VyY2VzKHN0cnVjdCByZXNvdXJjZXMgKnJlcykKIAlmcmVlKHJlcyk7CiB9 CiAKK3N0YXRpYyB1bnNpZ25lZCBpbnQgZ2V0X2Nvbm5lY3Rvcl9pbmRleChzdHJ1Y3QgcmVzb3Vy Y2VzICpyZXMsIHVpbnQzMl90IHR5cGUpCit7CisJdW5zaWduZWQgaW50IGluZGV4ID0gMDsKKwlp bnQgaTsKKworCWZvciAoaSA9IDA7IGkgPCByZXMtPnJlcy0+Y291bnRfY29ubmVjdG9yczsgaSsr KQorCQlpZiAocmVzLT5jb25uZWN0b3JzW2ldLmNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUgPT0g dHlwZSkKKwkJCWluZGV4Kys7CisKKwlyZXR1cm4gaW5kZXggLSAxOworfQorCitzdGF0aWMgdW5z aWduZWQgaW50IGdldF9vcmRlcih1bnNpZ25lZCBpbnQgdmFsdWUpCit7CisJdW5zaWduZWQgaW50 IG9yZGVyID0gMDsKKworCWRvIHsKKwkJdmFsdWUgLz0gMTA7CisJCW9yZGVyKys7CisJfSB3aGls ZSAodmFsdWUgPiAwKTsKKworCXJldHVybiBvcmRlciAtIDE7Cit9CisKK3N0YXRpYyB2b2lkIGNv bm5lY3Rvcl9zZXRfbmFtZShzdHJ1Y3QgY29ubmVjdG9yICpjb25uZWN0b3IsCisJCQkgICAgICAg c3RydWN0IHJlc291cmNlcyAqcmVzKQoreworCXVpbnQzMl90IHR5cGUgPSBjb25uZWN0b3ItPmNv bm5lY3Rvci0+Y29ubmVjdG9yX3R5cGU7CisJY29uc3QgY2hhciAqdHlwZV9uYW1lOworCXVuc2ln bmVkIGludCBpbmRleDsKKwlpbnQgbGVuOworCisJdHlwZV9uYW1lID0gdXRpbF9sb29rdXBfY29u bmVjdG9yX3R5cGVfbmFtZSh0eXBlKTsKKwlpbmRleCA9IGdldF9jb25uZWN0b3JfaW5kZXgocmVz LCB0eXBlKTsKKwlsZW4gPSBzdHJsZW4odHlwZV9uYW1lKSArIGdldF9vcmRlcihpbmRleCkgKyAy OworCisJY29ubmVjdG9yLT5uYW1lID0gbWFsbG9jKGxlbiArIDEpOworCWlmIChjb25uZWN0b3It Pm5hbWUpCisJCXNucHJpbnRmKGNvbm5lY3Rvci0+bmFtZSwgbGVuICsgMSwgIiVzLSV1IiwgdHlw ZV9uYW1lLCAgaW5kZXgpOworfQorCiBzdGF0aWMgc3RydWN0IHJlc291cmNlcyAqZ2V0X3Jlc291 cmNlcyhzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IHJlc291cmNlcyAqcmVzOwpAQCAt NTYyLDYgKzYwOCwxMiBAQCBzdGF0aWMgc3RydWN0IHJlc291cmNlcyAqZ2V0X3Jlc291cmNlcyhz dHJ1Y3QgZGV2aWNlICpkZXYpCiAJZ2V0X3Jlc291cmNlKHJlcywgcmVzLCBjb25uZWN0b3IsIENv bm5lY3Rvcik7CiAJZ2V0X3Jlc291cmNlKHJlcywgcmVzLCBmYiwgRkIpOwogCisJZm9yIChpID0g MDsgaSA8IHJlcy0+cmVzLT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKKwkJc3RydWN0IGNvbm5l Y3RvciAqY29ubmVjdG9yID0gJnJlcy0+Y29ubmVjdG9yc1tpXTsKKworCQljb25uZWN0b3Jfc2V0 X25hbWUoY29ubmVjdG9yLCByZXMpOworCX0KKwogI2RlZmluZSBnZXRfcHJvcGVydGllcyhfcmVz LCBfX3JlcywgdHlwZSwgVHlwZSkJCQkJCVwKIAlkbyB7CQkJCQkJCQkJXAogCQlpbnQgaTsJCQkJ CQkJCVwKQEAgLTYzMCw2ICs2ODIsMjEgQEAgc3RhdGljIGludCBnZXRfY3J0Y19pbmRleChzdHJ1 Y3QgZGV2aWNlICpkZXYsIHVpbnQzMl90IGlkKQogCXJldHVybiAtMTsKIH0KIAorc3RhdGljIGRy bU1vZGVDb25uZWN0b3IgKmdldF9jb25uZWN0b3JfYnlfbmFtZShzdHJ1Y3QgZGV2aWNlICpkZXYs IGNvbnN0IGNoYXIgKm5hbWUpCit7CisJc3RydWN0IGNvbm5lY3RvciAqY29ubmVjdG9yOworCWlu dCBpOworCisJZm9yIChpID0gMDsgaSA8IGRldi0+cmVzb3VyY2VzLT5yZXMtPmNvdW50X2Nvbm5l Y3RvcnM7IGkrKykgeworCQljb25uZWN0b3IgPSAmZGV2LT5yZXNvdXJjZXMtPmNvbm5lY3RvcnNb aV07CisKKwkJaWYgKHN0cmNtcChjb25uZWN0b3ItPm5hbWUsIG5hbWUpID09IDApCisJCQlyZXR1 cm4gY29ubmVjdG9yLT5jb25uZWN0b3I7CisJfQorCisJcmV0dXJuIE5VTEw7Cit9CisKIHN0YXRp YyBkcm1Nb2RlQ29ubmVjdG9yICpnZXRfY29ubmVjdG9yX2J5X2lkKHN0cnVjdCBkZXZpY2UgKmRl diwgdWludDMyX3QgaWQpCiB7CiAJZHJtTW9kZUNvbm5lY3RvciAqY29ubmVjdG9yOwpAQCAtNjcw LDYgKzczNyw3IEBAIHN0YXRpYyBkcm1Nb2RlRW5jb2RlciAqZ2V0X2VuY29kZXJfYnlfaWQoc3Ry dWN0IGRldmljZSAqZGV2LCB1aW50MzJfdCBpZCkKICAqIGNhbiBiaW5kIGl0IHdpdGggYSBmcmVl IGNydGMuCiAgKi8KIHN0cnVjdCBwaXBlX2FyZyB7CisJY29uc3QgY2hhciAqKmNvbnM7CiAJdWlu dDMyX3QgKmNvbl9pZHM7CiAJdW5zaWduZWQgaW50IG51bV9jb25zOwogCXVpbnQzMl90IGNydGNf aWQ7CkBAIC03ODQsOCArODUyLDggQEAgc3RhdGljIGludCBwaXBlX2ZpbmRfY3J0Y19hbmRfbW9k ZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBwaXBlX2FyZyAqcGlwZSkKIAkJCQkJICAgcGlw ZS0+bW9kZV9zdHIsIHBpcGUtPnZyZWZyZXNoKTsKIAkJaWYgKG1vZGUgPT0gTlVMTCkgewogCQkJ ZnByaW50ZihzdGRlcnIsCi0JCQkJImZhaWxlZCB0byBmaW5kIG1vZGUgXCIlc1wiIGZvciBjb25u ZWN0b3IgJXVcbiIsCi0JCQkJcGlwZS0+bW9kZV9zdHIsIHBpcGUtPmNvbl9pZHNbaV0pOworCQkJ CSJmYWlsZWQgdG8gZmluZCBtb2RlIFwiJXNcIiBmb3IgY29ubmVjdG9yICVzXG4iLAorCQkJCXBp cGUtPm1vZGVfc3RyLCBwaXBlLT5jb25zW2ldKTsKIAkJCXJldHVybiAtRUlOVkFMOwogCQl9CiAJ fQpAQCAtMTA1NCw3ICsxMTIyLDcgQEAgc3RhdGljIHZvaWQgc2V0X21vZGUoc3RydWN0IGRldmlj ZSAqZGV2LCBzdHJ1Y3QgcGlwZV9hcmcgKnBpcGVzLCB1bnNpZ25lZCBpbnQgY28KIAkJcHJpbnRm KCJzZXR0aW5nIG1vZGUgJXMtJWRIekAlcyBvbiBjb25uZWN0b3JzICIsCiAJCSAgICAgICBwaXBl LT5tb2RlX3N0ciwgcGlwZS0+bW9kZS0+dnJlZnJlc2gsIHBpcGUtPmZvcm1hdF9zdHIpOwogCQlm b3IgKGogPSAwOyBqIDwgcGlwZS0+bnVtX2NvbnM7ICsraikKLQkJCXByaW50ZigiJXUsICIsIHBp cGUtPmNvbl9pZHNbal0pOworCQkJcHJpbnRmKCIlcywgIiwgcGlwZS0+Y29uc1tqXSk7CiAJCXBy aW50ZigiY3J0YyAlZFxuIiwgcGlwZS0+Y3J0Yy0+Y3J0Yy0+Y3J0Y19pZCk7CiAKIAkJcmV0ID0g ZHJtTW9kZVNldENydGMoZGV2LT5mZCwgcGlwZS0+Y3J0Yy0+Y3J0Yy0+Y3J0Y19pZCwgZmJfaWQs CkBAIC0xMjMwLDE4ICsxMjk4LDI4IEBAIHN0YXRpYyBpbnQgcGFyc2VfY29ubmVjdG9yKHN0cnVj dCBwaXBlX2FyZyAqcGlwZSwgY29uc3QgY2hhciAqYXJnKQogCiAJLyogQ291bnQgdGhlIG51bWJl ciBvZiBjb25uZWN0b3JzIGFuZCBhbGxvY2F0ZSB0aGVtLiAqLwogCXBpcGUtPm51bV9jb25zID0g MTsKLQlmb3IgKHAgPSBhcmc7IGlzZGlnaXQoKnApIHx8ICpwID09ICcsJzsgKytwKSB7CisJZm9y IChwID0gYXJnOyAqcCAmJiAqcCAhPSAnOicgJiYgKnAgIT0gJ0AnOyArK3ApIHsKIAkJaWYgKCpw ID09ICcsJykKIAkJCXBpcGUtPm51bV9jb25zKys7CiAJfQogCi0JcGlwZS0+Y29uX2lkcyA9IG1h bGxvYyhwaXBlLT5udW1fY29ucyAqIHNpemVvZiAqcGlwZS0+Y29uX2lkcyk7CisJcGlwZS0+Y29u cyA9IG1hbGxvYyhwaXBlLT5udW1fY29ucyAqIHNpemVvZigqcGlwZS0+Y29ucykpOworCWlmIChw aXBlLT5jb25zID09IE5VTEwpCisJCXJldHVybiAtMTsKKworCXBpcGUtPmNvbl9pZHMgPSBtYWxs b2MocGlwZS0+bnVtX2NvbnMgKiBzaXplb2YoKnBpcGUtPmNvbl9pZHMpKTsKIAlpZiAocGlwZS0+ Y29uX2lkcyA9PSBOVUxMKQogCQlyZXR1cm4gLTE7CiAKIAkvKiBQYXJzZSB0aGUgY29ubmVjdG9y cy4gKi8KIAlmb3IgKGkgPSAwLCBwID0gYXJnOyBpIDwgcGlwZS0+bnVtX2NvbnM7ICsraSwgcCA9 IGVuZHAgKyAxKSB7Ci0JCXBpcGUtPmNvbl9pZHNbaV0gPSBzdHJ0b3VsKHAsICZlbmRwLCAxMCk7 CisJCWVuZHAgPSBzdHJwYnJrKHAsICIsQDoiKTsKKworCQlpZiAoZW5kcCkKKwkJCXBpcGUtPmNv bnNbaV0gPSBzdHJuZHVwKHAsIGVuZHAgLSBwKTsKKwkJZWxzZQorCQkJcGlwZS0+Y29uc1tpXSA9 IHN0cmR1cChwKTsKKwogCQlpZiAoKmVuZHAgIT0gJywnKQogCQkJYnJlYWs7CiAJfQpAQCAtMTQw NSw2ICsxNDgzLDMyIEBAIHN0YXRpYyBpbnQgY3Vyc29yX3N1cHBvcnRlZCh2b2lkKQogCXJldHVy biAxOwogfQogCitzdGF0aWMgaW50IHBpcGVfcmVzb2x2ZV9jb25uZWN0b3JzKHN0cnVjdCBwaXBl X2FyZyAqcGlwZSwgc3RydWN0IGRldmljZSAqZGV2KQoreworCWRybU1vZGVDb25uZWN0b3IgKmNv bm5lY3RvcjsKKwl1bnNpZ25lZCBpbnQgaTsKKwl1aW50MzJfdCBpZDsKKwljaGFyICplbmRwOwor CisJZm9yIChpID0gMDsgaSA8IHBpcGUtPm51bV9jb25zOyBpKyspIHsKKwkJaWQgPSBzdHJ0b3Vs KHBpcGUtPmNvbnNbaV0sICZlbmRwLCAxMCk7CisJCWlmIChlbmRwID09IHBpcGUtPmNvbnNbaV0p IHsKKwkJCWNvbm5lY3RvciA9IGdldF9jb25uZWN0b3JfYnlfbmFtZShkZXYsIHBpcGUtPmNvbnNb aV0pOworCQkJaWYgKCFjb25uZWN0b3IpIHsKKwkJCQlmcHJpbnRmKHN0ZGVyciwgIm5vIGNvbm5l Y3RvciBuYW1lZCAlc1xuIiwKKwkJCQkJcGlwZS0+Y29uc1tpXSk7CisJCQkJcmV0dXJuIC1FTk9E RVY7CisJCQl9CisKKwkJCWlkID0gY29ubmVjdG9yLT5jb25uZWN0b3JfaWQ7CisJCX0KKworCQlw aXBlLT5jb25faWRzW2ldID0gaWQ7CisJfQorCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBjaGFy IG9wdHN0cltdID0gImNkRDplZk06UDpwczpDdnc6IjsKIAogaW50IG1haW4oaW50IGFyZ2MsIGNo YXIgKiphcmd2KQpAQCAtMTQyMCw3ICsxNTI0LDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIg Kiphcmd2KQogCWNoYXIgKmRldmljZSA9IE5VTEw7CiAJY2hhciAqbW9kdWxlID0gTlVMTDsKIAl1 bnNpZ25lZCBpbnQgaTsKLQlpbnQgY291bnQgPSAwLCBwbGFuZV9jb3VudCA9IDA7CisJdW5zaWdu ZWQgaW50IGNvdW50ID0gMCwgcGxhbmVfY291bnQgPSAwOwogCXVuc2lnbmVkIGludCBwcm9wX2Nv dW50ID0gMDsKIAlzdHJ1Y3QgcGlwZV9hcmcgKnBpcGVfYXJncyA9IE5VTEw7CiAJc3RydWN0IHBs YW5lX2FyZyAqcGxhbmVfYXJncyA9IE5VTEw7CkBAIC0xNTU5LDYgKzE2NjMsMTQgQEAgaW50IG1h aW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogCQlyZXR1cm4gMTsKIAl9CiAKKwlmb3IgKGkgPSAw OyBpIDwgY291bnQ7IGkrKykgeworCQlpZiAocGlwZV9yZXNvbHZlX2Nvbm5lY3RvcnMoJnBpcGVf YXJnc1tpXSwgJmRldikgPCAwKSB7CisJCQlmcmVlX3Jlc291cmNlcyhkZXYucmVzb3VyY2VzKTsK KwkJCWRybUNsb3NlKGRldi5mZCk7CisJCQlyZXR1cm4gMTsKKwkJfQorCX0KKwogI2RlZmluZSBk dW1wX3Jlc291cmNlKGRldiwgcmVzKSBpZiAocmVzKSBkdW1wXyMjcmVzKGRldikKIAogCWR1bXBf cmVzb3VyY2UoJmRldiwgZW5jb2RlcnMpOwotLSAKMi4xLjMKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRl dmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==