From mboxrd@z Thu Jan 1 00:00:00 1970 From: yu.dai@intel.com Subject: [PATCH] drm/i915/guc: Decouple GuC engine id from ring id Date: Fri, 22 Jan 2016 15:06:28 -0800 Message-ID: <1453503988-6866-1-git-send-email-yu.dai@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id E27916ECF8 for ; Fri, 22 Jan 2016 15:10:33 -0800 (PST) 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: daniel.vetter@ffwll.ch List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQWxleCBEYWkgPHl1LmRhaUBpbnRlbC5jb20+CgpQcmV2aW91c2x5IEd1QyB1c2VzIHJp bmcgaWQgYXMgZW5naW5lIGlkIGJlY2F1c2Ugb2Ygc2FtZSBkZWZpbml0aW9uLgpCdXQgdGhpcyBp cyBub3QgdHJ1ZSBzaW5jZSB0aGlzIGNvbW1pdDoKCmNvbW1pdCBkZTFhZGQzNjA1MjJjODc2YzI1 ZWYyYmJiYmFiMWM5NGJkYjUwOWFiCkF1dGhvcjogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1 bGluQGludGVsLmNvbT4KRGF0ZTogICBGcmkgSmFuIDE1IDE1OjEyOjUwIDIwMTYgKzAwMDAKCiAg ICBkcm0vaTkxNTogRGVjb3VwbGUgZXhlY2J1ZiB1QVBJIGZyb20gaW50ZXJuYWwgaW1wbGVtZW50 YXRpb24KCkFkZGVkIEd1QyBlbmdpbmUgaWQgaW50byBHdUMgaW50ZXJmYWNlIHRvIGRlY291cGxl IGl0IGZyb20gcmluZyBpZCB1c2VkCmJ5IGRyaXZlci4KClNpZ25lZC1vZmYtYnk6IEFsZXggRGFp IDx5dS5kYWlAaW50ZWwuY29tPgoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKaW5kZXgg YzVkYjIzNS4uOWE0ZTAxZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k ZWJ1Z2ZzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKQEAgLTI0 NDYsNyArMjQ0Niw2IEBAIHN0YXRpYyB2b2lkIGk5MTVfZ3VjX2NsaWVudF9pbmZvKHN0cnVjdCBz ZXFfZmlsZSAqbSwKIAkJCQkgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJ CSBzdHJ1Y3QgaTkxNV9ndWNfY2xpZW50ICpjbGllbnQpCiB7Ci0Jc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqcmluZzsKIAl1aW50NjRfdCB0b3QgPSAwOwogCXVpbnQzMl90IGk7CiAKQEAgLTI0NjEs MTAgKzI0NjAsOSBAQCBzdGF0aWMgdm9pZCBpOTE1X2d1Y19jbGllbnRfaW5mbyhzdHJ1Y3Qgc2Vx X2ZpbGUgKm0sCiAJc2VxX3ByaW50ZihtLCAiXHRGYWlsZWQgZG9vcmJlbGw6ICV1XG4iLCBjbGll bnQtPmJfZmFpbCk7CiAJc2VxX3ByaW50ZihtLCAiXHRMYXN0IHN1Ym1pc3Npb24gcmVzdWx0OiAl ZFxuIiwgY2xpZW50LT5yZXRjb2RlKTsKIAotCWZvcl9lYWNoX3JpbmcocmluZywgZGV2X3ByaXYs IGkpIHsKLQkJc2VxX3ByaW50ZihtLCAiXHRTdWJtaXNzaW9uczogJWxsdSAlc1xuIiwKLQkJCQlj bGllbnQtPnN1Ym1pc3Npb25zW2ldLAotCQkJCXJpbmctPm5hbWUpOworCWZvciAoaSA9IEdVQ19S RU5ERVJfRU5HSU5FOyBpIDwgR1VDX01BWF9FTkdJTkVTX05VTTsgaSsrKSB7CisJCXNlcV9wcmlu dGYobSwgIlx0U3VibWlzc2lvbnM6ICVsbHUsIGVuZ2luZSAlZFxuIiwKKwkJCQljbGllbnQtPnN1 Ym1pc3Npb25zW2ldLCBpKTsKIAkJdG90ICs9IGNsaWVudC0+c3VibWlzc2lvbnNbaV07CiAJfQog CXNlcV9wcmludGYobSwgIlx0VG90YWw6ICVsbHVcbiIsIHRvdCk7CkBAIC0yNDc3LDcgKzI0NzUs NiBAQCBzdGF0aWMgaW50IGk5MTVfZ3VjX2luZm8oc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpk YXRhKQogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZh dGU7CiAJc3RydWN0IGludGVsX2d1YyBndWM7CiAJc3RydWN0IGk5MTVfZ3VjX2NsaWVudCBjbGll bnQgPSB7fTsKLQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOwogCWVudW0gaW50ZWxfcmlu Z19pZCBpOwogCXU2NCB0b3RhbCA9IDA7CiAKQEAgLTI1MDEsOSArMjQ5OCw5IEBAIHN0YXRpYyBp bnQgaTkxNV9ndWNfaW5mbyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEpCiAJc2VxX3By aW50ZihtLCAiR3VDIGxhc3QgYWN0aW9uIGVycm9yIGNvZGU6ICVkXG4iLCBndWMuYWN0aW9uX2Vy cik7CiAKIAlzZXFfcHJpbnRmKG0sICJcbkd1QyBzdWJtaXNzaW9uczpcbiIpOwotCWZvcl9lYWNo X3JpbmcocmluZywgZGV2X3ByaXYsIGkpIHsKLQkJc2VxX3ByaW50ZihtLCAiXHQlLTI0czogJTEw bGx1LCBsYXN0IHNlcW5vIDB4JTA4eCAlOWRcbiIsCi0JCQlyaW5nLT5uYW1lLCBndWMuc3VibWlz c2lvbnNbaV0sCisJZm9yIChpID0gR1VDX1JFTkRFUl9FTkdJTkU7IGkgPCBHVUNfTUFYX0VOR0lO RVNfTlVNOyBpKyspIHsKKwkJc2VxX3ByaW50ZihtLCAiXHRlbmdpbmUgJWQ6ICUxMGxsdSwgbGFz dCBzZXFubyAweCUwOHggJTlkXG4iLAorCQkJaSwgZ3VjLnN1Ym1pc3Npb25zW2ldLAogCQkJZ3Vj Lmxhc3Rfc2Vxbm9baV0sIGd1Yy5sYXN0X3NlcW5vW2ldKTsKIAkJdG90YWwgKz0gZ3VjLnN1Ym1p c3Npb25zW2ldOwogCX0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3Vj X3N1Ym1pc3Npb24uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3VjX3N1Ym1pc3Npb24u YwppbmRleCA1MWFlNWMxLi42MDFlMmM4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n dWNfc3VibWlzc2lvbi5jCkBAIC0zNjUsNiArMzY1LDE0IEBAIHN0YXRpYyB2b2lkIGd1Y19pbml0 X3Byb2NfZGVzYyhzdHJ1Y3QgaW50ZWxfZ3VjICpndWMsCiAJa3VubWFwX2F0b21pYyhiYXNlKTsK IH0KIAorc3RhdGljIGNvbnN0IGVudW0gaW50ZWxfcmluZ19pZCBndWNfZW5naW5lX21hcFtHVUNf TUFYX0VOR0lORVNfTlVNXSA9IHsKKwlbR1VDX1JFTkRFUl9FTkdJTkVdID0gUkNTLAorCVtHVUNf VklERU9fRU5HSU5FXSA9IFZDUywKKwlbR1VDX0JMSVRURVJfRU5HSU5FXSA9IEJDUywKKwlbR1VD X1ZJREVPRU5IQU5DRV9FTkdJTkVdID0gVkVDUywKKwlbR1VDX1ZJREVPX0VOR0lORTJdID0gVkNT MgorfTsKKwogLyoKICAqIEluaXRpYWxpc2UvY2xlYXIgdGhlIGNvbnRleHQgZGVzY3JpcHRvciBz aGFyZWQgd2l0aCB0aGUgR3VDIGZpcm13YXJlLgogICoKQEAgLTM4OCw5ICszOTYsMTAgQEAgc3Rh dGljIHZvaWQgZ3VjX2luaXRfY3R4X2Rlc2Moc3RydWN0IGludGVsX2d1YyAqZ3VjLAogCWRlc2Mu cHJpb3JpdHkgPSBjbGllbnQtPnByaW9yaXR5OwogCWRlc2MuZGJfaWQgPSBjbGllbnQtPmRvb3Ji ZWxsX2lkOwogCi0JZm9yIChpID0gMDsgaSA8IEk5MTVfTlVNX1JJTkdTOyBpKyspIHsKKwlmb3Ig KGkgPSBHVUNfUkVOREVSX0VOR0lORTsgaSA8IEdVQ19NQVhfRU5HSU5FU19OVU07IGkrKykgewog CQlzdHJ1Y3QgZ3VjX2V4ZWNsaXN0X2NvbnRleHQgKmxyYyA9ICZkZXNjLmxyY1tpXTsKLQkJc3Ry dWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdidWYgPSBjdHgtPmVuZ2luZVtpXS5yaW5nYnVmOwor CQllbnVtIGludGVsX3JpbmdfaWQgcmluZ19pZCA9IGd1Y19lbmdpbmVfbWFwW2ldOworCQlzdHJ1 Y3QgaW50ZWxfcmluZ2J1ZmZlciAqcmluZ2J1ZiA9IGN0eC0+ZW5naW5lW3JpbmdfaWRdLnJpbmdi dWY7CiAJCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CiAJCXN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmo7CiAJCXVpbnQ2NF90IGN0eF9kZXNjOwpAQCAtNDAyLDcgKzQxMSw3IEBA IHN0YXRpYyB2b2lkIGd1Y19pbml0X2N0eF9kZXNjKHN0cnVjdCBpbnRlbF9ndWMgKmd1YywKIAkJ ICogZm9yIG5vdyB3aG8gb3ducyBhIEd1QyBjbGllbnQuIEJ1dCBmb3IgZnV0dXJlIG93bmVyIG9m IEd1QwogCQkgKiBjbGllbnQsIG5lZWQgdG8gbWFrZSBzdXJlIGxyYyBpcyBwaW5uZWQgcHJpb3Ig dG8gZW50ZXIgaGVyZS4KIAkJICovCi0JCW9iaiA9IGN0eC0+ZW5naW5lW2ldLnN0YXRlOworCQlv YmogPSBjdHgtPmVuZ2luZVtyaW5nX2lkXS5zdGF0ZTsKIAkJaWYgKCFvYmopCiAJCQlicmVhazsJ LyogWFhYOiBjb250aW51ZT8gKi8KIApAQCAtNDE0LDcgKzQyMyw3IEBAIHN0YXRpYyB2b2lkIGd1 Y19pbml0X2N0eF9kZXNjKHN0cnVjdCBpbnRlbF9ndWMgKmd1YywKIAkJbHJjLT5yaW5nX2xjcmEg PSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQob2JqKSArCiAJCQkJTFJDX1NUQVRFX1BOICogUEFH RV9TSVpFOwogCQlscmMtPmNvbnRleHRfaWQgPSAoY2xpZW50LT5jdHhfaW5kZXggPDwgR1VDX0VM Q19DVFhJRF9PRkZTRVQpIHwKLQkJCQkocmluZy0+aWQgPDwgR1VDX0VMQ19FTkdJTkVfT0ZGU0VU KTsKKwkJCQkoaSA8PCBHVUNfRUxDX0VOR0lORV9PRkZTRVQpOwogCiAJCW9iaiA9IHJpbmdidWYt Pm9iajsKIApAQCAtNDIzLDcgKzQzMiw3IEBAIHN0YXRpYyB2b2lkIGd1Y19pbml0X2N0eF9kZXNj KHN0cnVjdCBpbnRlbF9ndWMgKmd1YywKIAkJbHJjLT5yaW5nX25leHRfZnJlZV9sb2NhdGlvbiA9 IGxyYy0+cmluZ19iZWdpbjsKIAkJbHJjLT5yaW5nX2N1cnJlbnRfdGFpbF9wb2ludGVyX3ZhbHVl ID0gMDsKIAotCQlkZXNjLmVuZ2luZXNfdXNlZCB8PSAoMSA8PCByaW5nLT5pZCk7CisJCWRlc2Mu ZW5naW5lc191c2VkIHw9ICgxIDw8IGkpOwogCX0KIAogCVdBUk5fT04oZGVzYy5lbmdpbmVzX3Vz ZWQgPT0gMCk7CkBAIC01MTAsNyArNTE5LDYgQEAgaW50IGk5MTVfZ3VjX3dxX2NoZWNrX3NwYWNl KHN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmdjKQogc3RhdGljIGludCBndWNfYWRkX3dvcmtxdWV1 ZV9pdGVtKHN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmdjLAogCQkJCSAgc3RydWN0IGRybV9pOTE1 X2dlbV9yZXF1ZXN0ICpycSkKIHsKLQllbnVtIGludGVsX3JpbmdfaWQgcmluZ19pZCA9IHJxLT5y aW5nLT5pZDsKIAlzdHJ1Y3QgZ3VjX3dxX2l0ZW0gKndxaTsKIAl2b2lkICpiYXNlOwogCXUzMiB0 YWlsLCB3cV9sZW4sIHdxX29mZiwgc3BhY2U7CkBAIC01NDQsNyArNTUyLDcgQEAgc3RhdGljIGlu dCBndWNfYWRkX3dvcmtxdWV1ZV9pdGVtKHN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmdjLAogCXdx X2xlbiA9IHNpemVvZihzdHJ1Y3QgZ3VjX3dxX2l0ZW0pIC8gc2l6ZW9mKHUzMikgLSAxOwogCXdx aS0+aGVhZGVyID0gV1FfVFlQRV9JTk9SREVSIHwKIAkJCSh3cV9sZW4gPDwgV1FfTEVOX1NISUZU KSB8Ci0JCQkocmluZ19pZCA8PCBXUV9UQVJHRVRfU0hJRlQpIHwKKwkJCShycS0+cmluZy0+Z3Vj X2VuZ2luZV9pZCA8PCBXUV9UQVJHRVRfU0hJRlQpIHwKIAkJCVdRX05PX1dDRkxVU0hfV0FJVDsK IAogCS8qIFRoZSBHdUMgd2FudHMgb25seSB0aGUgbG93LW9yZGVyIHdvcmQgb2YgdGhlIGNvbnRl eHQgZGVzY3JpcHRvciAqLwpAQCAtNTk0LDcgKzYwMiw3IEBAIGludCBpOTE1X2d1Y19zdWJtaXQo c3RydWN0IGk5MTVfZ3VjX2NsaWVudCAqY2xpZW50LAogCQkgICAgc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpycSkKIHsKIAlzdHJ1Y3QgaW50ZWxfZ3VjICpndWMgPSBjbGllbnQtPmd1YzsK LQllbnVtIGludGVsX3JpbmdfaWQgcmluZ19pZCA9IHJxLT5yaW5nLT5pZDsKKwl1bnNpZ25lZCBp bnQgZW5naW5lX2lkID0gcnEtPnJpbmctPmd1Y19lbmdpbmVfaWQ7CiAJaW50IHFfcmV0LCBiX3Jl dDsKIAogCS8qIE5lZWQgdGhpcyBiZWNhdXNlIG9mIHRoZSBkZWZlcnJlZCBwaW4gY3R4IGFuZCBy aW5nICovCkBAIC02MDUsNyArNjEzLDcgQEAgaW50IGk5MTVfZ3VjX3N1Ym1pdChzdHJ1Y3QgaTkx NV9ndWNfY2xpZW50ICpjbGllbnQsCiAJaWYgKHFfcmV0ID09IDApCiAJCWJfcmV0ID0gZ3VjX3Jp bmdfZG9vcmJlbGwoY2xpZW50KTsKIAotCWNsaWVudC0+c3VibWlzc2lvbnNbcmluZ19pZF0gKz0g MTsKKwljbGllbnQtPnN1Ym1pc3Npb25zW2VuZ2luZV9pZF0gKz0gMTsKIAlpZiAocV9yZXQpIHsK IAkJY2xpZW50LT5xX2ZhaWwgKz0gMTsKIAkJY2xpZW50LT5yZXRjb2RlID0gcV9yZXQ7CkBAIC02 MTUsOCArNjIzLDggQEAgaW50IGk5MTVfZ3VjX3N1Ym1pdChzdHJ1Y3QgaTkxNV9ndWNfY2xpZW50 ICpjbGllbnQsCiAJfSBlbHNlIHsKIAkJY2xpZW50LT5yZXRjb2RlID0gMDsKIAl9Ci0JZ3VjLT5z dWJtaXNzaW9uc1tyaW5nX2lkXSArPSAxOwotCWd1Yy0+bGFzdF9zZXFub1tyaW5nX2lkXSA9IHJx LT5zZXFubzsKKwlndWMtPnN1Ym1pc3Npb25zW2VuZ2luZV9pZF0gKz0gMTsKKwlndWMtPmxhc3Rf c2Vxbm9bZW5naW5lX2lkXSA9IHJxLT5zZXFubzsKIAogCXJldHVybiBxX3JldDsKIH0KQEAgLTg0 OCw3ICs4NTYsNyBAQCBzdGF0aWMgdm9pZCBpbml0X2d1Y19wb2xpY2llcyhzdHJ1Y3QgZ3VjX3Bv bGljaWVzICpwb2xpY2llcykKIAlwb2xpY2llcy0+bWF4X251bV93b3JrX2l0ZW1zID0gUE9MSUNZ X01BWF9OVU1fV0k7CiAKIAlmb3IgKHAgPSAwOyBwIDwgR1VDX0NUWF9QUklPUklUWV9OVU07IHAr KykgewotCQlmb3IgKGkgPSAwOyBpIDwgSTkxNV9OVU1fUklOR1M7IGkrKykgeworCQlmb3IgKGkg PSBHVUNfUkVOREVSX0VOR0lORTsgaSA8IEdVQ19NQVhfRU5HSU5FU19OVU07IGkrKykgewogCQkJ cG9saWN5ID0gJnBvbGljaWVzLT5wb2xpY3lbcF1baV07CiAKIAkJCXBvbGljeS0+ZXhlY3V0aW9u X3F1YW50dW0gPSAxMDAwMDAwOwpAQCAtOTAwLDcgKzkwOCw4IEBAIHN0YXRpYyB2b2lkIGd1Y19j cmVhdGVfYWRzKHN0cnVjdCBpbnRlbF9ndWMgKmd1YykKIAlhZHMtPmdvbGRlbl9jb250ZXh0X2xy Y2EgPSByaW5nLT5zdGF0dXNfcGFnZS5nZnhfYWRkcjsKIAogCWZvcl9lYWNoX3JpbmcocmluZywg ZGV2X3ByaXYsIGkpCi0JCWFkcy0+ZW5nX3N0YXRlX3NpemVbaV0gPSBpbnRlbF9scl9jb250ZXh0 X3NpemUocmluZyk7CisJCWFkcy0+ZW5nX3N0YXRlX3NpemVbcmluZy0+Z3VjX2VuZ2luZV9pZF0g PQorCQkJCWludGVsX2xyX2NvbnRleHRfc2l6ZShyaW5nKTsKIAogCS8qIEd1QyBzY2hlZHVsaW5n IHBvbGljaWVzICovCiAJcG9saWNpZXMgPSAodm9pZCAqKWFkcyArIHNpemVvZihzdHJ1Y3QgZ3Vj X2Fkcyk7CkBAIC05MTIsMTIgKzkyMSwxMiBAQCBzdGF0aWMgdm9pZCBndWNfY3JlYXRlX2Fkcyhz dHJ1Y3QgaW50ZWxfZ3VjICpndWMpCiAJLyogTU1JTyByZWcgc3RhdGUgKi8KIAlyZWdfc3RhdGUg PSAodm9pZCAqKXBvbGljaWVzICsgc2l6ZW9mKHN0cnVjdCBndWNfcG9saWNpZXMpOwogCi0JZm9y IChpID0gMDsgaSA8IEk5MTVfTlVNX1JJTkdTOyBpKyspIHsKLQkJcmVnX3N0YXRlLT5tbWlvX3do aXRlX2xpc3RbaV0ubW1pb19zdGFydCA9CisJZm9yX2VhY2hfcmluZyhyaW5nLCBkZXZfcHJpdiwg aSkgeworCQlyZWdfc3RhdGUtPm1taW9fd2hpdGVfbGlzdFtyaW5nLT5ndWNfZW5naW5lX2lkXS5t bWlvX3N0YXJ0ID0KIAkJCWRldl9wcml2LT5yaW5nW2ldLm1taW9fYmFzZSArIEdVQ19NTUlPX1dI SVRFX0xJU1RfU1RBUlQ7CiAKIAkJLyogTm90aGluZyB0byBiZSBzYXZlZCBvciByZXN0b3JlZCBm b3Igbm93LiAqLwotCQlyZWdfc3RhdGUtPm1taW9fd2hpdGVfbGlzdFtpXS5jb3VudCA9IDA7CisJ CXJlZ19zdGF0ZS0+bW1pb193aGl0ZV9saXN0W3JpbmctPmd1Y19lbmdpbmVfaWRdLmNvdW50ID0g MDsKIAl9CiAKIAlhZHMtPnJlZ19zdGF0ZV9hZGRyID0gYWRzLT5zY2hlZHVsZXJfcG9saWNpZXMg KwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaAppbmRleCAwNDViMTQ5Li43MzAwMmU5IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9ndWMuaApAQCAtNDYsNyArNDYsNyBAQCBzdHJ1Y3QgaTkxNV9ndWNfY2xp ZW50IHsKIAl1aW50MzJfdCB3cV9oZWFkOwogCiAJLyogR3VDIHN1Ym1pc3Npb24gc3RhdGlzdGlj cyAmIHN0YXR1cyAqLwotCXVpbnQ2NF90IHN1Ym1pc3Npb25zW0k5MTVfTlVNX1JJTkdTXTsKKwl1 aW50NjRfdCBzdWJtaXNzaW9uc1tHVUNfTUFYX0VOR0lORVNfTlVNXTsKIAl1aW50MzJfdCBxX2Zh aWw7CiAJdWludDMyX3QgYl9mYWlsOwogCWludCByZXRjb2RlOwpAQCAtMTA2LDggKzEwNiw4IEBA IHN0cnVjdCBpbnRlbF9ndWMgewogCXVpbnQzMl90IGFjdGlvbl9mYWlsOwkJLyogVG90YWwgbnVt YmVyIG9mIGZhaWx1cmVzCSovCiAJaW50MzJfdCBhY3Rpb25fZXJyOwkJLyogTGFzdCBlcnJvciBj b2RlCQkqLwogCi0JdWludDY0X3Qgc3VibWlzc2lvbnNbSTkxNV9OVU1fUklOR1NdOwotCXVpbnQz Ml90IGxhc3Rfc2Vxbm9bSTkxNV9OVU1fUklOR1NdOworCXVpbnQ2NF90IHN1Ym1pc3Npb25zW0dV Q19NQVhfRU5HSU5FU19OVU1dOworCXVpbnQzMl90IGxhc3Rfc2Vxbm9bR1VDX01BWF9FTkdJTkVT X05VTV07CiB9OwogCiAvKiBpbnRlbF9ndWNfbG9hZGVyLmMgKi8KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Y19md2lmLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9ndWNfZndpZi5oCmluZGV4IDE4NTZhNDcuLjJkZTU3ZmYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Y19md2lmLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZ3VjX2Z3aWYuaApAQCAtNDQsNiArNDQsMTMgQEAKICNkZWZpbmUgR1VDX01BWF9H UFVfQ09OVEVYVFMJCTEwMjQKICNkZWZpbmUJR1VDX0lOVkFMSURfQ1RYX0lECQlHVUNfTUFYX0dQ VV9DT05URVhUUwogCisjZGVmaW5lIEdVQ19SRU5ERVJfRU5HSU5FCQkwCisjZGVmaW5lIEdVQ19W SURFT19FTkdJTkUJCTEKKyNkZWZpbmUgR1VDX0JMSVRURVJfRU5HSU5FCQkyCisjZGVmaW5lIEdV Q19WSURFT0VOSEFOQ0VfRU5HSU5FCQkzCisjZGVmaW5lIEdVQ19WSURFT19FTkdJTkUyCQk0Cisj ZGVmaW5lIEdVQ19NQVhfRU5HSU5FU19OVU0JCShHVUNfVklERU9fRU5HSU5FMiArIDEpCisKIC8q IFdvcmsgcXVldWUgaXRlbSBoZWFkZXIgZGVmaW5pdGlvbnMgKi8KICNkZWZpbmUgV1FfU1RBVFVT X0FDVElWRQkJMQogI2RlZmluZSBXUV9TVEFUVVNfU1VTUEVOREVECQkyCkBAIC0yODUsNyArMjky LDcgQEAgc3RydWN0IGd1Y19jb250ZXh0X2Rlc2MgewogCXU2NCBkYl90cmlnZ2VyX3BoeTsKIAl1 MTYgZGJfaWQ7CiAKLQlzdHJ1Y3QgZ3VjX2V4ZWNsaXN0X2NvbnRleHQgbHJjW0k5MTVfTlVNX1JJ TkdTXTsKKwlzdHJ1Y3QgZ3VjX2V4ZWNsaXN0X2NvbnRleHQgbHJjW0dVQ19NQVhfRU5HSU5FU19O VU1dOwogCiAJdTggYXR0cmlidXRlOwogCkBAIC0zNDQsNyArMzUxLDcgQEAgc3RydWN0IGd1Y19w b2xpY3kgewogfSBfX3BhY2tlZDsKIAogc3RydWN0IGd1Y19wb2xpY2llcyB7Ci0Jc3RydWN0IGd1 Y19wb2xpY3kgcG9saWN5W0dVQ19DVFhfUFJJT1JJVFlfTlVNXVtJOTE1X05VTV9SSU5HU107CisJ c3RydWN0IGd1Y19wb2xpY3kgcG9saWN5W0dVQ19DVFhfUFJJT1JJVFlfTlVNXVtHVUNfTUFYX0VO R0lORVNfTlVNXTsKIAogCS8qIEluIG1pY3JvIHNlY29uZHMuIEhvdyBtdWNoIHRpbWUgdG8gYWxs b3cgYmVmb3JlIERQQyBwcm9jZXNzaW5nIGlzCiAJICogY2FsbGVkIGJhY2sgdmlhIGludGVycnVw dCAodG8gcHJldmVudCBEUEMgcXVldWUgZHJhaW4gc3RhcnZpbmcpLgpAQCAtMzg4LDE0ICszOTUs MTQgQEAgc3RydWN0IGd1Y19tbWlvX3JlZ3NldCB7CiAKIHN0cnVjdCBndWNfbW1pb19yZWdfc3Rh dGUgewogCXN0cnVjdCBndWNfbW1pb19yZWdzZXQgZ2xvYmFsX3JlZzsKLQlzdHJ1Y3QgZ3VjX21t aW9fcmVnc2V0IGVuZ2luZV9yZWdbSTkxNV9OVU1fUklOR1NdOworCXN0cnVjdCBndWNfbW1pb19y ZWdzZXQgZW5naW5lX3JlZ1tHVUNfTUFYX0VOR0lORVNfTlVNXTsKIAogCS8qIE1NSU8gcmVnaXN0 ZXJzIHRoYXQgYXJlIHNldCBhcyBub24gcHJpdmlsZWdlZCAqLwogCXN0cnVjdCBfX3BhY2tlZCB7 CiAJCXUzMiBtbWlvX3N0YXJ0OwogCQl1MzIgb2Zmc2V0c1tHVUNfTU1JT19XSElURV9MSVNUX01B WF07CiAJCXUzMiBjb3VudDsKLQl9IG1taW9fd2hpdGVfbGlzdFtJOTE1X05VTV9SSU5HU107CisJ fSBtbWlvX3doaXRlX2xpc3RbR1VDX01BWF9FTkdJTkVTX05VTV07CiB9IF9fcGFja2VkOwogCiAv KiBHdUMgQWRkaXRpb25hbCBEYXRhIFN0cnVjdCAqLwpAQCAtNDA2LDcgKzQxMyw3IEBAIHN0cnVj dCBndWNfYWRzIHsKIAl1MzIgZ29sZGVuX2NvbnRleHRfbHJjYTsKIAl1MzIgc2NoZWR1bGVyX3Bv bGljaWVzOwogCXUzMiByZXNlcnZlZDBbM107Ci0JdTMyIGVuZ19zdGF0ZV9zaXplW0k5MTVfTlVN X1JJTkdTXTsKKwl1MzIgZW5nX3N0YXRlX3NpemVbR1VDX01BWF9FTkdJTkVTX05VTV07CiAJdTMy IHJlc2VydmVkMls0XTsKIH0gX19wYWNrZWQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5k ZXggNzNkNDM0Ny4uNjVhMTllOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKQEAgLTIwODYs NiArMjA4Niw3IEBAIHN0YXRpYyBpbnQgbG9naWNhbF9yZW5kZXJfcmluZ19pbml0KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpCiAJcmluZy0+bmFtZSA9ICJyZW5kZXIgcmluZyI7CiAJcmluZy0+aWQg PSBSQ1M7CiAJcmluZy0+ZXhlY19pZCA9IEk5MTVfRVhFQ19SRU5ERVI7CisJcmluZy0+Z3VjX2Vu Z2luZV9pZCA9IEdVQ19SRU5ERVJfRU5HSU5FOwogCXJpbmctPm1taW9fYmFzZSA9IFJFTkRFUl9S SU5HX0JBU0U7CiAKIAlsb2dpY2FsX3JpbmdfZGVmYXVsdF9pcnFzKHJpbmcsIEdFTjhfUkNTX0lS UV9TSElGVCk7CkBAIC0yMTM3LDYgKzIxMzgsNyBAQCBzdGF0aWMgaW50IGxvZ2ljYWxfYnNkX3Jp bmdfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCXJpbmctPm5hbWUgPSAiYnNkIHJpbmci OwogCXJpbmctPmlkID0gVkNTOwogCXJpbmctPmV4ZWNfaWQgPSBJOTE1X0VYRUNfQlNEOworCXJp bmctPmd1Y19lbmdpbmVfaWQgPSBHVUNfVklERU9fRU5HSU5FOwogCXJpbmctPm1taW9fYmFzZSA9 IEdFTjZfQlNEX1JJTkdfQkFTRTsKIAogCWxvZ2ljYWxfcmluZ19kZWZhdWx0X2lycXMocmluZywg R0VOOF9WQ1MxX0lSUV9TSElGVCk7CkBAIC0yMTUzLDYgKzIxNTUsNyBAQCBzdGF0aWMgaW50IGxv Z2ljYWxfYnNkMl9yaW5nX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlyaW5nLT5uYW1l ID0gImJzZDIgcmluZyI7CiAJcmluZy0+aWQgPSBWQ1MyOwogCXJpbmctPmV4ZWNfaWQgPSBJOTE1 X0VYRUNfQlNEOworCXJpbmctPmd1Y19lbmdpbmVfaWQgPSBHVUNfVklERU9fRU5HSU5FMjsKIAly aW5nLT5tbWlvX2Jhc2UgPSBHRU44X0JTRDJfUklOR19CQVNFOwogCiAJbG9naWNhbF9yaW5nX2Rl ZmF1bHRfaXJxcyhyaW5nLCBHRU44X1ZDUzJfSVJRX1NISUZUKTsKQEAgLTIxNjksNiArMjE3Miw3 IEBAIHN0YXRpYyBpbnQgbG9naWNhbF9ibHRfcmluZ19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpCiAJcmluZy0+bmFtZSA9ICJibGl0dGVyIHJpbmciOwogCXJpbmctPmlkID0gQkNTOwogCXJp bmctPmV4ZWNfaWQgPSBJOTE1X0VYRUNfQkxUOworCXJpbmctPmd1Y19lbmdpbmVfaWQgPSBHVUNf QkxJVFRFUl9FTkdJTkU7CiAJcmluZy0+bW1pb19iYXNlID0gQkxUX1JJTkdfQkFTRTsKIAogCWxv Z2ljYWxfcmluZ19kZWZhdWx0X2lycXMocmluZywgR0VOOF9CQ1NfSVJRX1NISUZUKTsKQEAgLTIx ODUsNiArMjE4OSw3IEBAIHN0YXRpYyBpbnQgbG9naWNhbF92ZWJveF9yaW5nX2luaXQoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKIAlyaW5nLT5uYW1lID0gInZpZGVvIGVuaGFuY2VtZW50IHJpbmci OwogCXJpbmctPmlkID0gVkVDUzsKIAlyaW5nLT5leGVjX2lkID0gSTkxNV9FWEVDX1ZFQk9YOwor CXJpbmctPmd1Y19lbmdpbmVfaWQgPSBHVUNfVklERU9FTkhBTkNFX0VOR0lORTsKIAlyaW5nLT5t bWlvX2Jhc2UgPSBWRUJPWF9SSU5HX0JBU0U7CiAKIAlsb2dpY2FsX3JpbmdfZGVmYXVsdF9pcnFz KHJpbmcsIEdFTjhfVkVDU19JUlFfU0hJRlQpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmlu Z2J1ZmZlci5oCmluZGV4IGIxMmYyYWEuLmI2OWVhZGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmgKQEAgLTE1OCw2ICsxNTgsNyBAQCBzdHJ1Y3QgIGludGVsX2VuZ2lu ZV9jcyB7CiAjZGVmaW5lIEk5MTVfTlVNX1JJTkdTIDUKICNkZWZpbmUgX1ZDUyhuKSAoVkNTICsg KG4pKQogCXVuc2lnbmVkIGludCBleGVjX2lkOworCXVuc2lnbmVkIGludCBndWNfZW5naW5lX2lk OwogCXUzMgkJbW1pb19iYXNlOwogCXN0cnVjdAkJZHJtX2RldmljZSAqZGV2OwogCXN0cnVjdCBp bnRlbF9yaW5nYnVmZmVyICpidWZmZXI7Ci0tIAoyLjUuMAoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK