From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 24/62] drm/i915: Convert i915_semaphores_is_enabled over to early sanitize Date: Fri, 3 Jun 2016 17:36:49 +0100 Message-ID: <1464971847-15809-25-git-send-email-chris@chris-wilson.co.uk> References: <1464971847-15809-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 mail-wm0-x242.google.com (mail-wm0-x242.google.com [IPv6:2a00:1450:400c:c09::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1765B6EE30 for ; Fri, 3 Jun 2016 16:37:59 +0000 (UTC) Received: by mail-wm0-x242.google.com with SMTP id a20so599824wma.3 for ; Fri, 03 Jun 2016 09:37:58 -0700 (PDT) In-Reply-To: <1464971847-15809-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 UmF0aGVyIHRoYW4gcmVjb21wdXRpbmcgd2hldGhlciBzZW1hcGhvcmVzIGFyZSBlbmFibGVkLCB3 ZSBjYW4gZG8gdGhhdApjb21wdXRhdGlvbiBvbmNlIGR1cmluZyBlYXJseSBpbml0aWFsaXNhdGlv biBhcyB0aGUgaTkxNS5zZW1hcGhvcmVzCm1vZHVsZSBwYXJhbWV0ZXIgaXMgbm93IHJlYWQtb25s eS4KClNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVr PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jICAgICB8ICAyICstCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jICAgICAgICAgfCAgNCArKystCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICB8IDI3ICsrKysrKysrKysrKysrKysrKysrKysrKysr LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jIHwgIDIgKy0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMgICB8ICAyICstCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgfCAyMCArKysrKysrKysrLS0tLS0tLS0tLQogNyBm aWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IGRhYWJiYzZiNjVlOS4uYzFmOGI1MTI2ZDE2IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtMzIwMSw3ICszMjAxLDcgQEAgc3Rh dGljIGludCBpOTE1X3NlbWFwaG9yZV9zdGF0dXMoc3RydWN0IHNlcV9maWxlICptLCB2b2lkICp1 bnVzZWQpCiAJZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQ7CiAJaW50IGosIHJldDsKIAotCWlmICgh aTkxNV9zZW1hcGhvcmVfaXNfZW5hYmxlZChkZXZfcHJpdikpIHsKKwlpZiAoIWk5MTUuc2VtYXBo b3JlcykgewogCQlzZXFfcHV0cyhtLCAiU2VtYXBob3JlcyBhcmUgZGlzYWJsZWRcbiIpOwogCQly ZXR1cm4gMDsKIAl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwppbmRleCBmMmFjMGNhZTkyOWIuLmJh YmVlZTFhNjEyNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCkBAIC0zMTgsNyArMzE4LDcgQEAg c3RhdGljIGludCBpOTE1X2dldHBhcmFtKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRh dGEsCiAJCXZhbHVlID0gMTsKIAkJYnJlYWs7CiAJY2FzZSBJOTE1X1BBUkFNX0hBU19TRU1BUEhP UkVTOgotCQl2YWx1ZSA9IGk5MTVfc2VtYXBob3JlX2lzX2VuYWJsZWQoZGV2X3ByaXYpOworCQl2 YWx1ZSA9IGk5MTUuc2VtYXBob3JlczsKIAkJYnJlYWs7CiAJY2FzZSBJOTE1X1BBUkFNX0hBU19Q UklNRV9WTUFQX0ZMVVNIOgogCQl2YWx1ZSA9IDE7CkBAIC0xMTAyLDYgKzExMDIsOCBAQCBzdGF0 aWMgdm9pZCBpbnRlbF9kZXZpY2VfaW5mb19ydW50aW1lX2luaXQoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKIAlpOTE1LmVuYWJsZV9wcGd0dCA9CiAJCWludGVsX3Nhbml0aXplX2VuYWJsZV9wcGd0 dChkZXZfcHJpdiwgaTkxNS5lbmFibGVfcHBndHQpOwogCURSTV9ERUJVR19EUklWRVIoInBwZ3R0 IG1vZGU6ICVpXG4iLCBpOTE1LmVuYWJsZV9wcGd0dCk7CisKKwlpOTE1LnNlbWFwaG9yZXMgPSBp bnRlbF9zYW5pdGl6ZV9zZW1hcGhvcmVzKGRldl9wcml2LCBpOTE1LnNlbWFwaG9yZXMpOwogfQog CiBzdGF0aWMgdm9pZCBpbnRlbF9pbml0X2RwaW8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggNTQ4ZmQzYjlkODU4Li5mY2FjOTAx MDRiYTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMjc0OCw2ICsyNzQ4LDggQEAgZXh0 ZXJuIGludCBpOTE1X3Jlc3VtZV9zd2l0Y2hlcm9vKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwog aW50IGludGVsX3Nhbml0aXplX2VuYWJsZV9wcGd0dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCiAJCQkgICAgICAgCWludCBlbmFibGVfcHBndHQpOwogCitib29sIGludGVsX3Nh bml0aXplX3NlbWFwaG9yZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBpbnQg dmFsdWUpOworCiAvKiBpOTE1X2Rydi5jICovCiB2b2lkIF9fcHJpbnRmKDMsIDQpCiBfX2k5MTVf cHJpbnRrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgY29uc3QgY2hhciAqbGV2 ZWwsCkBAIC0zNTI4LDcgKzM1MzAsNiBAQCBleHRlcm4gdm9pZCBpbnRlbF9zZXRfcnBzKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTggdmFsKTsKIGV4dGVybiB2b2lkIGludGVs X3NldF9tZW1vcnlfY3hzcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJ ICBib29sIGVuYWJsZSk7CiAKLWV4dGVybiBib29sIGk5MTVfc2VtYXBob3JlX2lzX2VuYWJsZWQo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIGludCBpOTE1X3JlZ19yZWFkX2lv Y3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQlzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGUpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCA3MDNlOThlMWEyZTUuLjIy YzgzNjE3NDhkNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0yNTY4LDcgKzI1NjgsNyBA QCBfX2k5MTVfZ2VtX29iamVjdF9zeW5jKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmos CiAJaWYgKGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkKGZyb21fcmVxKSkKIAkJcmV0dXJuIDA7 CiAKLQlpZiAoIWk5MTVfc2VtYXBob3JlX2lzX2VuYWJsZWQodG9faTkxNShvYmotPmJhc2UuZGV2 KSkpIHsKKwlpZiAoIWk5MTUuc2VtYXBob3JlcykgewogCQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqaTkxNSA9IHRvX2k5MTUob2JqLT5iYXNlLmRldik7CiAJCXJldCA9IF9faTkxNV93YWl0X3Jl cXVlc3QoZnJvbV9yZXEsCiAJCQkJCSAgaTkxNS0+bW0uaW50ZXJydXB0aWJsZSwKQEAgLTQyNTMs NiArNDI1MywzMSBAQCBvdXQ6CiAJcmV0dXJuIHJldDsKIH0KIAorYm9vbCBpbnRlbF9zYW5pdGl6 ZV9zZW1hcGhvcmVzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgaW50IHZhbHVl KQoreworCWlmIChJTlRFTF9JTkZPKGRldl9wcml2KS0+Z2VuIDwgNikKKwkJcmV0dXJuIGZhbHNl OworCisJaWYgKHZhbHVlID49IDApCisJCXJldHVybiB2YWx1ZTsKKworCS8qIFRPRE86IG1ha2Ug c2VtYXBob3JlcyBhbmQgRXhlY2xpc3RzIHBsYXkgbmljZWx5IHRvZ2V0aGVyICovCisJaWYgKGk5 MTUuZW5hYmxlX2V4ZWNsaXN0cykKKwkJcmV0dXJuIGZhbHNlOworCisJLyogVW50aWwgd2UgZ2V0 IGZ1cnRoZXIgdGVzdGluZy4uLiAqLworCWlmIChJU19HRU44KGRldl9wcml2KSkKKwkJcmV0dXJu IGZhbHNlOworCisjaWZkZWYgQ09ORklHX0lOVEVMX0lPTU1VCisJLyogRW5hYmxlIHNlbWFwaG9y ZXMgb24gU05CIHdoZW4gSU8gcmVtYXBwaW5nIGlzIG9mZiAqLworCWlmIChJTlRFTF9JTkZPKGRl dl9wcml2KS0+Z2VuID09IDYgJiYgaW50ZWxfaW9tbXVfZ2Z4X21hcHBlZCkKKwkJcmV0dXJuIGZh bHNlOworI2VuZGlmCisKKwlyZXR1cm4gdHJ1ZTsKK30KKwogaW50IGk5MTVfZ2VtX2luaXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSBkZXYtPmRldl9wcml2YXRlOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fY29udGV4dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4 dC5jCmluZGV4IGQ4ZWY0MTEzOGM5NS4uN2MxMTRmOTBmNjFhIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fY29udGV4dC5jCkBAIC01MTgsNyArNTE4LDcgQEAgbWlfc2V0X2NvbnRleHQo c3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsIHUzMiBod19mbGFncykKIAl1MzIgZmxh Z3MgPSBod19mbGFncyB8IE1JX01NX1NQQUNFX0dUVDsKIAljb25zdCBpbnQgbnVtX3JpbmdzID0K IAkJLyogVXNlIGFuIGV4dGVuZGVkIHcvYSBvbiBpdmIrIGlmIHNpZ25hbGxpbmcgZnJvbSBvdGhl ciByaW5ncyAqLwotCQlpOTE1X3NlbWFwaG9yZV9pc19lbmFibGVkKGRldl9wcml2KSA/CisJCWk5 MTUuc2VtYXBob3JlcyA/CiAJCWh3ZWlnaHQzMihJTlRFTF9JTkZPKGRldl9wcml2KS0+cmluZ19t YXNrKSAtIDEgOgogCQkwOwogCWludCBsZW4sIHJldDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dw dV9lcnJvci5jCmluZGV4IDUzMzJiZDMyYzU1NS4uYTgwODJiOGE5Nzk3IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJvci5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMKQEAgLTg2Myw3ICs4NjMsNyBAQCBzdGF0aWMgdm9pZCBn ZW44X3JlY29yZF9zZW1hcGhvcmVfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnRvOwogCWVudW0gaW50ZWxfZW5naW5lX2lk IGlkOwogCi0JaWYgKCFpOTE1X3NlbWFwaG9yZV9pc19lbmFibGVkKGRldl9wcml2KSkKKwlpZiAo IWk5MTUuc2VtYXBob3JlcykKIAkJcmV0dXJuOwogCiAJaWYgKCFlcnJvci0+c2VtYXBob3JlX29i aikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwppbmRleCA3NWI2ZDZlZWUw YWMuLmMwYTEzMmE3NDJjYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIu YwpAQCAtMjYwMyw3ICsyNjAzLDcgQEAgaW50IGludGVsX2luaXRfcmVuZGVyX3JpbmdfYnVmZmVy KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCWVuZ2luZS0+aXJxX2tlZXBfbWFzayA9IEdUX1JF TkRFUl9MM19QQVJJVFlfRVJST1JfSU5URVJSVVBUOwogCiAJaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPj0gOCkgewotCQlpZiAoaTkxNV9zZW1hcGhvcmVfaXNfZW5hYmxlZChkZXZfcHJpdikpIHsK KwkJaWYgKGk5MTUuc2VtYXBob3JlcykgewogCQkJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2NyZWF0 ZShkZXYsIDQwOTYpOwogCQkJaWYgKElTX0VSUihvYmopKSB7CiAJCQkJRFJNX0VSUk9SKCJGYWls ZWQgdG8gYWxsb2NhdGUgc2VtYXBob3JlIGJvLiBEaXNhYmxpbmcgc2VtYXBob3Jlc1xuIik7CkBA IC0yNjI2LDcgKzI2MjYsNyBAQCBpbnQgaW50ZWxfaW5pdF9yZW5kZXJfcmluZ19idWZmZXIoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIAkJZW5naW5lLT5pcnFfZW5hYmxlID0gZ2VuOF9yaW5nX2Vu YWJsZV9pcnE7CiAJCWVuZ2luZS0+aXJxX2Rpc2FibGUgPSBnZW44X3JpbmdfZGlzYWJsZV9pcnE7 CiAJCWVuZ2luZS0+aXJxX2VuYWJsZV9tYXNrID0gR1RfUkVOREVSX1VTRVJfSU5URVJSVVBUOwot CQlpZiAoaTkxNV9zZW1hcGhvcmVfaXNfZW5hYmxlZChkZXZfcHJpdikpIHsKKwkJaWYgKGk5MTUu c2VtYXBob3JlcykgewogCQkJV0FSTl9PTighZGV2X3ByaXYtPnNlbWFwaG9yZV9vYmopOwogCQkJ ZW5naW5lLT5zZW1hcGhvcmUuc3luY190byA9IGdlbjhfcmluZ19zeW5jOwogCQkJZW5naW5lLT5z ZW1hcGhvcmUuc2lnbmFsID0gZ2VuOF9yY3Nfc2lnbmFsOwpAQCAtMjY0Miw3ICsyNjQyLDcgQEAg aW50IGludGVsX2luaXRfcmVuZGVyX3JpbmdfYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp CiAJCWVuZ2luZS0+aXJxX2Rpc2FibGUgPSBnZW42X3JpbmdfZGlzYWJsZV9pcnE7CiAJCWVuZ2lu ZS0+aXJxX2VuYWJsZV9tYXNrID0gR1RfUkVOREVSX1VTRVJfSU5URVJSVVBUOwogCQllbmdpbmUt PmlycV9zZXFub19iYXJyaWVyID0gZ2VuNl9zZXFub19iYXJyaWVyOwotCQlpZiAoaTkxNV9zZW1h cGhvcmVfaXNfZW5hYmxlZChkZXZfcHJpdikpIHsKKwkJaWYgKGk5MTUuc2VtYXBob3Jlcykgewog CQkJZW5naW5lLT5zZW1hcGhvcmUuc3luY190byA9IGdlbjZfcmluZ19zeW5jOwogCQkJZW5naW5l LT5zZW1hcGhvcmUuc2lnbmFsID0gZ2VuNl9zaWduYWw7CiAJCQkvKgpAQCAtMjc0NSw3ICsyNzQ1 LDcgQEAgaW50IGludGVsX2luaXRfYnNkX3JpbmdfYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpCiAJCQllbmdpbmUtPmlycV9kaXNhYmxlID0gZ2VuOF9yaW5nX2Rpc2FibGVfaXJxOwogCQkJ ZW5naW5lLT5kaXNwYXRjaF9leGVjYnVmZmVyID0KIAkJCQlnZW44X3JpbmdfZGlzcGF0Y2hfZXhl Y2J1ZmZlcjsKLQkJCWlmIChpOTE1X3NlbWFwaG9yZV9pc19lbmFibGVkKGRldl9wcml2KSkgewor CQkJaWYgKGk5MTUuc2VtYXBob3JlcykgewogCQkJCWVuZ2luZS0+c2VtYXBob3JlLnN5bmNfdG8g PSBnZW44X3Jpbmdfc3luYzsKIAkJCQllbmdpbmUtPnNlbWFwaG9yZS5zaWduYWwgPSBnZW44X3hj c19zaWduYWw7CiAJCQkJR0VOOF9SSU5HX1NFTUFQSE9SRV9JTklUKGVuZ2luZSk7CkBAIC0yNzU2 LDcgKzI3NTYsNyBAQCBpbnQgaW50ZWxfaW5pdF9ic2RfcmluZ19idWZmZXIoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKIAkJCWVuZ2luZS0+aXJxX2Rpc2FibGUgPSBnZW42X3JpbmdfZGlzYWJsZV9p cnE7CiAJCQllbmdpbmUtPmRpc3BhdGNoX2V4ZWNidWZmZXIgPQogCQkJCWdlbjZfcmluZ19kaXNw YXRjaF9leGVjYnVmZmVyOwotCQkJaWYgKGk5MTVfc2VtYXBob3JlX2lzX2VuYWJsZWQoZGV2X3By aXYpKSB7CisJCQlpZiAoaTkxNS5zZW1hcGhvcmVzKSB7CiAJCQkJZW5naW5lLT5zZW1hcGhvcmUu c3luY190byA9IGdlbjZfcmluZ19zeW5jOwogCQkJCWVuZ2luZS0+c2VtYXBob3JlLnNpZ25hbCA9 IGdlbjZfc2lnbmFsOwogCQkJCWVuZ2luZS0+c2VtYXBob3JlLm1ib3gud2FpdFtSQ1NdID0gTUlf U0VNQVBIT1JFX1NZTkNfVlI7CkBAIC0yODE2LDcgKzI4MTYsNyBAQCBpbnQgaW50ZWxfaW5pdF9i c2QyX3JpbmdfYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJZW5naW5lLT5pcnFfZGlz YWJsZSA9IGdlbjhfcmluZ19kaXNhYmxlX2lycTsKIAllbmdpbmUtPmRpc3BhdGNoX2V4ZWNidWZm ZXIgPQogCQkJZ2VuOF9yaW5nX2Rpc3BhdGNoX2V4ZWNidWZmZXI7Ci0JaWYgKGk5MTVfc2VtYXBo b3JlX2lzX2VuYWJsZWQoZGV2X3ByaXYpKSB7CisJaWYgKGk5MTUuc2VtYXBob3JlcykgewogCQll bmdpbmUtPnNlbWFwaG9yZS5zeW5jX3RvID0gZ2VuOF9yaW5nX3N5bmM7CiAJCWVuZ2luZS0+c2Vt YXBob3JlLnNpZ25hbCA9IGdlbjhfeGNzX3NpZ25hbDsKIAkJR0VOOF9SSU5HX1NFTUFQSE9SRV9J TklUKGVuZ2luZSk7CkBAIC0yODQ3LDcgKzI4NDcsNyBAQCBpbnQgaW50ZWxfaW5pdF9ibHRfcmlu Z19idWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJZW5naW5lLT5pcnFfZW5hYmxlID0g Z2VuOF9yaW5nX2VuYWJsZV9pcnE7CiAJCWVuZ2luZS0+aXJxX2Rpc2FibGUgPSBnZW44X3Jpbmdf ZGlzYWJsZV9pcnE7CiAJCWVuZ2luZS0+ZGlzcGF0Y2hfZXhlY2J1ZmZlciA9IGdlbjhfcmluZ19k aXNwYXRjaF9leGVjYnVmZmVyOwotCQlpZiAoaTkxNV9zZW1hcGhvcmVfaXNfZW5hYmxlZChkZXZf cHJpdikpIHsKKwkJaWYgKGk5MTUuc2VtYXBob3JlcykgewogCQkJZW5naW5lLT5zZW1hcGhvcmUu c3luY190byA9IGdlbjhfcmluZ19zeW5jOwogCQkJZW5naW5lLT5zZW1hcGhvcmUuc2lnbmFsID0g Z2VuOF94Y3Nfc2lnbmFsOwogCQkJR0VOOF9SSU5HX1NFTUFQSE9SRV9JTklUKGVuZ2luZSk7CkBA IC0yODU3LDcgKzI4NTcsNyBAQCBpbnQgaW50ZWxfaW5pdF9ibHRfcmluZ19idWZmZXIoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKIAkJZW5naW5lLT5pcnFfZW5hYmxlID0gZ2VuNl9yaW5nX2VuYWJs ZV9pcnE7CiAJCWVuZ2luZS0+aXJxX2Rpc2FibGUgPSBnZW42X3JpbmdfZGlzYWJsZV9pcnE7CiAJ CWVuZ2luZS0+ZGlzcGF0Y2hfZXhlY2J1ZmZlciA9IGdlbjZfcmluZ19kaXNwYXRjaF9leGVjYnVm ZmVyOwotCQlpZiAoaTkxNV9zZW1hcGhvcmVfaXNfZW5hYmxlZChkZXZfcHJpdikpIHsKKwkJaWYg KGk5MTUuc2VtYXBob3JlcykgewogCQkJZW5naW5lLT5zZW1hcGhvcmUuc2lnbmFsID0gZ2VuNl9z aWduYWw7CiAJCQllbmdpbmUtPnNlbWFwaG9yZS5zeW5jX3RvID0gZ2VuNl9yaW5nX3N5bmM7CiAJ CQkvKgpAQCAtMjkwNiw3ICsyOTA2LDcgQEAgaW50IGludGVsX2luaXRfdmVib3hfcmluZ19idWZm ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJZW5naW5lLT5pcnFfZW5hYmxlID0gZ2VuOF9y aW5nX2VuYWJsZV9pcnE7CiAJCWVuZ2luZS0+aXJxX2Rpc2FibGUgPSBnZW44X3JpbmdfZGlzYWJs ZV9pcnE7CiAJCWVuZ2luZS0+ZGlzcGF0Y2hfZXhlY2J1ZmZlciA9IGdlbjhfcmluZ19kaXNwYXRj aF9leGVjYnVmZmVyOwotCQlpZiAoaTkxNV9zZW1hcGhvcmVfaXNfZW5hYmxlZChkZXZfcHJpdikp IHsKKwkJaWYgKGk5MTUuc2VtYXBob3JlcykgewogCQkJZW5naW5lLT5zZW1hcGhvcmUuc3luY190 byA9IGdlbjhfcmluZ19zeW5jOwogCQkJZW5naW5lLT5zZW1hcGhvcmUuc2lnbmFsID0gZ2VuOF94 Y3Nfc2lnbmFsOwogCQkJR0VOOF9SSU5HX1NFTUFQSE9SRV9JTklUKGVuZ2luZSk7CkBAIC0yOTE2 LDcgKzI5MTYsNyBAQCBpbnQgaW50ZWxfaW5pdF92ZWJveF9yaW5nX2J1ZmZlcihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQogCQllbmdpbmUtPmlycV9lbmFibGUgPSBoc3dfdmVib3hfZW5hYmxlX2ly cTsKIAkJZW5naW5lLT5pcnFfZGlzYWJsZSA9IGhzd192ZWJveF9kaXNhYmxlX2lycTsKIAkJZW5n aW5lLT5kaXNwYXRjaF9leGVjYnVmZmVyID0gZ2VuNl9yaW5nX2Rpc3BhdGNoX2V4ZWNidWZmZXI7 Ci0JCWlmIChpOTE1X3NlbWFwaG9yZV9pc19lbmFibGVkKGRldl9wcml2KSkgeworCQlpZiAoaTkx NS5zZW1hcGhvcmVzKSB7CiAJCQllbmdpbmUtPnNlbWFwaG9yZS5zeW5jX3RvID0gZ2VuNl9yaW5n X3N5bmM7CiAJCQllbmdpbmUtPnNlbWFwaG9yZS5zaWduYWwgPSBnZW42X3NpZ25hbDsKIAkJCWVu Z2luZS0+c2VtYXBob3JlLm1ib3gud2FpdFtSQ1NdID0gTUlfU0VNQVBIT1JFX1NZTkNfVkVSOwot LSAKMi44LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=