From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sasha Levin Subject: [PATCH AUTOSEL 4.19 41/52] drm/exynos/mixer: fix MIXER shadow registry synchronisation code Date: Fri, 29 Mar 2019 20:52:48 -0400 Message-ID: <20190330005301.26868-41-sashal@kernel.org> References: <20190330005301.26868-1-sashal@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id 154C8891F4 for ; Sat, 30 Mar 2019 00:54:18 +0000 (UTC) In-Reply-To: <20190330005301.26868-1-sashal@kernel.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: dri-devel@lists.freedesktop.org, Sasha Levin List-Id: dri-devel@lists.freedesktop.org RnJvbTogQW5kcnplaiBIYWpkYSA8YS5oYWpkYUBzYW1zdW5nLmNvbT4KClsgVXBzdHJlYW0gY29t bWl0IDZhM2I0NWFkYTk2MGFjNDc1ZWMyYjQxMDNkNDNlNTc5NDNiMmI4ZDMgXQoKTUlYRVIgb24g RXh5bm9zNSBTb0NzIHVzZXMgZGlmZmVyZW50IHN5bmNocm9uaXNhdGlvbiBtZXRob2QgdGhhbiBF eHlub3M0CnRvIHVwZGF0ZSBpbnRlcm5hbCBzdGF0ZSAoc2hhZG93IHJlZ2lzdGVycykuCkFwcGFy ZW50bHkgdGhlIGRyaXZlciBpbXBsZW1lbnRzIGl0IGluY29ycmVjdGx5LiBUaGUgcnVsZSBzaG91 bGQgYmUKYXMgZm9sbG93czoKLSBkbyBub3QgcmVxdWVzdCB1cGRhdGluZyByZWdpc3RlcnMgdW50 aWwgcHJldmlvdXMgcmVxdWVzdCB3YXMgZmluaXNoZWQsCiAgaWUuIE1YUl9DRkdfTEFZRVJfVVBE QVRFX0NPVU5UIG11c3QgYmUgMC4KLSBiZWZvcmUgc2V0dGluZyByZWdpc3RlcnMgc3luY2hyb25p c2F0aW9uIG9uIFZTWU5DIHNob3VsZCBiZSB0dXJuZWQgb2ZmLAogIGllLiBNWFJfU1RBVFVTX1NZ TkNfRU5BQkxFIHNob3VsZCBiZSByZXNldCwKLSBhZnRlciBmaW5pc2hpbmcgTVhSX1NUQVRVU19T WU5DX0VOQUJMRSBzaG91bGQgYmUgc2V0IGFnYWluLgpUaGUgcGF0Y2ggaG9wZWZ1bGx5IGltcGxl bWVudHMgaXQgY29ycmVjdGx5LgpCZWxvdyBzYW1wbGUga2VybmVsIGxvZyBmcm9tIHBhZ2UgZmF1 bHQgY2F1c2VkIGJ5IHRoZSBidWc6CgpbICAgMjUuNjcwMDM4XSBleHlub3Mtc3lzbW11IDE0NjUw MDAwLnN5c21tdTogMTQ0NTAwMDAubWl4ZXI6IFBBR0UgRkFVTFQgb2NjdXJyZWQgYXQgMHgyMjQ3 YjgwMApbICAgMjUuNjc3ODg4XSAtLS0tLS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0K WyAgIDI1LjY4MjE2NF0ga2VybmVsIEJVRyBhdCAuLi9kcml2ZXJzL2lvbW11L2V4eW5vcy1pb21t dS5jOjQ1MCEKWyAgIDI1LjY4Nzk3MV0gSW50ZXJuYWwgZXJyb3I6IE9vcHMgLSBCVUc6IDAgWyMx XSBQUkVFTVBUIFNNUCBBUk0KWyAgIDI1LjY5Mzc3OF0gTW9kdWxlcyBsaW5rZWQgaW46ClsgICAy NS42OTY4MTZdIENQVTogNSBQSUQ6IDE1NTMgQ29tbTogZmItcmVsZWFzZV90ZXN0IE5vdCB0YWlu dGVkIDUuMC4wLXJjNy0wMTE1Ny1nNWY4NmIxNTY2YmRkICMxMzYKWyAgIDI1LjcwNTY0Nl0gSGFy ZHdhcmUgbmFtZTogU0FNU1VORyBFWFlOT1MgKEZsYXR0ZW5lZCBEZXZpY2UgVHJlZSkKWyAgIDI1 LjcxMTcxMF0gUEMgaXMgYXQgZXh5bm9zX3N5c21tdV9pcnErMHgxYzAvMHgyNjQKWyAgIDI1Ljcx NjQ3MF0gTFIgaXMgYXQgbG9ja19pc19oZWxkX3R5cGUrMHg0NC8weDY0Cgp2MjogYWRkZWQgbWlz c2luZyBNWFJfQ0ZHX0xBWUVSX1VQREFURSBiaXQgc2V0dGluZyBpbiBtaXhlcl9lbmFibGVfc3lu YwoKUmVwb3J0ZWQtYnk6IE1hcmlhbiBNaWhhaWxlc2N1IDxtaWhhaWxlc2N1Mm1AZ21haWwuY29t PgpTaWduZWQtb2ZmLWJ5OiBBbmRyemVqIEhhamRhIDxhLmhhamRhQHNhbXN1bmcuY29tPgpTaWdu ZWQtb2ZmLWJ5OiBJbmtpIERhZSA8aW5raS5kYWVAc2Ftc3VuZy5jb20+ClNpZ25lZC1vZmYtYnk6 IFNhc2hhIExldmluIDxzYXNoYWxAa2VybmVsLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZXh5 bm9zL2V4eW5vc19taXhlci5jIHwgMTEwICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgNDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfbWl4ZXIuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9leHlub3MvZXh5bm9zX21peGVyLmMKaW5kZXggZmZiZjRhOTUwZjY5Li41MjJkNmM0NmQ3YjEg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX21peGVyLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfbWl4ZXIuYwpAQCAtMjAsNiArMjAsNyBAQAog I2luY2x1ZGUgInJlZ3MtdnAuaCIKIAogI2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5oPgorI2luY2x1 ZGUgPGxpbnV4L2t0aW1lLmg+CiAjaW5jbHVkZSA8bGludXgvc3BpbmxvY2suaD4KICNpbmNsdWRl IDxsaW51eC93YWl0Lmg+CiAjaW5jbHVkZSA8bGludXgvaTJjLmg+CkBAIC0zMzcsMTUgKzMzOCw2 MiBAQCBzdGF0aWMgdm9pZCBtaXhlcl9jZmdfdnBfYmxlbmQoc3RydWN0IG1peGVyX2NvbnRleHQg KmN0eCkKIAltaXhlcl9yZWdfd3JpdGUoY3R4LCBNWFJfVklERU9fQ0ZHLCB2YWwpOwogfQogCi1z dGF0aWMgdm9pZCBtaXhlcl92c3luY19zZXRfdXBkYXRlKHN0cnVjdCBtaXhlcl9jb250ZXh0ICpj dHgsIGJvb2wgZW5hYmxlKQorc3RhdGljIGJvb2wgbWl4ZXJfaXNfc3luY2VkKHN0cnVjdCBtaXhl cl9jb250ZXh0ICpjdHgpCiB7Ci0JLyogYmxvY2sgdXBkYXRlIG9uIHZzeW5jICovCi0JbWl4ZXJf cmVnX3dyaXRlbWFzayhjdHgsIE1YUl9TVEFUVVMsIGVuYWJsZSA/Ci0JCQlNWFJfU1RBVFVTX1NZ TkNfRU5BQkxFIDogMCwgTVhSX1NUQVRVU19TWU5DX0VOQUJMRSk7CisJdTMyIGJhc2UsIHNoYWRv dzsKIAorCWlmIChjdHgtPm14cl92ZXIgPT0gTVhSX1ZFUl8xNl8wXzMzXzAgfHwKKwkgICAgY3R4 LT5teHJfdmVyID09IE1YUl9WRVJfMTI4XzBfMF8xODQpCisJCXJldHVybiAhKG1peGVyX3JlZ19y ZWFkKGN0eCwgTVhSX0NGRykgJgorCQkJIE1YUl9DRkdfTEFZRVJfVVBEQVRFX0NPVU5UX01BU0sp OworCisJaWYgKHRlc3RfYml0KE1YUl9CSVRfVlBfRU5BQkxFRCwgJmN0eC0+ZmxhZ3MpICYmCisJ ICAgIHZwX3JlZ19yZWFkKGN0eCwgVlBfU0hBRE9XX1VQREFURSkpCisJCXJldHVybiBmYWxzZTsK KworCWJhc2UgPSBtaXhlcl9yZWdfcmVhZChjdHgsIE1YUl9DRkcpOworCXNoYWRvdyA9IG1peGVy X3JlZ19yZWFkKGN0eCwgTVhSX0NGR19TKTsKKwlpZiAoYmFzZSAhPSBzaGFkb3cpCisJCXJldHVy biBmYWxzZTsKKworCWJhc2UgPSBtaXhlcl9yZWdfcmVhZChjdHgsIE1YUl9HUkFQSElDX0JBU0Uo MCkpOworCXNoYWRvdyA9IG1peGVyX3JlZ19yZWFkKGN0eCwgTVhSX0dSQVBISUNfQkFTRV9TKDAp KTsKKwlpZiAoYmFzZSAhPSBzaGFkb3cpCisJCXJldHVybiBmYWxzZTsKKworCWJhc2UgPSBtaXhl cl9yZWdfcmVhZChjdHgsIE1YUl9HUkFQSElDX0JBU0UoMSkpOworCXNoYWRvdyA9IG1peGVyX3Jl Z19yZWFkKGN0eCwgTVhSX0dSQVBISUNfQkFTRV9TKDEpKTsKKwlpZiAoYmFzZSAhPSBzaGFkb3cp CisJCXJldHVybiBmYWxzZTsKKworCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgaW50IG1peGVy X3dhaXRfZm9yX3N5bmMoc3RydWN0IG1peGVyX2NvbnRleHQgKmN0eCkKK3sKKwlrdGltZV90IHRp bWVvdXQgPSBrdGltZV9hZGRfdXMoa3RpbWVfZ2V0KCksIDEwMDAwMCk7CisKKwl3aGlsZSAoIW1p eGVyX2lzX3N5bmNlZChjdHgpKSB7CisJCXVzbGVlcF9yYW5nZSgxMDAwLCAyMDAwKTsKKwkJaWYg KGt0aW1lX2NvbXBhcmUoa3RpbWVfZ2V0KCksIHRpbWVvdXQpID4gMCkKKwkJCXJldHVybiAtRVRJ TUVET1VUOworCX0KKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgbWl4ZXJfZGlzYWJsZV9z eW5jKHN0cnVjdCBtaXhlcl9jb250ZXh0ICpjdHgpCit7CisJbWl4ZXJfcmVnX3dyaXRlbWFzayhj dHgsIE1YUl9TVEFUVVMsIDAsIE1YUl9TVEFUVVNfU1lOQ19FTkFCTEUpOworfQorCitzdGF0aWMg dm9pZCBtaXhlcl9lbmFibGVfc3luYyhzdHJ1Y3QgbWl4ZXJfY29udGV4dCAqY3R4KQoreworCWlm IChjdHgtPm14cl92ZXIgPT0gTVhSX1ZFUl8xNl8wXzMzXzAgfHwKKwkgICAgY3R4LT5teHJfdmVy ID09IE1YUl9WRVJfMTI4XzBfMF8xODQpCisJCW1peGVyX3JlZ193cml0ZW1hc2soY3R4LCBNWFJf Q0ZHLCB+MCwgTVhSX0NGR19MQVlFUl9VUERBVEUpOworCW1peGVyX3JlZ193cml0ZW1hc2soY3R4 LCBNWFJfU1RBVFVTLCB+MCwgTVhSX1NUQVRVU19TWU5DX0VOQUJMRSk7CiAJaWYgKHRlc3RfYml0 KE1YUl9CSVRfVlBfRU5BQkxFRCwgJmN0eC0+ZmxhZ3MpKQotCQl2cF9yZWdfd3JpdGUoY3R4LCBW UF9TSEFET1dfVVBEQVRFLCBlbmFibGUgPwotCQkJVlBfU0hBRE9XX1VQREFURV9FTkFCTEUgOiAw KTsKKwkJdnBfcmVnX3dyaXRlKGN0eCwgVlBfU0hBRE9XX1VQREFURSwgVlBfU0hBRE9XX1VQREFU RV9FTkFCTEUpOwogfQogCiBzdGF0aWMgdm9pZCBtaXhlcl9jZmdfc2NhbihzdHJ1Y3QgbWl4ZXJf Y29udGV4dCAqY3R4LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCkBAIC00ODIsNyArNTMwLDYgQEAg c3RhdGljIHZvaWQgdnBfdmlkZW9fYnVmZmVyKHN0cnVjdCBtaXhlcl9jb250ZXh0ICpjdHgsCiAK IAlzcGluX2xvY2tfaXJxc2F2ZSgmY3R4LT5yZWdfc2xvY2ssIGZsYWdzKTsKIAotCXZwX3JlZ193 cml0ZShjdHgsIFZQX1NIQURPV19VUERBVEUsIDEpOwogCS8qIGludGVybGFjZSBvciBwcm9ncmVz c2l2ZSBzY2FuIG1vZGUgKi8KIAl2YWwgPSAodGVzdF9iaXQoTVhSX0JJVF9JTlRFUkxBQ0UsICZj dHgtPmZsYWdzKSA/IH4wIDogMCk7CiAJdnBfcmVnX3dyaXRlbWFzayhjdHgsIFZQX01PREUsIHZh bCwgVlBfTU9ERV9MSU5FX1NLSVApOwpAQCAtNTM3LDExICs1ODQsNiBAQCBzdGF0aWMgdm9pZCB2 cF92aWRlb19idWZmZXIoc3RydWN0IG1peGVyX2NvbnRleHQgKmN0eCwKIAl2cF9yZWdzX2R1bXAo Y3R4KTsKIH0KIAotc3RhdGljIHZvaWQgbWl4ZXJfbGF5ZXJfdXBkYXRlKHN0cnVjdCBtaXhlcl9j b250ZXh0ICpjdHgpCi17Ci0JbWl4ZXJfcmVnX3dyaXRlbWFzayhjdHgsIE1YUl9DRkcsIH4wLCBN WFJfQ0ZHX0xBWUVSX1VQREFURSk7Ci19Ci0KIHN0YXRpYyB2b2lkIG1peGVyX2dyYXBoX2J1ZmZl cihzdHJ1Y3QgbWl4ZXJfY29udGV4dCAqY3R4LAogCQkJICAgICAgIHN0cnVjdCBleHlub3NfZHJt X3BsYW5lICpwbGFuZSkKIHsKQEAgLTYxOCwxMSArNjYwLDYgQEAgc3RhdGljIHZvaWQgbWl4ZXJf Z3JhcGhfYnVmZmVyKHN0cnVjdCBtaXhlcl9jb250ZXh0ICpjdHgsCiAJbWl4ZXJfY2ZnX2xheWVy KGN0eCwgd2luLCBwcmlvcml0eSwgdHJ1ZSk7CiAJbWl4ZXJfY2ZnX2dmeF9ibGVuZChjdHgsIHdp biwgZmItPmZvcm1hdC0+aGFzX2FscGhhKTsKIAotCS8qIGxheWVyIHVwZGF0ZSBtYW5kYXRvcnkg Zm9yIG1peGVyIDE2LjAuMzMuMCAqLwotCWlmIChjdHgtPm14cl92ZXIgPT0gTVhSX1ZFUl8xNl8w XzMzXzAgfHwKLQkJY3R4LT5teHJfdmVyID09IE1YUl9WRVJfMTI4XzBfMF8xODQpCi0JCW1peGVy X2xheWVyX3VwZGF0ZShjdHgpOwotCiAJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmY3R4LT5yZWdf c2xvY2ssIGZsYWdzKTsKIAogCW1peGVyX3JlZ3NfZHVtcChjdHgpOwpAQCAtNjg3LDcgKzcyNCw3 IEBAIHN0YXRpYyB2b2lkIG1peGVyX3dpbl9yZXNldChzdHJ1Y3QgbWl4ZXJfY29udGV4dCAqY3R4 KQogc3RhdGljIGlycXJldHVybl90IG1peGVyX2lycV9oYW5kbGVyKGludCBpcnEsIHZvaWQgKmFy ZykKIHsKIAlzdHJ1Y3QgbWl4ZXJfY29udGV4dCAqY3R4ID0gYXJnOwotCXUzMiB2YWwsIGJhc2Us IHNoYWRvdzsKKwl1MzIgdmFsOwogCiAJc3Bpbl9sb2NrKCZjdHgtPnJlZ19zbG9jayk7CiAKQEAg LTcwMSwyNiArNzM4LDkgQEAgc3RhdGljIGlycXJldHVybl90IG1peGVyX2lycV9oYW5kbGVyKGlu dCBpcnEsIHZvaWQgKmFyZykKIAkJdmFsICY9IH5NWFJfSU5UX1NUQVRVU19WU1lOQzsKIAogCQkv KiBpbnRlcmxhY2Ugc2NhbiBuZWVkIHRvIGNoZWNrIHNoYWRvdyByZWdpc3RlciAqLwotCQlpZiAo dGVzdF9iaXQoTVhSX0JJVF9JTlRFUkxBQ0UsICZjdHgtPmZsYWdzKSkgewotCQkJaWYgKHRlc3Rf Yml0KE1YUl9CSVRfVlBfRU5BQkxFRCwgJmN0eC0+ZmxhZ3MpICYmCi0JCQkgICAgdnBfcmVnX3Jl YWQoY3R4LCBWUF9TSEFET1dfVVBEQVRFKSkKLQkJCQlnb3RvIG91dDsKLQotCQkJYmFzZSA9IG1p eGVyX3JlZ19yZWFkKGN0eCwgTVhSX0NGRyk7Ci0JCQlzaGFkb3cgPSBtaXhlcl9yZWdfcmVhZChj dHgsIE1YUl9DRkdfUyk7Ci0JCQlpZiAoYmFzZSAhPSBzaGFkb3cpCi0JCQkJZ290byBvdXQ7Ci0K LQkJCWJhc2UgPSBtaXhlcl9yZWdfcmVhZChjdHgsIE1YUl9HUkFQSElDX0JBU0UoMCkpOwotCQkJ c2hhZG93ID0gbWl4ZXJfcmVnX3JlYWQoY3R4LCBNWFJfR1JBUEhJQ19CQVNFX1MoMCkpOwotCQkJ aWYgKGJhc2UgIT0gc2hhZG93KQotCQkJCWdvdG8gb3V0OwotCi0JCQliYXNlID0gbWl4ZXJfcmVn X3JlYWQoY3R4LCBNWFJfR1JBUEhJQ19CQVNFKDEpKTsKLQkJCXNoYWRvdyA9IG1peGVyX3JlZ19y ZWFkKGN0eCwgTVhSX0dSQVBISUNfQkFTRV9TKDEpKTsKLQkJCWlmIChiYXNlICE9IHNoYWRvdykK LQkJCQlnb3RvIG91dDsKLQkJfQorCQlpZiAodGVzdF9iaXQoTVhSX0JJVF9JTlRFUkxBQ0UsICZj dHgtPmZsYWdzKQorCQkgICAgJiYgIW1peGVyX2lzX3N5bmNlZChjdHgpKQorCQkJZ290byBvdXQ7 CiAKIAkJZHJtX2NydGNfaGFuZGxlX3ZibGFuaygmY3R4LT5jcnRjLT5iYXNlKTsKIAl9CkBAIC04 OTUsMTIgKzkxNSwxNCBAQCBzdGF0aWMgdm9pZCBtaXhlcl9kaXNhYmxlX3ZibGFuayhzdHJ1Y3Qg ZXh5bm9zX2RybV9jcnRjICpjcnRjKQogCiBzdGF0aWMgdm9pZCBtaXhlcl9hdG9taWNfYmVnaW4o c3RydWN0IGV4eW5vc19kcm1fY3J0YyAqY3J0YykKIHsKLQlzdHJ1Y3QgbWl4ZXJfY29udGV4dCAq bWl4ZXJfY3R4ID0gY3J0Yy0+Y3R4OworCXN0cnVjdCBtaXhlcl9jb250ZXh0ICpjdHggPSBjcnRj LT5jdHg7CiAKLQlpZiAoIXRlc3RfYml0KE1YUl9CSVRfUE9XRVJFRCwgJm1peGVyX2N0eC0+Zmxh Z3MpKQorCWlmICghdGVzdF9iaXQoTVhSX0JJVF9QT1dFUkVELCAmY3R4LT5mbGFncykpCiAJCXJl dHVybjsKIAotCW1peGVyX3ZzeW5jX3NldF91cGRhdGUobWl4ZXJfY3R4LCBmYWxzZSk7CisJaWYg KG1peGVyX3dhaXRfZm9yX3N5bmMoY3R4KSkKKwkJZGV2X2VycihjdHgtPmRldiwgInRpbWVvdXQg d2FpdGluZyBmb3IgVlNZTkNcbiIpOworCW1peGVyX2Rpc2FibGVfc3luYyhjdHgpOwogfQogCiBz dGF0aWMgdm9pZCBtaXhlcl91cGRhdGVfcGxhbmUoc3RydWN0IGV4eW5vc19kcm1fY3J0YyAqY3J0 YywKQEAgLTk0Miw3ICs5NjQsNyBAQCBzdGF0aWMgdm9pZCBtaXhlcl9hdG9taWNfZmx1c2goc3Ry dWN0IGV4eW5vc19kcm1fY3J0YyAqY3J0YykKIAlpZiAoIXRlc3RfYml0KE1YUl9CSVRfUE9XRVJF RCwgJm1peGVyX2N0eC0+ZmxhZ3MpKQogCQlyZXR1cm47CiAKLQltaXhlcl92c3luY19zZXRfdXBk YXRlKG1peGVyX2N0eCwgdHJ1ZSk7CisJbWl4ZXJfZW5hYmxlX3N5bmMobWl4ZXJfY3R4KTsKIAll eHlub3NfY3J0Y19oYW5kbGVfZXZlbnQoY3J0Yyk7CiB9CiAKQEAgLTk1Nyw3ICs5NzksNyBAQCBz dGF0aWMgdm9pZCBtaXhlcl9lbmFibGUoc3RydWN0IGV4eW5vc19kcm1fY3J0YyAqY3J0YykKIAog CWV4eW5vc19kcm1fcGlwZV9jbGtfZW5hYmxlKGNydGMsIHRydWUpOwogCi0JbWl4ZXJfdnN5bmNf c2V0X3VwZGF0ZShjdHgsIGZhbHNlKTsKKwltaXhlcl9kaXNhYmxlX3N5bmMoY3R4KTsKIAogCW1p eGVyX3JlZ193cml0ZW1hc2soY3R4LCBNWFJfU1RBVFVTLCB+MCwgTVhSX1NUQVRVU19TT0ZUX1JF U0VUKTsKIApAQCAtOTcwLDcgKzk5Miw3IEBAIHN0YXRpYyB2b2lkIG1peGVyX2VuYWJsZShzdHJ1 Y3QgZXh5bm9zX2RybV9jcnRjICpjcnRjKQogCiAJbWl4ZXJfY29tbWl0KGN0eCk7CiAKLQltaXhl cl92c3luY19zZXRfdXBkYXRlKGN0eCwgdHJ1ZSk7CisJbWl4ZXJfZW5hYmxlX3N5bmMoY3R4KTsK IAogCXNldF9iaXQoTVhSX0JJVF9QT1dFUkVELCAmY3R4LT5mbGFncyk7CiB9Ci0tIAoyLjE5LjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZl bCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==