From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 2/3] drm/i915: add the FBC mutex Date: Tue, 2 Jan 2001 04:58:58 -0200 Message-ID: <978418739-1927-3-git-send-email-przanoni@gmail.com> References: <978418739-1927-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qc0-f181.google.com (mail-qc0-f181.google.com [209.85.216.181]) by gabe.freedesktop.org (Postfix) with ESMTP id 963EE6E5B6 for ; Tue, 16 Jun 2015 15:17:46 -0700 (PDT) Received: by qcwx2 with SMTP id x2so9002895qcw.1 for ; Tue, 16 Jun 2015 15:17:46 -0700 (PDT) In-Reply-To: <978418739-1927-1-git-send-email-przanoni@gmail.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 Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpNYWtlIHN1cmUg d2UncmUgbm90IGdvbm5hIGhhdmUgd2VpcmQgcmFjZXMgaW4gcmVhbGx5IHdlaXJkIGNhc2VzIHdo ZXJlCmEgbG90IG9mIGRpZmZlcmVudCBDUlRDcyBhcmUgZG9pbmcgcmVuZGVyaW5nIGFuZCBtb2Rl c2V0cyBhdCB0aGUgc2FtZQp0aW1lLgoKdjI6CiAtIFJlYmFzZSAoNiBtb250aHMgbGF0ZXIpCiAt IEFsc28gbG9jayBkZWJ1Z2ZzIGFuZCBzdG9sZW4uCgpTaWduZWQtb2ZmLWJ5OiBQYXVsbyBaYW5v bmkgPHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2RlYnVnZnMuYyAgICB8ICA4ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmggICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMg fCAgNyArKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMuYyAgICAgICB8IDczICsr KysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgNzUgaW5z ZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu YwppbmRleCBjNDlmZTJhLi5jOTliZTBlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu YwpAQCAtMTU5Myw2ICsxNTkzLDcgQEAgc3RhdGljIGludCBpOTE1X2ZiY19zdGF0dXMoc3RydWN0 IHNlcV9maWxlICptLCB2b2lkICp1bnVzZWQpCiAJfQogCiAJaW50ZWxfcnVudGltZV9wbV9nZXQo ZGV2X3ByaXYpOworCW11dGV4X2xvY2soJmRldl9wcml2LT5mYmMubG9jayk7CiAKIAlpZiAoaW50 ZWxfZmJjX2VuYWJsZWQoZGV2KSkKIAkJc2VxX3B1dHMobSwgIkZCQyBlbmFibGVkXG4iKTsKQEAg LTE2MDUsNiArMTYwNiw3IEBAIHN0YXRpYyBpbnQgaTkxNV9mYmNfc3RhdHVzKHN0cnVjdCBzZXFf ZmlsZSAqbSwgdm9pZCAqdW51c2VkKQogCQkJICAgeWVzbm8oSTkxNV9SRUFEKEZCQ19TVEFUVVMy KSAmCiAJCQkJIEZCQ19DT01QUkVTU0lPTl9NQVNLKSk7CiAKKwltdXRleF91bmxvY2soJmRldl9w cml2LT5mYmMubG9jayk7CiAJaW50ZWxfcnVudGltZV9wbV9wdXQoZGV2X3ByaXYpOwogCiAJcmV0 dXJuIDA7CkBAIC0xNjE5LDcgKzE2MjEsMTEgQEAgc3RhdGljIGludCBpOTE1X2ZiY19mY19nZXQo dm9pZCAqZGF0YSwgdTY0ICp2YWwpCiAJCXJldHVybiAtRU5PREVWOwogCiAJZHJtX21vZGVzZXRf bG9ja19hbGwoZGV2KTsKKwltdXRleF9sb2NrKCZkZXZfcHJpdi0+ZmJjLmxvY2spOworCiAJKnZh bCA9IGRldl9wcml2LT5mYmMuZmFsc2VfY29sb3I7CisKKwltdXRleF91bmxvY2soJmRldl9wcml2 LT5mYmMubG9jayk7CiAJZHJtX21vZGVzZXRfdW5sb2NrX2FsbChkZXYpOwogCiAJcmV0dXJuIDA7 CkBAIC0xNjM1LDYgKzE2NDEsNyBAQCBzdGF0aWMgaW50IGk5MTVfZmJjX2ZjX3NldCh2b2lkICpk YXRhLCB1NjQgdmFsKQogCQlyZXR1cm4gLUVOT0RFVjsKIAogCWRybV9tb2Rlc2V0X2xvY2tfYWxs KGRldik7CisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKIAogCXJlZyA9IEk5MTVf UkVBRChJTEtfRFBGQ19DT05UUk9MKTsKIAlkZXZfcHJpdi0+ZmJjLmZhbHNlX2NvbG9yID0gdmFs OwpAQCAtMTY0Myw2ICsxNjUwLDcgQEAgc3RhdGljIGludCBpOTE1X2ZiY19mY19zZXQodm9pZCAq ZGF0YSwgdTY0IHZhbCkKIAkJICAgKHJlZyB8IEZCQ19DVExfRkFMU0VfQ09MT1IpIDoKIAkJICAg KHJlZyAmIH5GQkNfQ1RMX0ZBTFNFX0NPTE9SKSk7CiAKKwltdXRleF91bmxvY2soJmRldl9wcml2 LT5mYmMubG9jayk7CiAJZHJtX21vZGVzZXRfdW5sb2NrX2FsbChkZXYpOwogCXJldHVybiAwOwog fQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggNDkxZWYwYy4uOWFiMDRmNyAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oCkBAIC04OTEsNiArODkxLDcgQEAgZW51bSBmYl9vcF9vcmlnaW4gewog fTsKIAogc3RydWN0IGk5MTVfZmJjIHsKKwlzdHJ1Y3QgbXV0ZXggbG9jazsKIAl1bnNpZ25lZCBs b25nIHVuY29tcHJlc3NlZF9zaXplOwogCXVuc2lnbmVkIHRocmVzaG9sZDsKIAl1bnNpZ25lZCBp bnQgZmJfaWQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9s ZW4uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCmluZGV4IDM0OGVk NWEuLjk0N2RkYjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0 b2xlbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC0y NTAsNiArMjUwLDggQEAgaW50IGk5MTVfZ2VtX3N0b2xlbl9zZXR1cF9jb21wcmVzc2lvbihzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgc2l6ZSwgaW50IGZiX2MKIHsKIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCisJbG9ja2RlcF9hc3Nl cnRfaGVsZCgmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwogCWlmICghZHJtX21tX2luaXRpYWxpemVk KCZkZXZfcHJpdi0+bW0uc3RvbGVuKSkKIAkJcmV0dXJuIC1FTk9ERVY7CiAKQEAgLTI2Niw2ICsy NjgsOCBAQCB2b2lkIGk5MTVfZ2VtX3N0b2xlbl9jbGVhbnVwX2NvbXByZXNzaW9uKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g ZGV2LT5kZXZfcHJpdmF0ZTsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5mYmMu bG9jayk7CisKIAlpZiAoZGV2X3ByaXYtPmZiYy51bmNvbXByZXNzZWRfc2l6ZSA9PSAwKQogCQly ZXR1cm47CiAKQEAgLTI4Niw3ICsyOTAsMTAgQEAgdm9pZCBpOTE1X2dlbV9jbGVhbnVwX3N0b2xl bihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWlmICghZHJtX21tX2luaXRpYWxpemVkKCZkZXZf cHJpdi0+bW0uc3RvbGVuKSkKIAkJcmV0dXJuOwogCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZi Yy5sb2NrKTsKIAlpOTE1X2dlbV9zdG9sZW5fY2xlYW51cF9jb21wcmVzc2lvbihkZXYpOworCW11 dGV4X3VubG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwogCWRybV9tbV90YWtlZG93bigmZGV2 X3ByaXYtPm1tLnN0b2xlbik7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2ZiYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJjLmMKaW5kZXggOWU1 NWI5Yi4uMzFmZjg4YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJj LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJjLmMKQEAgLTMzNiw2ICszMzYs NyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9mYmNfd29ya19mbihzdHJ1Y3Qgd29ya19zdHJ1Y3QgKl9f d29yaykKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2 YXRlOwogCiAJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCW11dGV4X2xvY2soJmRl dl9wcml2LT5mYmMubG9jayk7CiAJaWYgKHdvcmsgPT0gZGV2X3ByaXYtPmZiYy5mYmNfd29yaykg ewogCQkvKiBEb3VibGUgY2hlY2sgdGhhdCB3ZSBoYXZlbid0IHN3aXRjaGVkIGZiIHdpdGhvdXQg Y2FuY2VsbGluZwogCQkgKiB0aGUgcHJpb3Igd29yay4KQEAgLTM1MCw2ICszNTEsNyBAQCBzdGF0 aWMgdm9pZCBpbnRlbF9mYmNfd29ya19mbihzdHJ1Y3Qgd29ya19zdHJ1Y3QgKl9fd29yaykKIAog CQlkZXZfcHJpdi0+ZmJjLmZiY193b3JrID0gTlVMTDsKIAl9CisJbXV0ZXhfdW5sb2NrKCZkZXZf cHJpdi0+ZmJjLmxvY2spOwogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogCiAJ a2ZyZWUod29yayk7CkBAIC0zNTcsNiArMzU5LDggQEAgc3RhdGljIHZvaWQgaW50ZWxfZmJjX3dv cmtfZm4oc3RydWN0IHdvcmtfc3RydWN0ICpfX3dvcmspCiAKIHN0YXRpYyB2b2lkIGludGVsX2Zi Y19jYW5jZWxfd29yayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CisJbG9j a2RlcF9hc3NlcnRfaGVsZCgmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwogCWlmIChkZXZfcHJpdi0+ ZmJjLmZiY193b3JrID09IE5VTEwpCiAJCXJldHVybjsKIApAQCAtMzg0LDYgKzM4OCw4IEBAIHN0 YXRpYyB2b2lkIGludGVsX2ZiY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRl dl9wcml2LT5mYmMubG9jayk7CisKIAlpZiAoIWRldl9wcml2LT5kaXNwbGF5LmVuYWJsZV9mYmMp CiAJCXJldHVybjsKIApAQCAtNDE4LDE2ICs0MjQsMTIgQEAgc3RhdGljIHZvaWQgaW50ZWxfZmJj X2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJc2NoZWR1bGVfZGVsYXllZF93b3JrKCZ3 b3JrLT53b3JrLCBtc2Vjc190b19qaWZmaWVzKDUwKSk7CiB9CiAKLS8qKgotICogaW50ZWxfZmJj X2Rpc2FibGUgLSBkaXNhYmxlIEZCQwotICogQGRldjogdGhlIGRybV9kZXZpY2UKLSAqCi0gKiBU aGlzIGZ1bmN0aW9uIGRpc2FibGVzIEZCQy4KLSAqLwotdm9pZCBpbnRlbF9mYmNfZGlzYWJsZShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3RhdGljIHZvaWQgX19pbnRlbF9mYmNfZGlzYWJsZShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJp di0+ZmJjLmxvY2spOworCiAJaW50ZWxfZmJjX2NhbmNlbF93b3JrKGRldl9wcml2KTsKIAogCWlm ICghZGV2X3ByaXYtPmRpc3BsYXkuZGlzYWJsZV9mYmMpCkBAIC00MzcsNiArNDM5LDIxIEBAIHZv aWQgaW50ZWxfZmJjX2Rpc2FibGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlkZXZfcHJpdi0+ ZmJjLmNydGMgPSBOVUxMOwogfQogCisvKioKKyAqIGludGVsX2ZiY19kaXNhYmxlIC0gZGlzYWJs ZSBGQkMKKyAqIEBkZXY6IHRoZSBkcm1fZGV2aWNlCisgKgorICogVGhpcyBmdW5jdGlvbiBkaXNh YmxlcyBGQkMuCisgKi8KK3ZvaWQgaW50ZWxfZmJjX2Rpc2FibGUoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9w cml2YXRlOworCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwlfX2ludGVsX2Zi Y19kaXNhYmxlKGRldik7CisJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+ZmJjLmxvY2spOworfQor CiBjb25zdCBjaGFyICppbnRlbF9ub19mYmNfcmVhc29uX3N0cihlbnVtIG5vX2ZiY19yZWFzb24g cmVhc29uKQogewogCXN3aXRjaCAocmVhc29uKSB7CkBAIC01MTYsNyArNTMzLDcgQEAgc3RhdGlj IHN0cnVjdCBkcm1fY3J0YyAqaW50ZWxfZmJjX2ZpbmRfY3J0YyhzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCiB9CiAKIC8qKgotICogaW50ZWxfZmJjX3VwZGF0ZSAtIGVuYWJsZS9k aXNhYmxlIEZCQyBhcyBuZWVkZWQKKyAqIF9faW50ZWxfZmJjX3VwZGF0ZSAtIGVuYWJsZS9kaXNh YmxlIEZCQyBhcyBuZWVkZWQsIHVubG9ja2VkCiAgKiBAZGV2OiB0aGUgZHJtX2RldmljZQogICoK ICAqIFNldCB1cCB0aGUgZnJhbWVidWZmZXIgY29tcHJlc3Npb24gaGFyZHdhcmUgYXQgbW9kZSBz ZXQgdGltZS4gIFdlCkBAIC01MzQsNyArNTUxLDcgQEAgc3RhdGljIHN0cnVjdCBkcm1fY3J0YyAq aW50ZWxfZmJjX2ZpbmRfY3J0YyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAg KgogICogV2UgbmVlZCB0byBlbmFibGUvZGlzYWJsZSBGQkMgb24gYSBnbG9iYWwgYmFzaXMuCiAg Ki8KLXZvaWQgaW50ZWxfZmJjX3VwZGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3RhdGlj IHZvaWQgX19pbnRlbF9mYmNfdXBkYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB7CiAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1 Y3QgZHJtX2NydGMgKmNydGMgPSBOVUxMOwpAQCAtNTQ0LDYgKzU2MSw4IEBAIHZvaWQgaW50ZWxf ZmJjX3VwZGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWNvbnN0IHN0cnVjdCBkcm1fZGlz cGxheV9tb2RlICphZGp1c3RlZF9tb2RlOwogCXVuc2lnbmVkIGludCBtYXhfd2lkdGgsIG1heF9o ZWlnaHQ7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+ZmJjLmxvY2spOworCiAJ aWYgKCFIQVNfRkJDKGRldikpCiAJCXJldHVybjsKIApAQCAtNjY1LDcgKzY4NCw3IEBAIHZvaWQg aW50ZWxfZmJjX3VwZGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQkgKiBzb21lIHBvaW50 LiBBbmQgd2Ugd2FpdCBiZWZvcmUgZW5hYmxpbmcgRkJDIGFueXdheS4KIAkJICovCiAJCURSTV9E RUJVR19LTVMoImRpc2FibGluZyBhY3RpdmUgRkJDIGZvciB1cGRhdGVcbiIpOwotCQlpbnRlbF9m YmNfZGlzYWJsZShkZXYpOworCQlfX2ludGVsX2ZiY19kaXNhYmxlKGRldik7CiAJfQogCiAJaW50 ZWxfZmJjX2VuYWJsZShjcnRjKTsKQEAgLTY3NiwxMSArNjk1LDI2IEBAIG91dF9kaXNhYmxlOgog CS8qIE11bHRpcGxlIGRpc2FibGVzIHNob3VsZCBiZSBoYXJtbGVzcyAqLwogCWlmIChpbnRlbF9m YmNfZW5hYmxlZChkZXYpKSB7CiAJCURSTV9ERUJVR19LTVMoInVuc3VwcG9ydGVkIGNvbmZpZywg ZGlzYWJsaW5nIEZCQ1xuIik7Ci0JCWludGVsX2ZiY19kaXNhYmxlKGRldik7CisJCV9faW50ZWxf ZmJjX2Rpc2FibGUoZGV2KTsKIAl9CiAJaTkxNV9nZW1fc3RvbGVuX2NsZWFudXBfY29tcHJlc3Np b24oZGV2KTsKIH0KIAorLyoKKyAqIGludGVsX2ZiY191cGRhdGUgLSBlbmFibGUvZGlzYWJsZSBG QkMgYXMgbmVlZGVkCisgKiBAZGV2OiB0aGUgZHJtX2RldmljZQorICoKKyAqIFRoaXMgZnVuY3Rp b24gcmVldmFsdWF0ZXMgdGhlIG92ZXJhbGwgc3RhdGUgYW5kIGVuYWJsZXMgb3IgZGlzYWJsZXMg RkJDLgorICovCit2b2lkIGludGVsX2ZiY191cGRhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikK K3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRl OworCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwlfX2ludGVsX2ZiY191cGRh dGUoZGV2KTsKKwltdXRleF91bmxvY2soJmRldl9wcml2LT5mYmMubG9jayk7Cit9CisKIHZvaWQg aW50ZWxfZmJjX2ludmFsaWRhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAog CQkJICB1bnNpZ25lZCBpbnQgZnJvbnRidWZmZXJfYml0cywKIAkJCSAgZW51bSBmYl9vcF9vcmln aW4gb3JpZ2luKQpAQCAtNjkxLDYgKzcyNSw4IEBAIHZvaWQgaW50ZWxfZmJjX2ludmFsaWRhdGUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCWlmIChvcmlnaW4gPT0gT1JJR0lO X0dUVCkKIAkJcmV0dXJuOwogCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwog CWlmIChkZXZfcHJpdi0+ZmJjLmVuYWJsZWQpCiAJCWZiY19iaXRzID0gSU5URUxfRlJPTlRCVUZG RVJfUFJJTUFSWShkZXZfcHJpdi0+ZmJjLmNydGMtPnBpcGUpOwogCWVsc2UgaWYgKGRldl9wcml2 LT5mYmMuZmJjX3dvcmspCkBAIC03MDIsNyArNzM4LDkgQEAgdm9pZCBpbnRlbF9mYmNfaW52YWxp ZGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJZGV2X3ByaXYtPmZiYy5i dXN5X2JpdHMgfD0gKGZiY19iaXRzICYgZnJvbnRidWZmZXJfYml0cyk7CiAKIAlpZiAoZGV2X3By aXYtPmZiYy5idXN5X2JpdHMpCi0JCWludGVsX2ZiY19kaXNhYmxlKGRldik7CisJCV9faW50ZWxf ZmJjX2Rpc2FibGUoZGV2KTsKKworCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsK IH0KIAogdm9pZCBpbnRlbF9mYmNfZmx1c2goc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LApAQCAtNzEwLDEzICs3NDgsMTggQEAgdm9pZCBpbnRlbF9mYmNfZmx1c2goc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBk ZXZfcHJpdi0+ZGV2OwogCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwogCWlm ICghZGV2X3ByaXYtPmZiYy5idXN5X2JpdHMpCi0JCXJldHVybjsKKwkJZ290byBvdXQ7CiAKIAlk ZXZfcHJpdi0+ZmJjLmJ1c3lfYml0cyAmPSB+ZnJvbnRidWZmZXJfYml0czsKIAogCWlmICghZGV2 X3ByaXYtPmZiYy5idXN5X2JpdHMpCi0JCWludGVsX2ZiY191cGRhdGUoZGV2KTsKKwkJX19pbnRl bF9mYmNfdXBkYXRlKGRldik7CisKK291dDoKKwltdXRleF91bmxvY2soJmRldl9wcml2LT5mYmMu bG9jayk7CiB9CiAKIC8qKgpAQCAtNzI5LDYgKzc3Miw4IEBAIHZvaWQgaW50ZWxfZmJjX2luaXQo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCWVudW0gcGlwZSBwaXBlOwog CisJbXV0ZXhfaW5pdCgmZGV2X3ByaXYtPmZiYy5sb2NrKTsKKwogCWlmICghSEFTX0ZCQyhkZXZf cHJpdikpIHsKIAkJZGV2X3ByaXYtPmZiYy5lbmFibGVkID0gZmFsc2U7CiAJCWRldl9wcml2LT5m YmMubm9fZmJjX3JlYXNvbiA9IEZCQ19VTlNVUFBPUlRFRDsKLS0gCjIuMS40CgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=