From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 1/2] drm/i915: Make for_each_engine_masked work on intel_gt Date: Thu, 17 Oct 2019 10:44:59 +0100 Message-ID: <20191017094500.21831-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id BA2CD6EA31 for ; Thu, 17 Oct 2019 09:45:05 +0000 (UTC) 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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCk1lZGl1bSB0 ZXJtIGdvYWwgaXMgdG8gZWxpbWluYXRlIHRoZSBpOTE1LT5lbmdpbmVbXSBhcnJheSBhbmQgdG8g Z2V0IHRoZXJlCndlIGhhdmUgcmVjZW50bHkgaW50cm9kdWNlZCBlcXVpdmFsZW50IGFycmF5IGlu IGludGVsX2d0LiBOb3cgd2UgbmVlZCB0bwptaWdyYXRlIHRoZSBjb2RlIGZ1cnRoZXIgdG93YXJk cyB0aGlzIHN0YXRlLgoKVGhpcyBuZXh0IHN0ZXAgaXMgdG8gZWxpbWluYXRlIHVzYWdlIG9mIGk5 MTUtPmVuZ2luZXNbXSBmcm9tIHRoZQpmb3JfZWFjaF9lbmdpbmVfbWFza2VkIGl0ZXJhdG9yLgoK Rm9yIHRoaXMgdG8gd29yayB3ZSBhbHNvIG5lZWQgdG8gdXNlIGVuZ2luZS0+aWQgYXMgaW5kZXgg d2hlbiBwb3B1bGF0aW5nCnRoZSBndC0+ZW5naW5lW10gYXJyYXkgYW5kIGFkanVzdCB0aGUgZGVm YXVsdCBlbmdpbmUgc2V0IGluZGV4aW5nIHRvIHVzZQplbmdpbmUtPmxlZ2FjeV9pZHggaW5zdGVh ZCBvZiBhc3N1bWluZyBndC0+ZW5naW5lc1tdIGluZGV4aW5nLgoKdjI6CiAqIFBvcHVsYXRlIGd0 LT5lbmdpbmVbXSBlYXJsaWVyLgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRr by51cnN1bGluQGludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29u LmNvLnVrPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0LmMg fCAgNCArKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfY3MuYyAgIHwg IDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfdXNlci5jIHwgIDIg LS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2d0LmMgICAgICAgICAgfCAgMiArLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfaGFuZ2NoZWNrLmMgICB8ICAyICstCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yZXNldC5jICAgICAgIHwgMTIgKysrKysrLS0tLS0t CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvZXhlY2xpc3QuYyAgICAgICAgIHwgIDQgKystLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L3NjaGVkdWxlci5jICAgICAgICB8ICAyICstCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2FjdGl2ZS5jICAgICAgICAgIHwgIDQgKystLQogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICAgICB8ICA2ICsrKy0tLQogMTAgZmls ZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0LmMKaW5kZXggNWQ4MjIxYzdiYTgzLi40 ZTMwY2I5NzQ2NDggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dl bV9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2NvbnRl eHQuYwpAQCAtMjA5LDggKzIwOSw4IEBAIHN0YXRpYyBzdHJ1Y3QgaTkxNV9nZW1fZW5naW5lcyAq ZGVmYXVsdF9lbmdpbmVzKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgpCiAJCQlyZXR1cm4g RVJSX0NBU1QoY2UpOwogCQl9CiAKLQkJZS0+ZW5naW5lc1tpZF0gPSBjZTsKLQkJZS0+bnVtX2Vu Z2luZXMgPSBpZCArIDE7CisJCWUtPmVuZ2luZXNbZW5naW5lLT5sZWdhY3lfaWR4XSA9IGNlOwor CQllLT5udW1fZW5naW5lcyA9IGVuZ2luZS0+bGVnYWN5X2lkeCArIDE7CiAJfQogCiAJcmV0dXJu IGU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfY3Mu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV9jcy5jCmluZGV4IDUwNTFh MWZkMjU2NS4uZTkzYjVjNjc5YzRmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9n dC9pbnRlbF9lbmdpbmVfY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9l bmdpbmVfY3MuYwpAQCAtMzMwLDcgKzMzMCwxMCBAQCBzdGF0aWMgaW50IGludGVsX2VuZ2luZV9z ZXR1cChzdHJ1Y3QgaW50ZWxfZ3QgKmd0LCBlbnVtIGludGVsX2VuZ2luZV9pZCBpZCkKIAlndC0+ ZW5naW5lX2NsYXNzW2luZm8tPmNsYXNzXVtpbmZvLT5pbnN0YW5jZV0gPSBlbmdpbmU7CiAKIAlp bnRlbF9lbmdpbmVfYWRkX3VzZXIoZW5naW5lKTsKKwlHRU1fQlVHX09OKGlkID49IEFSUkFZX1NJ WkUoZ3QtPmk5MTUtPmVuZ2luZSkpOwogCWd0LT5pOTE1LT5lbmdpbmVbaWRdID0gZW5naW5lOwor CUdFTV9CVUdfT04oaWQgPj0gQVJSQVlfU0laRShndC0+ZW5naW5lKSk7CisJZ3QtPmVuZ2luZVtp ZF0gPSBlbmdpbmU7CiAKIAlyZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d0L2ludGVsX2VuZ2luZV91c2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9p bnRlbF9lbmdpbmVfdXNlci5jCmluZGV4IDc3Y2Q1ZGU4MzkzMC4uZTlmM2ZiYWE3NGE4IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfdXNlci5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV91c2VyLmMKQEAgLTE4Myw4ICsx ODMsNiBAQCBzdGF0aWMgdm9pZCBhZGRfbGVnYWN5X3Jpbmcoc3RydWN0IGxlZ2FjeV9yaW5nICpy aW5nLAogCWlmICh1bmxpa2VseShpZHggPT0gLTEpKQogCQlyZXR1cm47CiAKLQlHRU1fQlVHX09O KGlkeCA+PSBBUlJBWV9TSVpFKHJpbmctPmd0LT5lbmdpbmUpKTsKLQlyaW5nLT5ndC0+ZW5naW5l W2lkeF0gPSBlbmdpbmU7CiAJcmluZy0+aW5zdGFuY2UrKzsKIAogCWVuZ2luZS0+bGVnYWN5X2lk eCA9IGlkeDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2d0LmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndC5jCmluZGV4IGIzNjE5YTJhNWQwZS4u Yzk5YjZiMmYzOGMyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9n dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2d0LmMKQEAgLTE4Niw3ICsx ODYsNyBAQCBpbnRlbF9ndF9jbGVhcl9lcnJvcl9yZWdpc3RlcnMoc3RydWN0IGludGVsX2d0ICpn dCwKIAkJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOwogCQllbnVtIGludGVsX2VuZ2lu ZV9pZCBpZDsKIAotCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgaTkxNSwgZW5naW5l X21hc2ssIGlkKQorCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QsIGVuZ2luZV9t YXNrLCBpZCkKIAkJCWdlbjhfY2xlYXJfZW5naW5lX2Vycm9yX3JlZ2lzdGVyKGVuZ2luZSk7CiAJ fQogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfaGFuZ2NoZWNr LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9oYW5nY2hlY2suYwppbmRleCBjMTRk YmViM2NjYzMuLmIyYWY3Mzk4NGY5MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv Z3QvaW50ZWxfaGFuZ2NoZWNrLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxf aGFuZ2NoZWNrLmMKQEAgLTIzNyw3ICsyMzcsNyBAQCBzdGF0aWMgdm9pZCBoYW5nY2hlY2tfZGVj bGFyZV9oYW5nKHN0cnVjdCBpbnRlbF9ndCAqZ3QsCiAJCWh1bmcgJj0gfnN0dWNrOwogCWxlbiA9 IHNjbnByaW50Zihtc2csIHNpemVvZihtc2cpLAogCQkJIiVzIG9uICIsIHN0dWNrID09IGh1bmcg PyAibm8gcHJvZ3Jlc3MiIDogImhhbmciKTsKLQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2lu ZSwgZ3QtPmk5MTUsIGh1bmcsIHRtcCkKKwlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwg Z3QsIGh1bmcsIHRtcCkKIAkJbGVuICs9IHNjbnByaW50Zihtc2cgKyBsZW4sIHNpemVvZihtc2cp IC0gbGVuLAogCQkJCSAiJXMsICIsIGVuZ2luZS0+bmFtZSk7CiAJbXNnW2xlbi0yXSA9ICdcMCc7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yZXNldC5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVzZXQuYwppbmRleCA0NzdiZmFmZGIxMDMuLmIx OTFiMDc0NTcwMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVz ZXQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yZXNldC5jCkBAIC0yOTgs NyArMjk4LDcgQEAgc3RhdGljIGludCBnZW42X3Jlc2V0X2VuZ2luZXMoc3RydWN0IGludGVsX2d0 ICpndCwKIAkJaW50ZWxfZW5naW5lX21hc2tfdCB0bXA7CiAKIAkJaHdfbWFzayA9IDA7Ci0JCWZv cl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndC0+aTkxNSwgZW5naW5lX21hc2ssIHRtcCkg eworCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QsIGVuZ2luZV9tYXNrLCB0bXAp IHsKIAkJCUdFTV9CVUdfT04oZW5naW5lLT5pZCA+PSBBUlJBWV9TSVpFKGh3X2VuZ2luZV9tYXNr KSk7CiAJCQlod19tYXNrIHw9IGh3X2VuZ2luZV9tYXNrW2VuZ2luZS0+aWRdOwogCQl9CkBAIC00 MzIsNyArNDMyLDcgQEAgc3RhdGljIGludCBnZW4xMV9yZXNldF9lbmdpbmVzKHN0cnVjdCBpbnRl bF9ndCAqZ3QsCiAJCWh3X21hc2sgPSBHRU4xMV9HUkRPTV9GVUxMOwogCX0gZWxzZSB7CiAJCWh3 X21hc2sgPSAwOwotCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QtPmk5MTUsIGVu Z2luZV9tYXNrLCB0bXApIHsKKwkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LCBl bmdpbmVfbWFzaywgdG1wKSB7CiAJCQlHRU1fQlVHX09OKGVuZ2luZS0+aWQgPj0gQVJSQVlfU0la RShod19lbmdpbmVfbWFzaykpOwogCQkJaHdfbWFzayB8PSBod19lbmdpbmVfbWFza1tlbmdpbmUt PmlkXTsKIAkJCXJldCA9IGdlbjExX2xvY2tfc2ZjKGVuZ2luZSwgJmh3X21hc2spOwpAQCAtNDUx LDcgKzQ1MSw3IEBAIHN0YXRpYyBpbnQgZ2VuMTFfcmVzZXRfZW5naW5lcyhzdHJ1Y3QgaW50ZWxf Z3QgKmd0LAogCSAqIGV4cGlyYXRpb24pLgogCSAqLwogCWlmIChlbmdpbmVfbWFzayAhPSBBTExf RU5HSU5FUykKLQkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LT5pOTE1LCBlbmdp bmVfbWFzaywgdG1wKQorCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QsIGVuZ2lu ZV9tYXNrLCB0bXApCiAJCQlnZW4xMV91bmxvY2tfc2ZjKGVuZ2luZSk7CiAKIAlyZXR1cm4gcmV0 OwpAQCAtNTEwLDcgKzUxMCw3IEBAIHN0YXRpYyBpbnQgZ2VuOF9yZXNldF9lbmdpbmVzKHN0cnVj dCBpbnRlbF9ndCAqZ3QsCiAJaW50ZWxfZW5naW5lX21hc2tfdCB0bXA7CiAJaW50IHJldDsKIAot CWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndC0+aTkxNSwgZW5naW5lX21hc2ssIHRt cCkgeworCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndCwgZW5naW5lX21hc2ssIHRt cCkgewogCQlyZXQgPSBnZW44X2VuZ2luZV9yZXNldF9wcmVwYXJlKGVuZ2luZSk7CiAJCWlmIChy ZXQgJiYgIXJlc2V0X25vbl9yZWFkeSkKIAkJCWdvdG8gc2tpcF9yZXNldDsKQEAgLTUzNiw3ICs1 MzYsNyBAQCBzdGF0aWMgaW50IGdlbjhfcmVzZXRfZW5naW5lcyhzdHJ1Y3QgaW50ZWxfZ3QgKmd0 LAogCQlyZXQgPSBnZW42X3Jlc2V0X2VuZ2luZXMoZ3QsIGVuZ2luZV9tYXNrLCByZXRyeSk7CiAK IHNraXBfcmVzZXQ6Ci0JZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LT5pOTE1LCBl bmdpbmVfbWFzaywgdG1wKQorCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndCwgZW5n aW5lX21hc2ssIHRtcCkKIAkJZ2VuOF9lbmdpbmVfcmVzZXRfY2FuY2VsKGVuZ2luZSk7CiAKIAly ZXR1cm4gcmV0OwpAQCAtMTIwNiw3ICsxMjA2LDcgQEAgdm9pZCBpbnRlbF9ndF9oYW5kbGVfZXJy b3Ioc3RydWN0IGludGVsX2d0ICpndCwKIAkgKiBzaW5nbGUgcmVzZXQgZmFpbHMuCiAJICovCiAJ aWYgKGludGVsX2hhc19yZXNldF9lbmdpbmUoZ3QpICYmICFpbnRlbF9ndF9pc193ZWRnZWQoZ3Qp KSB7Ci0JCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndC0+aTkxNSwgZW5naW5lX21h c2ssIHRtcCkgeworCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QsIGVuZ2luZV9t YXNrLCB0bXApIHsKIAkJCUJVSUxEX0JVR19PTihJOTE1X1JFU0VUX01PREVTRVQgPj0gSTkxNV9S RVNFVF9FTkdJTkUpOwogCQkJaWYgKHRlc3RfYW5kX3NldF9iaXQoSTkxNV9SRVNFVF9FTkdJTkUg KyBlbmdpbmUtPmlkLAogCQkJCQkgICAgICZndC0+cmVzZXQuZmxhZ3MpKQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2V4ZWNsaXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndnQvZXhlY2xpc3QuYwppbmRleCBmMjFiOGZiNWIzN2UuLmQ2ZTdhMTE4OWJhZCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2V4ZWNsaXN0LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ3Z0L2V4ZWNsaXN0LmMKQEAgLTUzNCw3ICs1MzQsNyBAQCBzdGF0aWMgdm9p ZCBjbGVhbl9leGVjbGlzdChzdHJ1Y3QgaW50ZWxfdmdwdSAqdmdwdSwKIAlzdHJ1Y3QgaW50ZWxf dmdwdV9zdWJtaXNzaW9uICpzID0gJnZncHUtPnN1Ym1pc3Npb247CiAJaW50ZWxfZW5naW5lX21h c2tfdCB0bXA7CiAKLQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZGV2X3ByaXYsIGVu Z2luZV9tYXNrLCB0bXApIHsKKwlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgJmRldl9w cml2LT5ndCwgZW5naW5lX21hc2ssIHRtcCkgewogCQlrZnJlZShzLT5yaW5nX3NjYW5fYnVmZmVy W2VuZ2luZS0+aWRdKTsKIAkJcy0+cmluZ19zY2FuX2J1ZmZlcltlbmdpbmUtPmlkXSA9IE5VTEw7 CiAJCXMtPnJpbmdfc2Nhbl9idWZmZXJfc2l6ZVtlbmdpbmUtPmlkXSA9IDA7CkBAIC01NDgsNyAr NTQ4LDcgQEAgc3RhdGljIHZvaWQgcmVzZXRfZXhlY2xpc3Qoc3RydWN0IGludGVsX3ZncHUgKnZn cHUsCiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOwogCWludGVsX2VuZ2luZV9tYXNr X3QgdG1wOwogCi0JZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGRldl9wcml2LCBlbmdp bmVfbWFzaywgdG1wKQorCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCAmZGV2X3ByaXYt Pmd0LCBlbmdpbmVfbWFzaywgdG1wKQogCQlpbml0X3ZncHVfZXhlY2xpc3QodmdwdSwgZW5naW5l LT5pZCk7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9zY2hlZHVs ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9zY2hlZHVsZXIuYwppbmRleCA2ODUwZjFm NDAyNDEuLjllYmIyNTM0NTU4YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0 L3NjaGVkdWxlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9zY2hlZHVsZXIuYwpA QCAtODg3LDcgKzg4Nyw3IEBAIHZvaWQgaW50ZWxfdmdwdV9jbGVhbl93b3JrbG9hZHMoc3RydWN0 IGludGVsX3ZncHUgKnZncHUsCiAJaW50ZWxfZW5naW5lX21hc2tfdCB0bXA7CiAKIAkvKiBmcmVl IHRoZSB1bnN1Ym1pdGVkIHdvcmtsb2FkcyBpbiB0aGUgcXVldWVzLiAqLwotCWZvcl9lYWNoX2Vu Z2luZV9tYXNrZWQoZW5naW5lLCBkZXZfcHJpdiwgZW5naW5lX21hc2ssIHRtcCkgeworCWZvcl9l YWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCAmZGV2X3ByaXYtPmd0LCBlbmdpbmVfbWFzaywgdG1w KSB7CiAJCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShwb3MsIG4sCiAJCQkmcy0+d29ya2xvYWRf cV9oZWFkW2VuZ2luZS0+aWRdLCBsaXN0KSB7CiAJCQlsaXN0X2RlbF9pbml0KCZwb3MtPmxpc3Qp OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9hY3RpdmUuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfYWN0aXZlLmMKaW5kZXggYWEzN2MwNzAwNGI5Li43OTI3YjFh MGM3YTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfYWN0aXZlLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9hY3RpdmUuYwpAQCAtNTkwLDggKzU5MCw4IEBA IHN0YXRpYyBzdHJ1Y3QgYWN0aXZlX25vZGUgKnJldXNlX2lkbGVfYmFycmllcihzdHJ1Y3QgaTkx NV9hY3RpdmUgKnJlZiwgdTY0IGlkeCkKIGludCBpOTE1X2FjdGl2ZV9hY3F1aXJlX3ByZWFsbG9j YXRlX2JhcnJpZXIoc3RydWN0IGk5MTVfYWN0aXZlICpyZWYsCiAJCQkJCSAgICBzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICplbmdpbmUpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUg PSBlbmdpbmUtPmk5MTU7CiAJaW50ZWxfZW5naW5lX21hc2tfdCB0bXAsIG1hc2sgPSBlbmdpbmUt Pm1hc2s7CisJc3RydWN0IGludGVsX2d0ICpndCA9IGVuZ2luZS0+Z3Q7CiAJc3RydWN0IGxsaXN0 X25vZGUgKnBvcywgKm5leHQ7CiAJaW50IGVycjsKIApAQCAtNjAzLDcgKzYwMyw3IEBAIGludCBp OTE1X2FjdGl2ZV9hY3F1aXJlX3ByZWFsbG9jYXRlX2JhcnJpZXIoc3RydWN0IGk5MTVfYWN0aXZl ICpyZWYsCiAJICogV2UgY2FuIHRoZW4gdXNlIHRoZSBwcmVhbGxvY2F0ZWQgbm9kZXMgaW4KIAkg KiBpOTE1X2FjdGl2ZV9hY3F1aXJlX2JhcnJpZXIoKQogCSAqLwotCWZvcl9lYWNoX2VuZ2luZV9t YXNrZWQoZW5naW5lLCBpOTE1LCBtYXNrLCB0bXApIHsKKwlmb3JfZWFjaF9lbmdpbmVfbWFza2Vk KGVuZ2luZSwgZ3QsIG1hc2ssIHRtcCkgewogCQl1NjQgaWR4ID0gZW5naW5lLT5rZXJuZWxfY29u dGV4dC0+dGltZWxpbmUtPmZlbmNlX2NvbnRleHQ7CiAJCXN0cnVjdCBhY3RpdmVfbm9kZSAqbm9k ZTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggODg5NTZmMzdkOTZjLi40MGU5MjNiMGMy YzggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTQxNSwxMCArMTQxNSwxMCBAQCBzdGF0 aWMgaW5saW5lIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpwZGV2X3RvX2k5MTUoc3RydWN0IHBj aV9kZXYgKnBkZXYpCiAJCWZvcl9lYWNoX2lmICgoZW5naW5lX18pID0gKGRldl9wcml2X18pLT5l bmdpbmVbKGlkX18pXSkKIAogLyogSXRlcmF0b3Igb3ZlciBzdWJzZXQgb2YgZW5naW5lcyBzZWxl Y3RlZCBieSBtYXNrICovCi0jZGVmaW5lIGZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lX18s IGRldl9wcml2X18sIG1hc2tfXywgdG1wX18pIFwKLQlmb3IgKCh0bXBfXykgPSAobWFza19fKSAm IElOVEVMX0lORk8oZGV2X3ByaXZfXyktPmVuZ2luZV9tYXNrOyBcCisjZGVmaW5lIGZvcl9lYWNo X2VuZ2luZV9tYXNrZWQoZW5naW5lX18sIGd0X18sIG1hc2tfXywgdG1wX18pIFwKKwlmb3IgKCh0 bXBfXykgPSAobWFza19fKSAmIElOVEVMX0lORk8oKGd0X18pLT5pOTE1KS0+ZW5naW5lX21hc2s7 IFwKIAkgICAgICh0bXBfXykgPyBcCi0JICAgICAoKGVuZ2luZV9fKSA9IChkZXZfcHJpdl9fKS0+ ZW5naW5lW19fbWFza19uZXh0X2JpdCh0bXBfXyldKSwgMSA6IFwKKwkgICAgICgoZW5naW5lX18p ID0gKGd0X18pLT5lbmdpbmVbX19tYXNrX25leHRfYml0KHRtcF9fKV0pLCAxIDogXAogCSAgICAg MDspCiAKICNkZWZpbmUgcmJfdG9fdWFiaV9lbmdpbmUocmIpIFwKLS0gCjIuMjAuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4