From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sharat Masetty Subject: [PATCH 01/13] drm/msm: Track GPU fences with idr Date: Mon, 1 Oct 2018 18:01:33 +0530 Message-ID: <1538397105-19581-2-git-send-email-smasetty@codeaurora.org> References: <1538397105-19581-1-git-send-email-smasetty@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1538397105-19581-1-git-send-email-smasetty-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, Sharat Masetty , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org VHJhY2sgdGhlIEdQVSBmZW5jZXMgY3JlYXRlZCBhdCBzdWJtaXQgdGltZSB3aXRoIGlkciBpbnN0 ZWFkIG9mIHRoZSByaW5nCnRoZSBzZXF1ZW5jZSBudW1iZXIuIFRoaXMgaGVscHMgd2l0aCBlYXNp bHkgY2hhbmdpbmcgdGhlIHVuZGVybHlpbmcKZmVuY2UgdG8gc29tZXRoaW5nIHdlIGRvbid0IHRy dWx5IG93biwgbGlrZSB0aGUgc2NoZWR1bGVyIGZlbmNlLgoKQWxzbyBtb3ZlIHRoZSBHUFUgZmVu Y2UgYWxsb2NhdGlvbiB0byBtc21fZ3B1X3N1Ym1pdCgpIGFuZCBoYXZlCnRoZSBmdW5jdGlvbiBy ZXR1cm4gdGhlIGZlbmNlLiBUaGlzIHN1aXRzIHdlbGwgd2hlbiBpbnRlZ3JhdGluZyB3aXRoIHRo ZQpHUFUgc2NoZWR1bGVyLgoKQWRkaXRpb25hbGx5IHJlbW92ZSB0aGUgbm9uLWludGVycnVwdGli bGUgd2FpdCB2YXJpYW50IGZyb20gbXNtX3dhaXRfZmVuY2UoKQphcyBpdCBpcyBub3QgdXNlZC4K ClNpZ25lZC1vZmYtYnk6IFNoYXJhdCBNYXNldHR5IDxzbWFzZXR0eUBjb2RlYXVyb3JhLm9yZz4K LS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYyAgICAgICAgfCAgMyArLS0KIGRyaXZl cnMvZ3B1L2RybS9tc20vbXNtX2ZlbmNlLmMgICAgICB8IDMwICsrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmVuY2UuaCAgICAgIHwgIDUgKysr LS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dlbS5oICAgICAgICB8ICAxICsKIGRyaXZlcnMv Z3B1L2RybS9tc20vbXNtX2dlbV9zdWJtaXQuYyB8IDI2ICsrKysrKysrKysrKysrKysrKy0tLS0t LS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYyAgICAgICAgfCAxMCArKysrKysrKy0t CiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaCAgICAgICAgfCAgNCArKy0tCiBkcml2ZXJz L2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmMgfCAgNSArKysrKwogZHJpdmVycy9ncHUvZHJt L21zbS9tc21fcmluZ2J1ZmZlci5oIHwgIDEgKwogOSBmaWxlcyBjaGFuZ2VkLCA1MyBpbnNlcnRp b25zKCspLCAzMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNt L21zbV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCmluZGV4IDAyMWEwYjYu LjhlYWExYmQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCkBAIC03NDYsOCArNzQ2LDcgQEAgc3RhdGlj IGludCBtc21faW9jdGxfd2FpdF9mZW5jZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpk YXRhLAogCWlmICghcXVldWUpCiAJCXJldHVybiAtRU5PRU5UOwogCi0JcmV0ID0gbXNtX3dhaXRf ZmVuY2UoZ3B1LT5yYltxdWV1ZS0+cHJpb10tPmZjdHgsIGFyZ3MtPmZlbmNlLCAmdGltZW91dCwK LQkJdHJ1ZSk7CisJcmV0ID0gbXNtX3dhaXRfZmVuY2UoZ3B1LT5yYltxdWV1ZS0+cHJpb10sIGFy Z3MtPmZlbmNlLCAmdGltZW91dCk7CiAKIAltc21fc3VibWl0cXVldWVfcHV0KHF1ZXVlKTsKIAly ZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmVuY2UuYyBi L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2ZlbmNlLmMKaW5kZXggMzQ5YzEyZi4uMGU3OTEyYiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmVuY2UuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vbXNtL21zbV9mZW5jZS5jCkBAIC01MCw0MSArNTAsMzkgQEAgc3RhdGljIGlubGlu ZSBib29sIGZlbmNlX2NvbXBsZXRlZChzdHJ1Y3QgbXNtX2ZlbmNlX2NvbnRleHQgKmZjdHgsIHVp bnQzMl90IGZlbmMKIH0KIAogLyogbGVnYWN5IHBhdGggZm9yIFdBSVRfRkVOQ0UgaW9jdGw6ICov Ci1pbnQgbXNtX3dhaXRfZmVuY2Uoc3RydWN0IG1zbV9mZW5jZV9jb250ZXh0ICpmY3R4LCB1aW50 MzJfdCBmZW5jZSwKLQkJa3RpbWVfdCAqdGltZW91dCwgYm9vbCBpbnRlcnJ1cHRpYmxlKQoraW50 IG1zbV93YWl0X2ZlbmNlKHN0cnVjdCBtc21fcmluZ2J1ZmZlciAqcmluZywgdWludDMyX3QgZmVu Y2VfaWQsCisJCWt0aW1lX3QgKnRpbWVvdXQpCiB7CisJc3RydWN0IGRtYV9mZW5jZSAqZmVuY2U7 CiAJaW50IHJldDsKIAotCWlmIChmZW5jZSA+IGZjdHgtPmxhc3RfZmVuY2UpIHsKLQkJRFJNX0VS Uk9SKCIlczogd2FpdGluZyBvbiBpbnZhbGlkIGZlbmNlOiAldSAob2YgJXUpXG4iLAotCQkJCWZj dHgtPm5hbWUsIGZlbmNlLCBmY3R4LT5sYXN0X2ZlbmNlKTsKLQkJcmV0dXJuIC1FSU5WQUw7CisJ cmN1X3JlYWRfbG9jaygpOworCWZlbmNlID0gaWRyX2ZpbmQoJnJpbmctPmZlbmNlX2lkciwgZmVu Y2VfaWQpOworCisJaWYgKCFmZW5jZSB8fCAhZG1hX2ZlbmNlX2dldF9yY3UoZmVuY2UpKSB7CisJ CXJjdV9yZWFkX3VubG9jaygpOworCQlyZXR1cm4gMDsKIAl9CisJcmN1X3JlYWRfdW5sb2NrKCk7 CiAKIAlpZiAoIXRpbWVvdXQpIHsKIAkJLyogbm8td2FpdDogKi8KLQkJcmV0ID0gZmVuY2VfY29t cGxldGVkKGZjdHgsIGZlbmNlKSA/IDAgOiAtRUJVU1k7CisJCXJldCA9IGRtYV9mZW5jZV9pc19z aWduYWxlZChmZW5jZSkgPyAwIDogLUVCVVNZOwogCX0gZWxzZSB7CiAJCXVuc2lnbmVkIGxvbmcg cmVtYWluaW5nX2ppZmZpZXMgPSB0aW1lb3V0X3RvX2ppZmZpZXModGltZW91dCk7CiAKLQkJaWYg KGludGVycnVwdGlibGUpCi0JCQlyZXQgPSB3YWl0X2V2ZW50X2ludGVycnVwdGlibGVfdGltZW91 dChmY3R4LT5ldmVudCwKLQkJCQlmZW5jZV9jb21wbGV0ZWQoZmN0eCwgZmVuY2UpLAotCQkJCXJl bWFpbmluZ19qaWZmaWVzKTsKLQkJZWxzZQotCQkJcmV0ID0gd2FpdF9ldmVudF90aW1lb3V0KGZj dHgtPmV2ZW50LAotCQkJCWZlbmNlX2NvbXBsZXRlZChmY3R4LCBmZW5jZSksCi0JCQkJcmVtYWlu aW5nX2ppZmZpZXMpOworCQlyZXQgPSBkbWFfZmVuY2Vfd2FpdF90aW1lb3V0KGZlbmNlLCB0cnVl LCByZW1haW5pbmdfamlmZmllcyk7CiAKIAkJaWYgKHJldCA9PSAwKSB7CiAJCQlEQkcoInRpbWVv dXQgd2FpdGluZyBmb3IgZmVuY2U6ICV1IChjb21wbGV0ZWQ6ICV1KSIsCi0JCQkJCWZlbmNlLCBm Y3R4LT5jb21wbGV0ZWRfZmVuY2UpOworCQkJCQlmZW5jZV9pZCwgcmluZy0+bWVtcHRycy0+ZmVu Y2UpOwogCQkJcmV0ID0gLUVUSU1FRE9VVDsKIAkJfSBlbHNlIGlmIChyZXQgIT0gLUVSRVNUQVJU U1lTKSB7CiAJCQlyZXQgPSAwOwogCQl9CiAJfQogCisJZG1hX2ZlbmNlX3B1dChmZW5jZSk7CiAJ cmV0dXJuIHJldDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmVu Y2UuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2ZlbmNlLmgKaW5kZXggYjlmZTA1OS4uYTgx MzNmNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmVuY2UuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mZW5jZS5oCkBAIC0xOSw2ICsxOSw3IEBACiAjZGVmaW5l IF9fTVNNX0ZFTkNFX0hfXwogCiAjaW5jbHVkZSAibXNtX2Rydi5oIgorI2luY2x1ZGUgIm1zbV9y aW5nYnVmZmVyLmgiCiAKIHN0cnVjdCBtc21fZmVuY2VfY29udGV4dCB7CiAJc3RydWN0IGRybV9k ZXZpY2UgKmRldjsKQEAgLTM1LDggKzM2LDggQEAgc3RydWN0IG1zbV9mZW5jZV9jb250ZXh0ICog bXNtX2ZlbmNlX2NvbnRleHRfYWxsb2Moc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJY29uc3Qg Y2hhciAqbmFtZSk7CiB2b2lkIG1zbV9mZW5jZV9jb250ZXh0X2ZyZWUoc3RydWN0IG1zbV9mZW5j ZV9jb250ZXh0ICpmY3R4KTsKIAotaW50IG1zbV93YWl0X2ZlbmNlKHN0cnVjdCBtc21fZmVuY2Vf Y29udGV4dCAqZmN0eCwgdWludDMyX3QgZmVuY2UsCi0JCWt0aW1lX3QgKnRpbWVvdXQsIGJvb2wg aW50ZXJydXB0aWJsZSk7CitpbnQgbXNtX3dhaXRfZmVuY2Uoc3RydWN0IG1zbV9yaW5nYnVmZmVy ICpyaW5nLCB1aW50MzJfdCBmZW5jZV9pZCwKKwkJa3RpbWVfdCAqdGltZW91dCk7CiB2b2lkIG1z bV91cGRhdGVfZmVuY2Uoc3RydWN0IG1zbV9mZW5jZV9jb250ZXh0ICpmY3R4LCB1aW50MzJfdCBm ZW5jZSk7CiAKIHN0cnVjdCBkbWFfZmVuY2UgKiBtc21fZmVuY2VfYWxsb2Moc3RydWN0IG1zbV9m ZW5jZV9jb250ZXh0ICpmY3R4KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNt X2dlbS5oIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmgKaW5kZXggYzVkOWJkMy4uMjg3 Zjk3NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmgKKysrIGIvZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmgKQEAgLTE0Myw2ICsxNDMsNyBAQCBzdHJ1Y3QgbXNt X2dlbV9zdWJtaXQgewogCXN0cnVjdCB3d19hY3F1aXJlX2N0eCB0aWNrZXQ7CiAJdWludDMyX3Qg c2Vxbm87CQkvKiBTZXF1ZW5jZSBudW1iZXIgb2YgdGhlIHN1Ym1pdCBvbiB0aGUgcmluZyAqLwog CXN0cnVjdCBkbWFfZmVuY2UgKmZlbmNlOworCWludCBvdXRfZmVuY2VfaWQ7CiAJc3RydWN0IG1z bV9ncHVfc3VibWl0cXVldWUgKnF1ZXVlOwogCXN0cnVjdCBwaWQgKnBpZDsgICAgLyogc3VibWl0 dGluZyBwcm9jZXNzICovCiAJYm9vbCB2YWxpZDsgICAgICAgICAvKiB0cnVlIGlmIG5vIGNtZHN0 cmVhbSBwYXRjaGluZyBuZWVkZWQgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20v bXNtX2dlbV9zdWJtaXQuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dlbV9zdWJtaXQuYwpp bmRleCA3YmQ4M2UwLi4wMGU2MzQ3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21z bV9nZW1fc3VibWl0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ2VtX3N1Ym1pdC5j CkBAIC00OCw2ICs0OCw3IEBAIHN0YXRpYyBzdHJ1Y3QgbXNtX2dlbV9zdWJtaXQgKnN1Ym1pdF9j cmVhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlzdWJtaXQtPmRldiA9IGRldjsKIAlzdWJt aXQtPmdwdSA9IGdwdTsKIAlzdWJtaXQtPmZlbmNlID0gTlVMTDsKKwlzdWJtaXQtPm91dF9mZW5j ZV9pZCA9IC0xOwogCXN1Ym1pdC0+cGlkID0gZ2V0X3BpZCh0YXNrX3BpZChjdXJyZW50KSk7CiAJ c3VibWl0LT5jbWQgPSAodm9pZCAqKSZzdWJtaXQtPmJvc1tucl9ib3NdOwogCXN1Ym1pdC0+cXVl dWUgPSBxdWV1ZTsKQEAgLTY2LDYgKzY3LDggQEAgc3RhdGljIHN0cnVjdCBtc21fZ2VtX3N1Ym1p dCAqc3VibWl0X2NyZWF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCiB2b2lkIG1zbV9nZW1f c3VibWl0X2ZyZWUoc3RydWN0IG1zbV9nZW1fc3VibWl0ICpzdWJtaXQpCiB7CisJaWRyX3JlbW92 ZSgmc3VibWl0LT5yaW5nLT5mZW5jZV9pZHIsIHN1Ym1pdC0+b3V0X2ZlbmNlX2lkKTsKKwogCWRt YV9mZW5jZV9wdXQoc3VibWl0LT5mZW5jZSk7CiAJbGlzdF9kZWwoJnN1Ym1pdC0+bm9kZSk7CiAJ cHV0X3BpZChzdWJtaXQtPnBpZCk7CkBAIC01NTcsMjYgKzU2MCwzMyBAQCBpbnQgbXNtX2lvY3Rs X2dlbV9zdWJtaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAogCXN1Ym1p dC0+bnJfY21kcyA9IGk7CiAKLQlzdWJtaXQtPmZlbmNlID0gbXNtX2ZlbmNlX2FsbG9jKHJpbmct PmZjdHgpOworCW1zbV9ncHVfc3VibWl0KGdwdSwgc3VibWl0LCBjdHgpOwogCWlmIChJU19FUlIo c3VibWl0LT5mZW5jZSkpIHsKIAkJcmV0ID0gUFRSX0VSUihzdWJtaXQtPmZlbmNlKTsKIAkJc3Vi bWl0LT5mZW5jZSA9IE5VTEw7CiAJCWdvdG8gb3V0OwogCX0KIAorCS8qCisJICogTm8gcHJvdGVj dGlvbiBzaG91bGQgYmUgb2theSBoZXJlIHNpbmNlIHRoaXMgaXMgcHJvdGVjdGVkIGJ5IHRoZSBi aWcKKwkgKiBHUFUgbG9jay4KKwkgKi8KKwlzdWJtaXQtPm91dF9mZW5jZV9pZCA9IGlkcl9hbGxv Y19jeWNsaWMoJnJpbmctPmZlbmNlX2lkciwgc3VibWl0LT5mZW5jZSwKKwkJCTAsIElOVF9NQVgs IEdGUF9LRVJORUwpOworCisJaWYgKHN1Ym1pdC0+b3V0X2ZlbmNlX2lkIDwgMCkgeworCQlyZXQg PSAtRU5PTUVNOworCQlnb3RvIG91dDsKKwl9CisKKwlhcmdzLT5mZW5jZSA9IHN1Ym1pdC0+b3V0 X2ZlbmNlX2lkOworCiAJaWYgKGFyZ3MtPmZsYWdzICYgTVNNX1NVQk1JVF9GRU5DRV9GRF9PVVQp IHsKIAkJc3luY19maWxlID0gc3luY19maWxlX2NyZWF0ZShzdWJtaXQtPmZlbmNlKTsKIAkJaWYg KCFzeW5jX2ZpbGUpIHsKIAkJCXJldCA9IC1FTk9NRU07CiAJCQlnb3RvIG91dDsKIAkJfQotCX0K LQotCW1zbV9ncHVfc3VibWl0KGdwdSwgc3VibWl0LCBjdHgpOwotCi0JYXJncy0+ZmVuY2UgPSBz dWJtaXQtPmZlbmNlLT5zZXFubzsKLQotCWlmIChhcmdzLT5mbGFncyAmIE1TTV9TVUJNSVRfRkVO Q0VfRkRfT1VUKSB7CiAJCWZkX2luc3RhbGwob3V0X2ZlbmNlX2ZkLCBzeW5jX2ZpbGUtPmZpbGUp OwogCQlhcmdzLT5mZW5jZV9mZCA9IG91dF9mZW5jZV9mZDsKIAl9CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5j CmluZGV4IDFjMDlhY2YuLmViNjcxNzIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20v bXNtX2dwdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5jCkBAIC02MDIsOCAr NjAyLDggQEAgdm9pZCBtc21fZ3B1X3JldGlyZShzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogfQogCiAv KiBhZGQgYm8ncyB0byBncHUncyByaW5nLCBhbmQga2ljayBncHU6ICovCi12b2lkIG1zbV9ncHVf c3VibWl0KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0 LAotCQlzdHJ1Y3QgbXNtX2ZpbGVfcHJpdmF0ZSAqY3R4KQorc3RydWN0IGRtYV9mZW5jZSAqbXNt X2dwdV9zdWJtaXQoc3RydWN0IG1zbV9ncHUgKmdwdSwKKwkJc3RydWN0IG1zbV9nZW1fc3VibWl0 ICpzdWJtaXQsIHN0cnVjdCBtc21fZmlsZV9wcml2YXRlICpjdHgpCiB7CiAJc3RydWN0IGRybV9k ZXZpY2UgKmRldiA9IGdwdS0+ZGV2OwogCXN0cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYgPSBk ZXYtPmRldl9wcml2YXRlOwpAQCAtNjEyLDYgKzYxMiwxMCBAQCB2b2lkIG1zbV9ncHVfc3VibWl0 KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LAogCiAJ V0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZkZXYtPnN0cnVjdF9tdXRleCkpOwogCisJc3VibWl0 LT5mZW5jZSA9IG1zbV9mZW5jZV9hbGxvYyhyaW5nLT5mY3R4KTsKKwlpZiAoSVNfRVJSKHN1Ym1p dC0+ZmVuY2UpKQorCQlyZXR1cm4gc3VibWl0LT5mZW5jZTsKKwogCXBtX3J1bnRpbWVfZ2V0X3N5 bmMoJmdwdS0+cGRldi0+ZGV2KTsKIAogCW1zbV9ncHVfaHdfaW5pdChncHUpOwpAQCAtNjQ4LDYg KzY1Miw4IEBAIHZvaWQgbXNtX2dwdV9zdWJtaXQoc3RydWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0 IG1zbV9nZW1fc3VibWl0ICpzdWJtaXQsCiAJcHJpdi0+bGFzdGN0eCA9IGN0eDsKIAogCWhhbmdj aGVja190aW1lcl9yZXNldChncHUpOworCisJcmV0dXJuIHN1Ym1pdC0+ZmVuY2U7CiB9CiAKIC8q CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaCBiL2RyaXZlcnMvZ3B1 L2RybS9tc20vbXNtX2dwdS5oCmluZGV4IGI4MjQxMTcuLmI1NjJiMjUgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNt X2dwdS5oCkBAIC0yMzUsOCArMjM1LDggQEAgaW50IG1zbV9ncHVfcGVyZmNudHJfc2FtcGxlKHN0 cnVjdCBtc21fZ3B1ICpncHUsIHVpbnQzMl90ICphY3RpdmV0aW1lLAogCQl1aW50MzJfdCAqdG90 YWx0aW1lLCB1aW50MzJfdCBuY250cnMsIHVpbnQzMl90ICpjbnRycyk7CiAKIHZvaWQgbXNtX2dw dV9yZXRpcmUoc3RydWN0IG1zbV9ncHUgKmdwdSk7Ci12b2lkIG1zbV9ncHVfc3VibWl0KHN0cnVj dCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LAotCQlzdHJ1Y3Qg bXNtX2ZpbGVfcHJpdmF0ZSAqY3R4KTsKK3N0cnVjdCBkbWFfZmVuY2UgKm1zbV9ncHVfc3VibWl0 KHN0cnVjdCBtc21fZ3B1ICpncHUsCisJCXN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LCBz dHJ1Y3QgbXNtX2ZpbGVfcHJpdmF0ZSAqY3R4KTsKIAogaW50IG1zbV9ncHVfaW5pdChzdHJ1Y3Qg ZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAogCQlzdHJ1Y3Qg bXNtX2dwdSAqZ3B1LCBjb25zdCBzdHJ1Y3QgbXNtX2dwdV9mdW5jcyAqZnVuY3MsCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9yaW5nYnVmZmVyLmMKaW5kZXggNmY1Mjk1Yi4uNzM0ZjJiOCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fcmluZ2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9tc20vbXNtX3JpbmdidWZmZXIuYwpAQCAtNTksNiArNTksOCBAQCBzdHJ1Y3QgbXNtX3Jp bmdidWZmZXIgKm1zbV9yaW5nYnVmZmVyX25ldyhzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCBpbnQgaWQs CiAKIAlyaW5nLT5mY3R4ID0gbXNtX2ZlbmNlX2NvbnRleHRfYWxsb2MoZ3B1LT5kZXYsIG5hbWUp OwogCisJaWRyX2luaXQoJnJpbmctPmZlbmNlX2lkcik7CisKIAlyZXR1cm4gcmluZzsKIAogZmFp bDoKQEAgLTc4LDUgKzgwLDggQEAgdm9pZCBtc21fcmluZ2J1ZmZlcl9kZXN0cm95KHN0cnVjdCBt c21fcmluZ2J1ZmZlciAqcmluZykKIAkJbXNtX2dlbV9wdXRfdmFkZHIocmluZy0+Ym8pOwogCQlk cm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQocmluZy0+Ym8pOwogCX0KKworCWlkcl9kZXN0cm95 KCZyaW5nLT5mZW5jZV9pZHIpOworCiAJa2ZyZWUocmluZyk7CiB9CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21z bV9yaW5nYnVmZmVyLmgKaW5kZXggY2ZmY2UwOS4uYjc0YTBhOSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL21zbS9tc21fcmluZ2J1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20v bXNtX3JpbmdidWZmZXIuaApAQCAtNDAsNiArNDAsNyBAQCBzdHJ1Y3QgbXNtX3JpbmdidWZmZXIg ewogCXN0cnVjdCBtc21fcmJtZW1wdHJzICptZW1wdHJzOwogCXVpbnQ2NF90IG1lbXB0cnNfaW92 YTsKIAlzdHJ1Y3QgbXNtX2ZlbmNlX2NvbnRleHQgKmZjdHg7CisJc3RydWN0IGlkciBmZW5jZV9p ZHI7CiAJc3BpbmxvY2tfdCBsb2NrOwogfTsKIAotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJl ZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVubwo=