From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 07/49] drm/i915: Deminish contribution of wait-boosting from clients Date: Fri, 27 Mar 2015 11:01:39 +0000 Message-ID: <1427454141-4000-8-git-send-email-chris@chris-wilson.co.uk> References: <1427454141-4000-1-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from relay.fireflyinternet.com (hostedrelay.fireflyinternet.com [109.228.30.76]) by gabe.freedesktop.org (Postfix) with ESMTP id 9282E6EB4C for ; Fri, 27 Mar 2015 04:02:27 -0700 (PDT) In-Reply-To: <1427454141-4000-1-git-send-email-chris@chris-wilson.co.uk> 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 V2l0aCBib29zdGluZyBmb3IgbWlzc2VkIHBhZ2VmbGlwcywgd2UgaGF2ZSBhIG11Y2ggc3Ryb25n ZXIgaW5kaWNhdGlvbgpvZiB3aGVuIHdlIG5lZWQgdG8gKHRlbXBvcmFyaWx5KSBib29zdCBHUFUg ZnJlcXVlbmN5IHRvIGVuc3VyZSBzbW9vdGgKZGVsaXZlcnkgb2YgZnJhbWVzLiBTbyBub3cgb25s eSBhbGxvdyBlYWNoIGNsaWVudCB0byBwZXJmb3JtIG9uZSBSUFMgYm9vc3QKaW4gZWFjaCBwZXJp b2Qgb2YgR1BVIGFjdGl2aXR5IGR1ZSB0byBzdGFsbGluZyBvbiByZXN1bHRzLgoKU2lnbmVkLW9m Zi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBEZWVwYWsg UyA8ZGVlcGFrLnNAbGludXguaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogRGVlcGFrIFMgPGRlZXBh ay5zQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVn ZnMuYyB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgIHwgIDkgKysrKysrLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jICAgICB8IDM1ICsrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgfCAgMyArKy0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgICAgIHwgMTggKysrKysrKysrKysrKystLS0KIDUg ZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2RlYnVnZnMuYwppbmRleCAwMDdjN2Q3ZDgyOTUuLmM1MzdjYzdkNjE3YyAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKQEAgLTIyMjYsNiArMjIyNiw0NCBAQCBz dGF0aWMgaW50IGk5MTVfcHBndHRfaW5mbyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEp CiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBpbnQgaTkxNV9ycHNfYm9vc3RfaW5mbyhzdHJ1Y3Qg c2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGRybV9pbmZvX25vZGUgKm5vZGUg PSBtLT5wcml2YXRlOworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBub2RlLT5taW5vci0+ZGV2 OworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7 CisJc3RydWN0IGRybV9maWxlICpmaWxlOworCWludCByZXQ7CisKKwlyZXQgPSBtdXRleF9sb2Nr X2ludGVycnVwdGlibGUoJmRldi0+c3RydWN0X211dGV4KTsKKwlpZiAocmV0KQorCQlyZXR1cm4g cmV0OworCisJcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXZfcHJpdi0+cnBzLmh3 X2xvY2spOworCWlmIChyZXQpCisJCWdvdG8gdW5sb2NrOworCisJbGlzdF9mb3JfZWFjaF9lbnRy eV9yZXZlcnNlKGZpbGUsICZkZXYtPmZpbGVsaXN0LCBsaGVhZCkgeworCQlzdHJ1Y3QgZHJtX2k5 MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYgPSBmaWxlLT5kcml2ZXJfcHJpdjsKKwkJc3RydWN0 IHRhc2tfc3RydWN0ICp0YXNrOworCisJCXJjdV9yZWFkX2xvY2soKTsKKwkJdGFzayA9IHBpZF90 YXNrKGZpbGUtPnBpZCwgUElEVFlQRV9QSUQpOworCQlzZXFfcHJpbnRmKG0sICIlcyBbJWRdOiAl ZCBib29zdHMlc1xuIiwKKwkJCSAgIHRhc2sgPyB0YXNrLT5jb21tIDogIjx1bmtub3duPiIsCisJ CQkgICB0YXNrID8gdGFzay0+cGlkIDogLTEsCisJCQkgICBmaWxlX3ByaXYtPnJwc19ib29zdHMs CisJCQkgICBsaXN0X2VtcHR5KCZmaWxlX3ByaXYtPnJwc19ib29zdCkgPyAiIiA6ICIsIGFjdGl2 ZSIpOworCQlyY3VfcmVhZF91bmxvY2soKTsKKwl9CisJc2VxX3ByaW50ZihtLCAiS2VybmVsIGJv b3N0czogJWRcbiIsIGRldl9wcml2LT5ycHMuYm9vc3RzKTsKKworCW11dGV4X3VubG9jaygmZGV2 X3ByaXYtPnJwcy5od19sb2NrKTsKK3VubG9jazoKKwltdXRleF91bmxvY2soJmRldi0+c3RydWN0 X211dGV4KTsKKworCXJldHVybiByZXQ7Cit9CisKIHN0YXRpYyBpbnQgaTkxNV9sbGMoc3RydWN0 IHNlcV9maWxlICptLCB2b2lkICpkYXRhKQogewogCXN0cnVjdCBkcm1faW5mb19ub2RlICpub2Rl ID0gbS0+cHJpdmF0ZTsKQEAgLTQ2OTEsNiArNDcyOSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg ZHJtX2luZm9fbGlzdCBpOTE1X2RlYnVnZnNfbGlzdFtdID0gewogCXsiaTkxNV9kZGJfaW5mbyIs IGk5MTVfZGRiX2luZm8sIDB9LAogCXsiaTkxNV9zc2V1X3N0YXR1cyIsIGk5MTVfc3NldV9zdGF0 dXMsIDB9LAogCXsiaTkxNV9kcnJzX3N0YXR1cyIsIGk5MTVfZHJyc19zdGF0dXMsIDB9LAorCXsi aTkxNV9ycHNfYm9vc3RfaW5mbyIsIGk5MTVfcnBzX2Jvb3N0X2luZm8sIDB9LAogfTsKICNkZWZp bmUgSTkxNV9ERUJVR0ZTX0VOVFJJRVMgQVJSQVlfU0laRShpOTE1X2RlYnVnZnNfbGlzdCkKIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMThjZWZkODIyNmMxLi4xZmY4NjI5MjY0YTUgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTA0MSw2ICsxMDQxLDggQEAgc3RydWN0IGludGVs X2dlbjZfcG93ZXJfbWdtdCB7CiAKIAlib29sIGVuYWJsZWQ7CiAJc3RydWN0IGRlbGF5ZWRfd29y ayBkZWxheWVkX3Jlc3VtZV93b3JrOworCXN0cnVjdCBsaXN0X2hlYWQgY2xpZW50czsKKwl1bnNp Z25lZCBib29zdHM7CiAKIAkvKiBtYW51YWwgd2EgcmVzaWRlbmN5IGNhbGN1bGF0aW9ucyAqLwog CXN0cnVjdCBpbnRlbF9ycHNfZWkgdXBfZWksIGRvd25fZWk7CkBAIC0yMTg5LDEyICsyMTkxLDEz IEBAIHN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgewogCXN0cnVjdCB7CiAJCXNwaW5sb2Nr X3QgbG9jazsKIAkJc3RydWN0IGxpc3RfaGVhZCByZXF1ZXN0X2xpc3Q7Ci0JCXN0cnVjdCBkZWxh eWVkX3dvcmsgaWRsZV93b3JrOwogCX0gbW07CiAJc3RydWN0IGlkciBjb250ZXh0X2lkcjsKIAot CWF0b21pY190IHJwc193YWl0X2Jvb3N0OwotCXN0cnVjdCAgaW50ZWxfZW5naW5lX2NzICpic2Rf cmluZzsKKwlzdHJ1Y3QgbGlzdF9oZWFkIHJwc19ib29zdDsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICpic2RfcmluZzsKKworCXVuc2lnbmVkIHJwc19ib29zdHM7CiB9OwogCiAvKgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtLmMKaW5kZXggYTQ2MzcyZWJiM2JjLi5kNTRmNmEyNzdkODIgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW0uYwpAQCAtMTE4MSwxNCArMTE4MSw2IEBAIHN0YXRpYyBib29sIG1pc3Nl ZF9pcnEoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCXJldHVybiB0ZXN0X2Jp dChyaW5nLT5pZCwgJmRldl9wcml2LT5ncHVfZXJyb3IubWlzc2VkX2lycV9yaW5ncyk7CiB9CiAK LXN0YXRpYyBib29sIGNhbl93YWl0X2Jvb3N0KHN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUg KmZpbGVfcHJpdikKLXsKLQlpZiAoZmlsZV9wcml2ID09IE5VTEwpCi0JCXJldHVybiB0cnVlOwot Ci0JcmV0dXJuICFhdG9taWNfeGNoZygmZmlsZV9wcml2LT5ycHNfd2FpdF9ib29zdCwgdHJ1ZSk7 Ci19Ci0KIC8qKgogICogX19pOTE1X3dhaXRfcmVxdWVzdCAtIHdhaXQgdW50aWwgZXhlY3V0aW9u IG9mIHJlcXVlc3QgaGFzIGZpbmlzaGVkCiAgKiBAcmVxOiBkdWghCkBAIC0xMjMwLDEzICsxMjIy LDggQEAgaW50IF9faTkxNV93YWl0X3JlcXVlc3Qoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0 ICpyZXEsCiAJdGltZW91dF9leHBpcmUgPSB0aW1lb3V0ID8KIAkJamlmZmllcyArIG5zZWNzX3Rv X2ppZmZpZXNfdGltZW91dCgodTY0KSp0aW1lb3V0KSA6IDA7CiAKLQlpZiAoSU5URUxfSU5GTyhk ZXYpLT5nZW4gPj0gNiAmJiByaW5nLT5pZCA9PSBSQ1MgJiYgY2FuX3dhaXRfYm9vc3QoZmlsZV9w cml2KSkgewotCQlnZW42X3Jwc19ib29zdChkZXZfcHJpdik7Ci0JCWlmIChmaWxlX3ByaXYpCi0J CQltb2RfZGVsYXllZF93b3JrKGRldl9wcml2LT53cSwKLQkJCQkJICZmaWxlX3ByaXYtPm1tLmlk bGVfd29yaywKLQkJCQkJIG1zZWNzX3RvX2ppZmZpZXMoMTAwKSk7Ci0JfQorCWlmIChyaW5nLT5p ZCA9PSBSQ1MgJiYgSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gNikKKwkJZ2VuNl9ycHNfYm9vc3Qo ZGV2X3ByaXYsIGZpbGVfcHJpdik7CiAKIAlpZiAoIWlycV90ZXN0X2luX3Byb2dyZXNzICYmIFdB Uk5fT04oIXJpbmctPmlycV9nZXQocmluZykpKQogCQlyZXR1cm4gLUVOT0RFVjsKQEAgLTUwNDYs OCArNTAzMyw2IEBAIHZvaWQgaTkxNV9nZW1fcmVsZWFzZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpCiB7CiAJc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0 ZSAqZmlsZV9wcml2ID0gZmlsZS0+ZHJpdmVyX3ByaXY7CiAKLQljYW5jZWxfZGVsYXllZF93b3Jr X3N5bmMoJmZpbGVfcHJpdi0+bW0uaWRsZV93b3JrKTsKLQogCS8qIENsZWFuIHVwIG91ciByZXF1 ZXN0IGxpc3Qgd2hlbiB0aGUgY2xpZW50IGlzIGdvaW5nIGF3YXksIHNvIHRoYXQKIAkgKiBsYXRl ciByZXRpcmVfcmVxdWVzdHMgd29uJ3QgZGVyZWZlcmVuY2Ugb3VyIHNvb24tdG8tYmUtZ29uZQog CSAqIGZpbGVfcHJpdi4KQEAgLTUwNjMsMTUgKzUwNDgsMTIgQEAgdm9pZCBpOTE1X2dlbV9yZWxl YXNlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKIAkJcmVx dWVzdC0+ZmlsZV9wcml2ID0gTlVMTDsKIAl9CiAJc3Bpbl91bmxvY2soJmZpbGVfcHJpdi0+bW0u bG9jayk7Ci19Ci0KLXN0YXRpYyB2b2lkCi1pOTE1X2dlbV9maWxlX2lkbGVfd29ya19oYW5kbGVy KHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKLXsKLQlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2 YXRlICpmaWxlX3ByaXYgPQotCQljb250YWluZXJfb2Yod29yaywgdHlwZW9mKCpmaWxlX3ByaXYp LCBtbS5pZGxlX3dvcmsud29yayk7CiAKLQlhdG9taWNfc2V0KCZmaWxlX3ByaXYtPnJwc193YWl0 X2Jvb3N0LCBmYWxzZSk7CisJaWYgKCFsaXN0X2VtcHR5KCZmaWxlX3ByaXYtPnJwc19ib29zdCkp IHsKKwkJbXV0ZXhfbG9jaygmdG9faTkxNShkZXYpLT5ycHMuaHdfbG9jayk7CisJCWxpc3RfZGVs KCZmaWxlX3ByaXYtPnJwc19ib29zdCk7CisJCW11dGV4X3VubG9jaygmdG9faTkxNShkZXYpLT5y cHMuaHdfbG9jayk7CisJfQogfQogCiBpbnQgaTkxNV9nZW1fb3BlbihzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpCkBAIC01MDg4LDExICs1MDcwLDEwIEBAIGlu dCBpOTE1X2dlbV9vcGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAq ZmlsZSkKIAlmaWxlLT5kcml2ZXJfcHJpdiA9IGZpbGVfcHJpdjsKIAlmaWxlX3ByaXYtPmRldl9w cml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlmaWxlX3ByaXYtPmZpbGUgPSBmaWxlOworCUlOSVRf TElTVF9IRUFEKCZmaWxlX3ByaXYtPnJwc19ib29zdCk7CiAKIAlzcGluX2xvY2tfaW5pdCgmZmls ZV9wcml2LT5tbS5sb2NrKTsKIAlJTklUX0xJU1RfSEVBRCgmZmlsZV9wcml2LT5tbS5yZXF1ZXN0 X2xpc3QpOwotCUlOSVRfREVMQVlFRF9XT1JLKCZmaWxlX3ByaXYtPm1tLmlkbGVfd29yaywKLQkJ CSAgaTkxNV9nZW1fZmlsZV9pZGxlX3dvcmtfaGFuZGxlcik7CiAKIAlyZXQgPSBpOTE1X2dlbV9j b250ZXh0X29wZW4oZGV2LCBmaWxlKTsKIAlpZiAocmV0KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aAppbmRleCA0YTZhNTFiOTliMjIuLjdlMGZmMTNkMmFlYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKQEAgLTEyNjQsNyArMTI2NCw4IEBAIHZvaWQgZ2VuNl91cGRhdGVfcmluZ19mcmVxKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogdm9pZCBnZW42X3Jwc19idXN5KHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdik7CiB2b2lkIGdlbjZfcnBzX3Jlc2V0X2VpKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiB2b2lkIGdlbjZfcnBzX2lkbGUoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KTsKLXZvaWQgZ2VuNl9ycHNfYm9vc3Qoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KTsKK3ZvaWQgZ2VuNl9ycHNfYm9vc3Qoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQkgICAgc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0 ZSAqZmlsZV9wcml2KTsKIHZvaWQgaW50ZWxfcXVldWVfcnBzX2Jvb3N0X2Zvcl9yZXF1ZXN0KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVx dWVzdCAqcnEpOwogdm9pZCBpbGtfd21fZ2V0X2h3X3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKaW5kZXggNTVmNzU0YWExMWI2Li5iY2I4NmNkZDFi ZTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwpAQCAtNDA4NywxMCArNDA4NywxNCBAQCB2b2lk IGdlbjZfcnBzX2lkbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlkZXZf cHJpdi0+cnBzLmxhc3RfYWRqID0gMDsKIAkJSTkxNV9XUklURShHRU42X1BNSU5UUk1TSywgMHhm ZmZmZmZmZik7CiAJfQorCisJd2hpbGUgKCFsaXN0X2VtcHR5KCZkZXZfcHJpdi0+cnBzLmNsaWVu dHMpKQorCQlsaXN0X2RlbF9pbml0KGRldl9wcml2LT5ycHMuY2xpZW50cy5uZXh0KTsKIAltdXRl eF91bmxvY2soJmRldl9wcml2LT5ycHMuaHdfbG9jayk7CiB9CiAKLXZvaWQgZ2VuNl9ycHNfYm9v c3Qoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQordm9pZCBnZW42X3Jwc19ib29z dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCSAgICBzdHJ1Y3QgZHJtX2k5 MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYpCiB7CiAJdTMyIHZhbDsKIApAQCAtNDA5OCw5ICs0 MTAyLDE2IEBAIHZvaWQgZ2VuNl9ycHNfYm9vc3Qoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQogCXZhbCA9IGRldl9wcml2LT5ycHMubWF4X2ZyZXFfc29mdGxpbWl0OwogCWlmIChk ZXZfcHJpdi0+cnBzLmVuYWJsZWQgJiYKIAkgICAgZGV2X3ByaXYtPm1tLmJ1c3kgJiYKLQkgICAg ZGV2X3ByaXYtPnJwcy5jdXJfZnJlcSA8IHZhbCkgeworCSAgICBkZXZfcHJpdi0+cnBzLmN1cl9m cmVxIDwgdmFsICYmCisJICAgIChmaWxlX3ByaXYgPT0gTlVMTCB8fCBsaXN0X2VtcHR5KCZmaWxl X3ByaXYtPnJwc19ib29zdCkpKSB7CiAJCWludGVsX3NldF9ycHMoZGV2X3ByaXYtPmRldiwgdmFs KTsKIAkJZGV2X3ByaXYtPnJwcy5sYXN0X2FkaiA9IDA7CisKKwkJaWYgKGZpbGVfcHJpdiAhPSBO VUxMKSB7CisJCQlsaXN0X2FkZCgmZmlsZV9wcml2LT5ycHNfYm9vc3QsICZkZXZfcHJpdi0+cnBz LmNsaWVudHMpOworCQkJZmlsZV9wcml2LT5ycHNfYm9vc3RzKys7CisJCX0gZWxzZQorCQkJZGV2 X3ByaXYtPnJwcy5ib29zdHMrKzsKIAl9CiAJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+cnBzLmh3 X2xvY2spOwogfQpAQCAtNjc3OCw3ICs2Nzg5LDcgQEAgc3RhdGljIHZvaWQgX19pbnRlbF9ycHNf Ym9vc3Rfd29yayhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiAJc3RydWN0IHJlcXVlc3RfYm9v c3QgKmJvb3N0ID0gY29udGFpbmVyX29mKHdvcmssIHN0cnVjdCByZXF1ZXN0X2Jvb3N0LCB3b3Jr KTsKIAogCWlmICghaTkxNV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQoYm9vc3QtPnJxLCB0cnVlKSkK LQkJZ2VuNl9ycHNfYm9vc3QodG9faTkxNShib29zdC0+cnEtPnJpbmctPmRldikpOworCQlnZW42 X3Jwc19ib29zdCh0b19pOTE1KGJvb3N0LT5ycS0+cmluZy0+ZGV2KSwgTlVMTCk7CiAKIAlpOTE1 X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlX191bmxvY2tlZChib29zdC0+cnEpOwogCWtmcmVlKGJv b3N0KTsKQEAgLTY4MTEsNiArNjgyMiw3IEBAIHZvaWQgaW50ZWxfcG1fc2V0dXAoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKIAogCUlOSVRfREVMQVlFRF9XT1JLKCZkZXZfcHJpdi0+cnBzLmRlbGF5 ZWRfcmVzdW1lX3dvcmssCiAJCQkgIGludGVsX2dlbjZfcG93ZXJzYXZlX3dvcmspOworCUlOSVRf TElTVF9IRUFEKCZkZXZfcHJpdi0+cnBzLmNsaWVudHMpOwogCiAJZGV2X3ByaXYtPnBtLnN1c3Bl bmRlZCA9IGZhbHNlOwogfQotLSAKMi4xLjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==