From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH 3/4] drm/i915: Make pipe_config_err() vs. fastset less confusing Date: Wed, 12 Jun 2019 16:08:00 +0300 Message-ID: <20190612130801.2085-3-ville.syrjala@linux.intel.com> References: <20190612130801.2085-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 20936894C9 for ; Wed, 12 Jun 2019 13:08:12 +0000 (UTC) In-Reply-To: <20190612130801.2085-1-ville.syrjala@linux.intel.com> 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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClJl bmFtZSBwaXBlX2NvbmZpZ19lcnIoKSB0byBwaXBlX2NvbmZpZ19taXNtYXRjaCgpLCBhbmQgYWxz byBwcmludAp3aGV0aGVyIHdlJ3JlIGRvaW5nIHRoZSBmYXN0c2V0IGNoZWNrIG9yIHRoZSBzdyB2 cy4gaHcgc3RhdGUgcmVhZG91dApjaGVjay4gU2hvdWxkIG1ha2UgdGhlIGxvZ3MgYSBiaXQgbGVz cyBjb25mdXNpbmcgd2hlbiB0aGV5J3JlIG5vdApmaWxsZWQgd2l0aCB3aGF0IGxvb2tzIGxpa2Ug YSByZWFsIGVycm9yLgoKQWxzbyByZW5hbWUgdGhlICdhZGp1c3QnIHZhcmlhYmxlIHRvICdmYXN0 c2V0JyB0byBtYWtlIGl0IGNsZWFyIHdoYXQKaXQgbWVhbnMuCgpTaWduZWQtb2ZmLWJ5OiBWaWxs ZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDE1OCArKysrKysrKysrKysrLS0tLS0tLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCA3OSBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggZGNjMzAxZGY2MTc0Li5lYzNi N2U4MjU2MTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTEyMzA5LDE2 ICsxMjMwOSwxNiBAQCBpbnRlbF9jb21wYXJlX2luZm9mcmFtZShjb25zdCB1bmlvbiBoZG1pX2lu Zm9mcmFtZSAqYSwKIH0KIAogc3RhdGljIHZvaWQKLXBpcGVfY29uZmlnX2luZm9mcmFtZV9lcnIo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAotCQkJICBib29sIGFkanVzdCwgY29u c3QgY2hhciAqbmFtZSwKLQkJCSAgY29uc3QgdW5pb24gaGRtaV9pbmZvZnJhbWUgKmEsCi0JCQkg IGNvbnN0IHVuaW9uIGhkbWlfaW5mb2ZyYW1lICpiKQorcGlwZV9jb25maWdfaW5mb2ZyYW1lX21p c21hdGNoKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKKwkJCSAgICAgICBib29s IGZhc3RzZXQsIGNvbnN0IGNoYXIgKm5hbWUsCisJCQkgICAgICAgY29uc3QgdW5pb24gaGRtaV9p bmZvZnJhbWUgKmEsCisJCQkgICAgICAgY29uc3QgdW5pb24gaGRtaV9pbmZvZnJhbWUgKmIpCiB7 Ci0JaWYgKGFkanVzdCkgeworCWlmIChmYXN0c2V0KSB7CiAJCWlmICgoZHJtX2RlYnVnICYgRFJN X1VUX0tNUykgPT0gMCkKIAkJCXJldHVybjsKIAotCQlkcm1fZGJnKERSTV9VVF9LTVMsICJtaXNt YXRjaCBpbiAlcyBpbmZvZnJhbWUiLCBuYW1lKTsKKwkJZHJtX2RiZyhEUk1fVVRfS01TLCAiZmFz dHNldCBtaXNtYXRjaCBpbiAlcyBpbmZvZnJhbWUiLCBuYW1lKTsKIAkJZHJtX2RiZyhEUk1fVVRf S01TLCAiZXhwZWN0ZWQ6Iik7CiAJCWhkbWlfaW5mb2ZyYW1lX2xvZyhLRVJOX0RFQlVHLCBkZXZf cHJpdi0+ZHJtLmRldiwgYSk7CiAJCWRybV9kYmcoRFJNX1VUX0tNUywgImZvdW5kIik7CkBAIC0x MjMzMyw3ICsxMjMzMyw3IEBAIHBpcGVfY29uZmlnX2luZm9mcmFtZV9lcnIoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAogfQogCiBzdGF0aWMgdm9pZCBfX3ByaW50ZigzLCA0KQot cGlwZV9jb25maWdfZXJyKGJvb2wgYWRqdXN0LCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFy ICpmb3JtYXQsIC4uLikKK3BpcGVfY29uZmlnX21pc21hdGNoKGJvb2wgZmFzdHNldCwgY29uc3Qg Y2hhciAqbmFtZSwgY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pCiB7CiAJc3RydWN0IHZhX2Zvcm1h dCB2YWY7CiAJdmFfbGlzdCBhcmdzOwpAQCAtMTIzNDIsOCArMTIzNDIsOCBAQCBwaXBlX2NvbmZp Z19lcnIoYm9vbCBhZGp1c3QsIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKmZvcm1hdCwg Li4uKQogCXZhZi5mbXQgPSBmb3JtYXQ7CiAJdmFmLnZhID0gJmFyZ3M7CiAKLQlpZiAoYWRqdXN0 KQotCQlkcm1fZGJnKERSTV9VVF9LTVMsICJtaXNtYXRjaCBpbiAlcyAlcFYiLCBuYW1lLCAmdmFm KTsKKwlpZiAoZmFzdHNldCkKKwkJZHJtX2RiZyhEUk1fVVRfS01TLCAiZmFzdHNldCBtaXNtYXRj aCBpbiAlcyAlcFYiLCBuYW1lLCAmdmFmKTsKIAllbHNlCiAJCWRybV9lcnIoIm1pc21hdGNoIGlu ICVzICVwViIsIG5hbWUsICZ2YWYpOwogCkBAIC0xMjM3MCwxMSArMTIzNzAsMTEgQEAgc3RhdGlj IGJvb2wgZmFzdGJvb3RfZW5hYmxlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYp CiBzdGF0aWMgYm9vbAogaW50ZWxfcGlwZV9jb25maWdfY29tcGFyZShjb25zdCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3VycmVudF9jb25maWcsCiAJCQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpwaXBlX2NvbmZpZywKLQkJCSAgYm9vbCBhZGp1c3QpCisJCQkgIGJvb2wgZmFz dHNldCkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGN1 cnJlbnRfY29uZmlnLT5iYXNlLmNydGMtPmRldik7CiAJYm9vbCByZXQgPSB0cnVlOwotCWJvb2wg Zml4dXBfaW5oZXJpdGVkID0gYWRqdXN0ICYmCisJYm9vbCBmaXh1cF9pbmhlcml0ZWQgPSBmYXN0 c2V0ICYmCiAJCShjdXJyZW50X2NvbmZpZy0+YmFzZS5tb2RlLnByaXZhdGVfZmxhZ3MgJiBJOTE1 X01PREVfRkxBR19JTkhFUklURUQpICYmCiAJCSEocGlwZV9jb25maWctPmJhc2UubW9kZS5wcml2 YXRlX2ZsYWdzICYgSTkxNV9NT0RFX0ZMQUdfSU5IRVJJVEVEKTsKIApAQCAtMTIzODUsMzAgKzEy Mzg1LDMwIEBAIGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKmN1cnJlbnRfY29uZmlnLAogCiAjZGVmaW5lIFBJUEVfQ09ORl9DSEVDS19YKG5h bWUpIGRvIHsgXAogCWlmIChjdXJyZW50X2NvbmZpZy0+bmFtZSAhPSBwaXBlX2NvbmZpZy0+bmFt ZSkgeyBcCi0JCXBpcGVfY29uZmlnX2VycihhZGp1c3QsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCi0J CQkgICIoZXhwZWN0ZWQgMHglMDh4LCBmb3VuZCAweCUwOHgpXG4iLCBcCi0JCQkgIGN1cnJlbnRf Y29uZmlnLT5uYW1lLCBcCi0JCQkgIHBpcGVfY29uZmlnLT5uYW1lKTsgXAorCQlwaXBlX2NvbmZp Z19taXNtYXRjaChmYXN0c2V0LCBfX3N0cmluZ2lmeShuYW1lKSwgXAorCQkJCSAgICAgIihleHBl Y3RlZCAweCUwOHgsIGZvdW5kIDB4JTA4eClcbiIsIFwKKwkJCQkgICAgIGN1cnJlbnRfY29uZmln LT5uYW1lLCBcCisJCQkJICAgICBwaXBlX2NvbmZpZy0+bmFtZSk7IFwKIAkJcmV0ID0gZmFsc2U7 IFwKIAl9IFwKIH0gd2hpbGUgKDApCiAKICNkZWZpbmUgUElQRV9DT05GX0NIRUNLX0kobmFtZSkg ZG8geyBcCiAJaWYgKGN1cnJlbnRfY29uZmlnLT5uYW1lICE9IHBpcGVfY29uZmlnLT5uYW1lKSB7 IFwKLQkJcGlwZV9jb25maWdfZXJyKGFkanVzdCwgX19zdHJpbmdpZnkobmFtZSksIFwKLQkJCSAg IihleHBlY3RlZCAlaSwgZm91bmQgJWkpXG4iLCBcCi0JCQkgIGN1cnJlbnRfY29uZmlnLT5uYW1l LCBcCi0JCQkgIHBpcGVfY29uZmlnLT5uYW1lKTsgXAorCQlwaXBlX2NvbmZpZ19taXNtYXRjaChm YXN0c2V0LCBfX3N0cmluZ2lmeShuYW1lKSwgXAorCQkJCSAgICAgIihleHBlY3RlZCAlaSwgZm91 bmQgJWkpXG4iLCBcCisJCQkJICAgICBjdXJyZW50X2NvbmZpZy0+bmFtZSwgXAorCQkJCSAgICAg cGlwZV9jb25maWctPm5hbWUpOyBcCiAJCXJldCA9IGZhbHNlOyBcCiAJfSBcCiB9IHdoaWxlICgw KQogCiAjZGVmaW5lIFBJUEVfQ09ORl9DSEVDS19CT09MKG5hbWUpIGRvIHsgXAogCWlmIChjdXJy ZW50X2NvbmZpZy0+bmFtZSAhPSBwaXBlX2NvbmZpZy0+bmFtZSkgeyBcCi0JCXBpcGVfY29uZmln X2VycihhZGp1c3QsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCi0JCQkgICIoZXhwZWN0ZWQgJXMsIGZv dW5kICVzKVxuIiwgXAotCQkJICB5ZXNubyhjdXJyZW50X2NvbmZpZy0+bmFtZSksIFwKLQkJCSAg eWVzbm8ocGlwZV9jb25maWctPm5hbWUpKTsgXAorCQlwaXBlX2NvbmZpZ19taXNtYXRjaChmYXN0 c2V0LCBfX3N0cmluZ2lmeShuYW1lKSwgXAorCQkJCSAgICAgIihleHBlY3RlZCAlcywgZm91bmQg JXMpXG4iLCBcCisJCQkJICAgICB5ZXNubyhjdXJyZW50X2NvbmZpZy0+bmFtZSksIFwKKwkJCQkg ICAgIHllc25vKHBpcGVfY29uZmlnLT5uYW1lKSk7IFwKIAkJcmV0ID0gZmFsc2U7IFwKIAl9IFwK IH0gd2hpbGUgKDApCkBAIC0xMjQyMiwyMCArMTI0MjIsMjAgQEAgaW50ZWxfcGlwZV9jb25maWdf Y29tcGFyZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3VycmVudF9jb25maWcsCiAJ aWYgKCFmaXh1cF9pbmhlcml0ZWQgfHwgKCFjdXJyZW50X2NvbmZpZy0+bmFtZSAmJiAhcGlwZV9j b25maWctPm5hbWUpKSB7IFwKIAkJUElQRV9DT05GX0NIRUNLX0JPT0wobmFtZSk7IFwKIAl9IGVs c2UgeyBcCi0JCXBpcGVfY29uZmlnX2VycihhZGp1c3QsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCi0J CQkgICJ1bmFibGUgdG8gdmVyaWZ5IHdoZXRoZXIgc3RhdGUgbWF0Y2hlcyBleGFjdGx5LCBmb3Jj aW5nIG1vZGVzZXQgKGV4cGVjdGVkICVzLCBmb3VuZCAlcylcbiIsIFwKLQkJCSAgeWVzbm8oY3Vy cmVudF9jb25maWctPm5hbWUpLCBcCi0JCQkgIHllc25vKHBpcGVfY29uZmlnLT5uYW1lKSk7IFwK KwkJcGlwZV9jb25maWdfbWlzbWF0Y2goZmFzdHNldCwgX19zdHJpbmdpZnkobmFtZSksIFwKKwkJ CQkgICAgICJ1bmFibGUgdG8gdmVyaWZ5IHdoZXRoZXIgc3RhdGUgbWF0Y2hlcyBleGFjdGx5LCBm b3JjaW5nIG1vZGVzZXQgKGV4cGVjdGVkICVzLCBmb3VuZCAlcylcbiIsIFwKKwkJCQkgICAgIHll c25vKGN1cnJlbnRfY29uZmlnLT5uYW1lKSwgXAorCQkJCSAgICAgeWVzbm8ocGlwZV9jb25maWct Pm5hbWUpKTsgXAogCQlyZXQgPSBmYWxzZTsgXAogCX0gXAogfSB3aGlsZSAoMCkKIAogI2RlZmlu ZSBQSVBFX0NPTkZfQ0hFQ0tfUChuYW1lKSBkbyB7IFwKIAlpZiAoY3VycmVudF9jb25maWctPm5h bWUgIT0gcGlwZV9jb25maWctPm5hbWUpIHsgXAotCQlwaXBlX2NvbmZpZ19lcnIoYWRqdXN0LCBf X3N0cmluZ2lmeShuYW1lKSwgXAotCQkJICAiKGV4cGVjdGVkICVwLCBmb3VuZCAlcClcbiIsIFwK LQkJCSAgY3VycmVudF9jb25maWctPm5hbWUsIFwKLQkJCSAgcGlwZV9jb25maWctPm5hbWUpOyBc CisJCXBpcGVfY29uZmlnX21pc21hdGNoKGZhc3RzZXQsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCisJ CQkJICAgICAiKGV4cGVjdGVkICVwLCBmb3VuZCAlcClcbiIsIFwKKwkJCQkgICAgIGN1cnJlbnRf Y29uZmlnLT5uYW1lLCBcCisJCQkJICAgICBwaXBlX2NvbmZpZy0+bmFtZSk7IFwKIAkJcmV0ID0g ZmFsc2U7IFwKIAl9IFwKIH0gd2hpbGUgKDApCkBAIC0xMjQ0MywyMCArMTI0NDMsMjAgQEAgaW50 ZWxfcGlwZV9jb25maWdfY29tcGFyZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3Vy cmVudF9jb25maWcsCiAjZGVmaW5lIFBJUEVfQ09ORl9DSEVDS19NX04obmFtZSkgZG8geyBcCiAJ aWYgKCFpbnRlbF9jb21wYXJlX2xpbmtfbV9uKCZjdXJyZW50X2NvbmZpZy0+bmFtZSwgXAogCQkJ CSAgICAmcGlwZV9jb25maWctPm5hbWUsXAotCQkJCSAgICAhYWRqdXN0KSkgeyBcCi0JCXBpcGVf Y29uZmlnX2VycihhZGp1c3QsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCi0JCQkgICIoZXhwZWN0ZWQg dHUgJWkgZ21jaCAlaS8laSBsaW5rICVpLyVpLCAiIFwKLQkJCSAgImZvdW5kIHR1ICVpLCBnbWNo ICVpLyVpIGxpbmsgJWkvJWkpXG4iLCBcCi0JCQkgIGN1cnJlbnRfY29uZmlnLT5uYW1lLnR1LCBc Ci0JCQkgIGN1cnJlbnRfY29uZmlnLT5uYW1lLmdtY2hfbSwgXAotCQkJICBjdXJyZW50X2NvbmZp Zy0+bmFtZS5nbWNoX24sIFwKLQkJCSAgY3VycmVudF9jb25maWctPm5hbWUubGlua19tLCBcCi0J CQkgIGN1cnJlbnRfY29uZmlnLT5uYW1lLmxpbmtfbiwgXAotCQkJICBwaXBlX2NvbmZpZy0+bmFt ZS50dSwgXAotCQkJICBwaXBlX2NvbmZpZy0+bmFtZS5nbWNoX20sIFwKLQkJCSAgcGlwZV9jb25m aWctPm5hbWUuZ21jaF9uLCBcCi0JCQkgIHBpcGVfY29uZmlnLT5uYW1lLmxpbmtfbSwgXAotCQkJ ICBwaXBlX2NvbmZpZy0+bmFtZS5saW5rX24pOyBcCisJCQkJICAgICFmYXN0c2V0KSkgeyBcCisJ CXBpcGVfY29uZmlnX21pc21hdGNoKGZhc3RzZXQsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCisJCQkJ ICAgICAiKGV4cGVjdGVkIHR1ICVpIGdtY2ggJWkvJWkgbGluayAlaS8laSwgIiBcCisJCQkJICAg ICAiZm91bmQgdHUgJWksIGdtY2ggJWkvJWkgbGluayAlaS8laSlcbiIsIFwKKwkJCQkgICAgIGN1 cnJlbnRfY29uZmlnLT5uYW1lLnR1LCBcCisJCQkJICAgICBjdXJyZW50X2NvbmZpZy0+bmFtZS5n bWNoX20sIFwKKwkJCQkgICAgIGN1cnJlbnRfY29uZmlnLT5uYW1lLmdtY2hfbiwgXAorCQkJCSAg ICAgY3VycmVudF9jb25maWctPm5hbWUubGlua19tLCBcCisJCQkJICAgICBjdXJyZW50X2NvbmZp Zy0+bmFtZS5saW5rX24sIFwKKwkJCQkgICAgIHBpcGVfY29uZmlnLT5uYW1lLnR1LCBcCisJCQkJ ICAgICBwaXBlX2NvbmZpZy0+bmFtZS5nbWNoX20sIFwKKwkJCQkgICAgIHBpcGVfY29uZmlnLT5u YW1lLmdtY2hfbiwgXAorCQkJCSAgICAgcGlwZV9jb25maWctPm5hbWUubGlua19tLCBcCisJCQkJ ICAgICBwaXBlX2NvbmZpZy0+bmFtZS5saW5rX24pOyBcCiAJCXJldCA9IGZhbHNlOyBcCiAJfSBc CiB9IHdoaWxlICgwKQpAQCAtMTI0NjgsNDkgKzEyNDY4LDQ5IEBAIGludGVsX3BpcGVfY29uZmln X2NvbXBhcmUoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmN1cnJlbnRfY29uZmlnLAog ICovCiAjZGVmaW5lIFBJUEVfQ09ORl9DSEVDS19NX05fQUxUKG5hbWUsIGFsdF9uYW1lKSBkbyB7 IFwKIAlpZiAoIWludGVsX2NvbXBhcmVfbGlua19tX24oJmN1cnJlbnRfY29uZmlnLT5uYW1lLCBc Ci0JCQkJICAgICZwaXBlX2NvbmZpZy0+bmFtZSwgIWFkanVzdCkgJiYgXAorCQkJCSAgICAmcGlw ZV9jb25maWctPm5hbWUsICFmYXN0c2V0KSAmJiBcCiAJICAgICFpbnRlbF9jb21wYXJlX2xpbmtf bV9uKCZjdXJyZW50X2NvbmZpZy0+YWx0X25hbWUsIFwKLQkJCQkgICAgJnBpcGVfY29uZmlnLT5u YW1lLCAhYWRqdXN0KSkgeyBcCi0JCXBpcGVfY29uZmlnX2VycihhZGp1c3QsIF9fc3RyaW5naWZ5 KG5hbWUpLCBcCi0JCQkgICIoZXhwZWN0ZWQgdHUgJWkgZ21jaCAlaS8laSBsaW5rICVpLyVpLCAi IFwKLQkJCSAgIm9yIHR1ICVpIGdtY2ggJWkvJWkgbGluayAlaS8laSwgIiBcCi0JCQkgICJmb3Vu ZCB0dSAlaSwgZ21jaCAlaS8laSBsaW5rICVpLyVpKVxuIiwgXAotCQkJICBjdXJyZW50X2NvbmZp Zy0+bmFtZS50dSwgXAotCQkJICBjdXJyZW50X2NvbmZpZy0+bmFtZS5nbWNoX20sIFwKLQkJCSAg Y3VycmVudF9jb25maWctPm5hbWUuZ21jaF9uLCBcCi0JCQkgIGN1cnJlbnRfY29uZmlnLT5uYW1l LmxpbmtfbSwgXAotCQkJICBjdXJyZW50X2NvbmZpZy0+bmFtZS5saW5rX24sIFwKLQkJCSAgY3Vy cmVudF9jb25maWctPmFsdF9uYW1lLnR1LCBcCi0JCQkgIGN1cnJlbnRfY29uZmlnLT5hbHRfbmFt ZS5nbWNoX20sIFwKLQkJCSAgY3VycmVudF9jb25maWctPmFsdF9uYW1lLmdtY2hfbiwgXAotCQkJ ICBjdXJyZW50X2NvbmZpZy0+YWx0X25hbWUubGlua19tLCBcCi0JCQkgIGN1cnJlbnRfY29uZmln LT5hbHRfbmFtZS5saW5rX24sIFwKLQkJCSAgcGlwZV9jb25maWctPm5hbWUudHUsIFwKLQkJCSAg cGlwZV9jb25maWctPm5hbWUuZ21jaF9tLCBcCi0JCQkgIHBpcGVfY29uZmlnLT5uYW1lLmdtY2hf biwgXAotCQkJICBwaXBlX2NvbmZpZy0+bmFtZS5saW5rX20sIFwKLQkJCSAgcGlwZV9jb25maWct Pm5hbWUubGlua19uKTsgXAorCQkJCSAgICAmcGlwZV9jb25maWctPm5hbWUsICFmYXN0c2V0KSkg eyBcCisJCXBpcGVfY29uZmlnX21pc21hdGNoKGZhc3RzZXQsIF9fc3RyaW5naWZ5KG5hbWUpLCBc CisJCQkJICAgICAiKGV4cGVjdGVkIHR1ICVpIGdtY2ggJWkvJWkgbGluayAlaS8laSwgIiBcCisJ CQkJICAgICAib3IgdHUgJWkgZ21jaCAlaS8laSBsaW5rICVpLyVpLCAiIFwKKwkJCQkgICAgICJm b3VuZCB0dSAlaSwgZ21jaCAlaS8laSBsaW5rICVpLyVpKVxuIiwgXAorCQkJCSAgICAgY3VycmVu dF9jb25maWctPm5hbWUudHUsIFwKKwkJCQkgICAgIGN1cnJlbnRfY29uZmlnLT5uYW1lLmdtY2hf bSwgXAorCQkJCSAgICAgY3VycmVudF9jb25maWctPm5hbWUuZ21jaF9uLCBcCisJCQkJICAgICBj dXJyZW50X2NvbmZpZy0+bmFtZS5saW5rX20sIFwKKwkJCQkgICAgIGN1cnJlbnRfY29uZmlnLT5u YW1lLmxpbmtfbiwgXAorCQkJCSAgICAgY3VycmVudF9jb25maWctPmFsdF9uYW1lLnR1LCBcCisJ CQkJICAgICBjdXJyZW50X2NvbmZpZy0+YWx0X25hbWUuZ21jaF9tLCBcCisJCQkJICAgICBjdXJy ZW50X2NvbmZpZy0+YWx0X25hbWUuZ21jaF9uLCBcCisJCQkJICAgICBjdXJyZW50X2NvbmZpZy0+ YWx0X25hbWUubGlua19tLCBcCisJCQkJICAgICBjdXJyZW50X2NvbmZpZy0+YWx0X25hbWUubGlu a19uLCBcCisJCQkJICAgICBwaXBlX2NvbmZpZy0+bmFtZS50dSwgXAorCQkJCSAgICAgcGlwZV9j b25maWctPm5hbWUuZ21jaF9tLCBcCisJCQkJICAgICBwaXBlX2NvbmZpZy0+bmFtZS5nbWNoX24s IFwKKwkJCQkgICAgIHBpcGVfY29uZmlnLT5uYW1lLmxpbmtfbSwgXAorCQkJCSAgICAgcGlwZV9j b25maWctPm5hbWUubGlua19uKTsgXAogCQlyZXQgPSBmYWxzZTsgXAogCX0gXAogfSB3aGlsZSAo MCkKIAogI2RlZmluZSBQSVBFX0NPTkZfQ0hFQ0tfRkxBR1MobmFtZSwgbWFzaykgZG8geyBcCiAJ aWYgKChjdXJyZW50X2NvbmZpZy0+bmFtZSBeIHBpcGVfY29uZmlnLT5uYW1lKSAmIChtYXNrKSkg eyBcCi0JCXBpcGVfY29uZmlnX2VycihhZGp1c3QsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCi0JCQkg ICIoJXgpIChleHBlY3RlZCAlaSwgZm91bmQgJWkpXG4iLCBcCi0JCQkgIChtYXNrKSwgXAotCQkJ ICBjdXJyZW50X2NvbmZpZy0+bmFtZSAmIChtYXNrKSwgXAotCQkJICBwaXBlX2NvbmZpZy0+bmFt ZSAmIChtYXNrKSk7IFwKKwkJcGlwZV9jb25maWdfbWlzbWF0Y2goZmFzdHNldCwgX19zdHJpbmdp ZnkobmFtZSksIFwKKwkJCQkgICAgICIoJXgpIChleHBlY3RlZCAlaSwgZm91bmQgJWkpXG4iLCBc CisJCQkJICAgICAobWFzayksIFwKKwkJCQkgICAgIGN1cnJlbnRfY29uZmlnLT5uYW1lICYgKG1h c2spLCBcCisJCQkJICAgICBwaXBlX2NvbmZpZy0+bmFtZSAmIChtYXNrKSk7IFwKIAkJcmV0ID0g ZmFsc2U7IFwKIAl9IFwKIH0gd2hpbGUgKDApCiAKICNkZWZpbmUgUElQRV9DT05GX0NIRUNLX0NM T0NLX0ZVWlpZKG5hbWUpIGRvIHsgXAogCWlmICghaW50ZWxfZnV6enlfY2xvY2tfY2hlY2soY3Vy cmVudF9jb25maWctPm5hbWUsIHBpcGVfY29uZmlnLT5uYW1lKSkgeyBcCi0JCXBpcGVfY29uZmln X2VycihhZGp1c3QsIF9fc3RyaW5naWZ5KG5hbWUpLCBcCi0JCQkgICIoZXhwZWN0ZWQgJWksIGZv dW5kICVpKVxuIiwgXAotCQkJICBjdXJyZW50X2NvbmZpZy0+bmFtZSwgXAotCQkJICBwaXBlX2Nv bmZpZy0+bmFtZSk7IFwKKwkJcGlwZV9jb25maWdfbWlzbWF0Y2goZmFzdHNldCwgX19zdHJpbmdp ZnkobmFtZSksIFwKKwkJCQkgICAgICIoZXhwZWN0ZWQgJWksIGZvdW5kICVpKVxuIiwgXAorCQkJ CSAgICAgY3VycmVudF9jb25maWctPm5hbWUsIFwKKwkJCQkgICAgIHBpcGVfY29uZmlnLT5uYW1l KTsgXAogCQlyZXQgPSBmYWxzZTsgXAogCX0gXAogfSB3aGlsZSAoMCkKQEAgLTEyNTE4LDkgKzEy NTE4LDkgQEAgaW50ZWxfcGlwZV9jb25maWdfY29tcGFyZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY3VycmVudF9jb25maWcsCiAjZGVmaW5lIFBJUEVfQ09ORl9DSEVDS19JTkZPRlJB TUUobmFtZSkgZG8geyBcCiAJaWYgKCFpbnRlbF9jb21wYXJlX2luZm9mcmFtZSgmY3VycmVudF9j b25maWctPmluZm9mcmFtZXMubmFtZSwgXAogCQkJCSAgICAgJnBpcGVfY29uZmlnLT5pbmZvZnJh bWVzLm5hbWUpKSB7IFwKLQkJcGlwZV9jb25maWdfaW5mb2ZyYW1lX2VycihkZXZfcHJpdiwgYWRq dXN0LCBfX3N0cmluZ2lmeShuYW1lKSwgXAotCQkJCQkgICZjdXJyZW50X2NvbmZpZy0+aW5mb2Zy YW1lcy5uYW1lLCBcCi0JCQkJCSAgJnBpcGVfY29uZmlnLT5pbmZvZnJhbWVzLm5hbWUpOyBcCisJ CXBpcGVfY29uZmlnX2luZm9mcmFtZV9taXNtYXRjaChkZXZfcHJpdiwgZmFzdHNldCwgX19zdHJp bmdpZnkobmFtZSksIFwKKwkJCQkJICAgICAgICZjdXJyZW50X2NvbmZpZy0+aW5mb2ZyYW1lcy5u YW1lLCBcCisJCQkJCSAgICAgICAmcGlwZV9jb25maWctPmluZm9mcmFtZXMubmFtZSk7IFwKIAkJ cmV0ID0gZmFsc2U7IFwKIAl9IFwKIH0gd2hpbGUgKDApCkBAIC0xMjYwMCw3ICsxMjYwMCw3IEBA IGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmN1cnJlbnRfY29uZmlnLAogCSAqLwogCVBJUEVfQ09ORl9DSEVDS19CT09MKHBjaF9wZml0LmZv cmNlX3RocnUpOwogCi0JaWYgKCFhZGp1c3QpIHsKKwlpZiAoIWZhc3RzZXQpIHsKIAkJUElQRV9D T05GX0NIRUNLX0kocGlwZV9zcmNfdyk7CiAJCVBJUEVfQ09ORl9DSEVDS19JKHBpcGVfc3JjX2gp OwogCi0tIAoyLjIxLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeA==