From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH] drm/i915: Fix plane init failure paths Date: Mon, 21 Mar 2016 14:35:34 +0000 Message-ID: <1458570951-31985-1-git-send-email-matthew.auld@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 ESMTP id 4D8656E171 for ; Mon, 21 Mar 2016 14:36:02 +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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhIGF0IGxpbnV4LmludGVsLmNvbT4K CkRlYWwgd2l0aCBlcnJvcnMgZnJvbSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoKSBpbiBwcmlt YXJ5IGFuZCBjdXJzb3IKcGxhbmUgaW5pdCBwYXRocyAoc3ByaXRlcyB3ZXJlIGFscmVhZHkgY292 ZXJlZCkuIEFsc28gbWFrZSB0aGUgY29kZQpuZWF0ZXIgYnkgdXNpbmcgZ290byBmb3IgZXJyb3Ig aGFuZGxpbmcuCgp2MjogUmViYXNlZCBkdWUgdG8gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KCkg J25hbWUnIHBhcmFtZXRlcgp2MzogQW5vdGhlciByZWJhc2UgZHVlIHRvIHMvIiIvTlVMTC8KdjQ6 IFJlYmFzZWQgb24gZHJtLW5pZ2h0bHkgKE1hdHRoZXcgQXVsZCkKClNpZ25lZC1vZmYtYnk6IFZp bGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYSBhdCBsaW51eC5pbnRlbC5jb20+ClJldmlld2Vk LWJ5OiBNYXR0aGV3IEF1bGQgPG1hdHRoZXcuYXVsZEBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgNjQgKysrKysrKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYyAgfCAzNCAr KysrKysrKysrKy0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDM4 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCA3NGIw MTY1Li5mM2Y2ZmQxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0xMzk2 MSwyMCArMTM5NjEsMTkgQEAgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9mdW5jcyBpbnRlbF9wbGFu ZV9mdW5jcyA9IHsKIHN0YXRpYyBzdHJ1Y3QgZHJtX3BsYW5lICppbnRlbF9wcmltYXJ5X3BsYW5l X2NyZWF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCQkJICAgIGludCBwaXBlKQogewot CXN0cnVjdCBpbnRlbF9wbGFuZSAqcHJpbWFyeTsKLQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUg KnN0YXRlOworCXN0cnVjdCBpbnRlbF9wbGFuZSAqcHJpbWFyeSA9IE5VTEw7CisJc3RydWN0IGlu dGVsX3BsYW5lX3N0YXRlICpzdGF0ZSA9IE5VTEw7CiAJY29uc3QgdWludDMyX3QgKmludGVsX3By aW1hcnlfZm9ybWF0czsKIAl1bnNpZ25lZCBpbnQgbnVtX2Zvcm1hdHM7CisJaW50IHJldDsKIAog CXByaW1hcnkgPSBremFsbG9jKHNpemVvZigqcHJpbWFyeSksIEdGUF9LRVJORUwpOwotCWlmIChw cmltYXJ5ID09IE5VTEwpCi0JCXJldHVybiBOVUxMOworCWlmICghcHJpbWFyeSkKKwkJZ290byBm YWlsOwogCiAJc3RhdGUgPSBpbnRlbF9jcmVhdGVfcGxhbmVfc3RhdGUoJnByaW1hcnktPmJhc2Up OwotCWlmICghc3RhdGUpIHsKLQkJa2ZyZWUocHJpbWFyeSk7Ci0JCXJldHVybiBOVUxMOwotCX0K KwlpZiAoIXN0YXRlKQorCQlnb3RvIGZhaWw7CiAJcHJpbWFyeS0+YmFzZS5zdGF0ZSA9ICZzdGF0 ZS0+YmFzZTsKIAogCXByaW1hcnktPmNhbl9zY2FsZSA9IGZhbHNlOwpAQCAtMTQwMTYsMTAgKzE0 MDE1LDEyIEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX3BsYW5lICppbnRlbF9wcmltYXJ5X3BsYW5lX2Ny ZWF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQlwcmltYXJ5LT5kaXNhYmxlX3BsYW5lID0g aTl4eF9kaXNhYmxlX3ByaW1hcnlfcGxhbmU7CiAJfQogCi0JZHJtX3VuaXZlcnNhbF9wbGFuZV9p bml0KGRldiwgJnByaW1hcnktPmJhc2UsIDAsCi0JCQkJICZpbnRlbF9wbGFuZV9mdW5jcywKLQkJ CQkgaW50ZWxfcHJpbWFyeV9mb3JtYXRzLCBudW1fZm9ybWF0cywKLQkJCQkgRFJNX1BMQU5FX1RZ UEVfUFJJTUFSWSwgTlVMTCk7CisJcmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRldiwg JnByaW1hcnktPmJhc2UsIDAsCisJCQkJICAgICAgICZpbnRlbF9wbGFuZV9mdW5jcywKKwkJCQkg ICAgICAgaW50ZWxfcHJpbWFyeV9mb3JtYXRzLCBudW1fZm9ybWF0cywKKwkJCQkgICAgICAgRFJN X1BMQU5FX1RZUEVfUFJJTUFSWSwgTlVMTCk7CisJaWYgKHJldCkKKwkJZ290byBmYWlsOwogCiAJ aWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuID49IDQpCiAJCWludGVsX2NyZWF0ZV9yb3RhdGlvbl9w cm9wZXJ0eShkZXYsIHByaW1hcnkpOwpAQCAtMTQwMjcsNiArMTQwMjgsMTIgQEAgc3RhdGljIHN0 cnVjdCBkcm1fcGxhbmUgKmludGVsX3ByaW1hcnlfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCiAJZHJtX3BsYW5lX2hlbHBlcl9hZGQoJnByaW1hcnktPmJhc2UsICZpbnRlbF9w bGFuZV9oZWxwZXJfZnVuY3MpOwogCiAJcmV0dXJuICZwcmltYXJ5LT5iYXNlOworCitmYWlsOgor CWtmcmVlKHN0YXRlKTsKKwlrZnJlZShwcmltYXJ5KTsKKworCXJldHVybiBOVUxMOwogfQogCiB2 b2lkIGludGVsX2NyZWF0ZV9yb3RhdGlvbl9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCBzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lKQpAQCAtMTQxNDMsMTggKzE0MTUwLDE3IEBAIGlu dGVsX3VwZGF0ZV9jdXJzb3JfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiBzdGF0aWMg c3RydWN0IGRybV9wbGFuZSAqaW50ZWxfY3Vyc29yX3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCQkJCQkJICAgaW50IHBpcGUpCiB7Ci0Jc3RydWN0IGludGVsX3BsYW5lICpj dXJzb3I7Ci0Jc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZTsKKwlzdHJ1Y3QgaW50ZWxf cGxhbmUgKmN1cnNvciA9IE5VTEw7CisJc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZSA9 IE5VTEw7CisJaW50IHJldDsKIAogCWN1cnNvciA9IGt6YWxsb2Moc2l6ZW9mKCpjdXJzb3IpLCBH RlBfS0VSTkVMKTsKLQlpZiAoY3Vyc29yID09IE5VTEwpCi0JCXJldHVybiBOVUxMOworCWlmICgh Y3Vyc29yKQorCQlnb3RvIGZhaWw7CiAKIAlzdGF0ZSA9IGludGVsX2NyZWF0ZV9wbGFuZV9zdGF0 ZSgmY3Vyc29yLT5iYXNlKTsKLQlpZiAoIXN0YXRlKSB7Ci0JCWtmcmVlKGN1cnNvcik7Ci0JCXJl dHVybiBOVUxMOwotCX0KKwlpZiAoIXN0YXRlKQorCQlnb3RvIGZhaWw7CiAJY3Vyc29yLT5iYXNl LnN0YXRlID0gJnN0YXRlLT5iYXNlOwogCiAJY3Vyc29yLT5jYW5fc2NhbGUgPSBmYWxzZTsKQEAg LTE0MTY2LDExICsxNDE3MiwxMyBAQCBzdGF0aWMgc3RydWN0IGRybV9wbGFuZSAqaW50ZWxfY3Vy c29yX3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCWN1cnNvci0+dXBkYXRl X3BsYW5lID0gaW50ZWxfdXBkYXRlX2N1cnNvcl9wbGFuZTsKIAljdXJzb3ItPmRpc2FibGVfcGxh bmUgPSBpbnRlbF9kaXNhYmxlX2N1cnNvcl9wbGFuZTsKIAotCWRybV91bml2ZXJzYWxfcGxhbmVf aW5pdChkZXYsICZjdXJzb3ItPmJhc2UsIDAsCi0JCQkJICZpbnRlbF9wbGFuZV9mdW5jcywKLQkJ CQkgaW50ZWxfY3Vyc29yX2Zvcm1hdHMsCi0JCQkJIEFSUkFZX1NJWkUoaW50ZWxfY3Vyc29yX2Zv cm1hdHMpLAotCQkJCSBEUk1fUExBTkVfVFlQRV9DVVJTT1IsIE5VTEwpOworCXJldCA9IGRybV91 bml2ZXJzYWxfcGxhbmVfaW5pdChkZXYsICZjdXJzb3ItPmJhc2UsIDAsCisJCQkJICAgICAgICZp bnRlbF9wbGFuZV9mdW5jcywKKwkJCQkgICAgICAgaW50ZWxfY3Vyc29yX2Zvcm1hdHMsCisJCQkJ ICAgICAgIEFSUkFZX1NJWkUoaW50ZWxfY3Vyc29yX2Zvcm1hdHMpLAorCQkJCSAgICAgICBEUk1f UExBTkVfVFlQRV9DVVJTT1IsIE5VTEwpOworCWlmIChyZXQpCisJCWdvdG8gZmFpbDsKIAogCWlm IChJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA0KSB7CiAJCWlmICghZGV2LT5tb2RlX2NvbmZpZy5y b3RhdGlvbl9wcm9wZXJ0eSkKQEAgLTE0MTkwLDYgKzE0MTk4LDEyIEBAIHN0YXRpYyBzdHJ1Y3Qg ZHJtX3BsYW5lICppbnRlbF9jdXJzb3JfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCiAJZHJtX3BsYW5lX2hlbHBlcl9hZGQoJmN1cnNvci0+YmFzZSwgJmludGVsX3BsYW5lX2hl bHBlcl9mdW5jcyk7CiAKIAlyZXR1cm4gJmN1cnNvci0+YmFzZTsKKworZmFpbDoKKwlrZnJlZShz dGF0ZSk7CisJa2ZyZWUoY3Vyc29yKTsKKworCXJldHVybiBOVUxMOwogfQogCiBzdGF0aWMgdm9p ZCBza2xfaW5pdF9zY2FsZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBpbnRlbF9j cnRjICppbnRlbF9jcnRjLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf c3ByaXRlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwppbmRleCA4ODIx NTMzLi4wZjNlMjMwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJp dGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwpAQCAtMTAyNSw4 ICsxMDI1LDggQEAgc3RhdGljIHVpbnQzMl90IHNrbF9wbGFuZV9mb3JtYXRzW10gPSB7CiBpbnQK IGludGVsX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUs IGludCBwbGFuZSkKIHsKLQlzdHJ1Y3QgaW50ZWxfcGxhbmUgKmludGVsX3BsYW5lOwotCXN0cnVj dCBpbnRlbF9wbGFuZV9zdGF0ZSAqc3RhdGU7CisJc3RydWN0IGludGVsX3BsYW5lICppbnRlbF9w bGFuZSA9IE5VTEw7CisJc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZSA9IE5VTEw7CiAJ dW5zaWduZWQgbG9uZyBwb3NzaWJsZV9jcnRjczsKIAljb25zdCB1aW50MzJfdCAqcGxhbmVfZm9y bWF0czsKIAlpbnQgbnVtX3BsYW5lX2Zvcm1hdHM7CkBAIC0xMDM2LDEzICsxMDM2LDE1IEBAIGlu dGVsX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUsIGlu dCBwbGFuZSkKIAkJcmV0dXJuIC1FTk9ERVY7CiAKIAlpbnRlbF9wbGFuZSA9IGt6YWxsb2Moc2l6 ZW9mKCppbnRlbF9wbGFuZSksIEdGUF9LRVJORUwpOwotCWlmICghaW50ZWxfcGxhbmUpCi0JCXJl dHVybiAtRU5PTUVNOworCWlmICghaW50ZWxfcGxhbmUpIHsKKwkJcmV0ID0gLUVOT01FTTsKKwkJ Z290byBmYWlsOworCX0KIAogCXN0YXRlID0gaW50ZWxfY3JlYXRlX3BsYW5lX3N0YXRlKCZpbnRl bF9wbGFuZS0+YmFzZSk7CiAJaWYgKCFzdGF0ZSkgewotCQlrZnJlZShpbnRlbF9wbGFuZSk7Ci0J CXJldHVybiAtRU5PTUVNOworCQlyZXQgPSAtRU5PTUVNOworCQlnb3RvIGZhaWw7CiAJfQogCWlu dGVsX3BsYW5lLT5iYXNlLnN0YXRlID0gJnN0YXRlLT5iYXNlOwogCkBAIC0xMDk3LDI4ICsxMDk5 LDM0IEBAIGludGVsX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBl IHBpcGUsIGludCBwbGFuZSkKIAkJbnVtX3BsYW5lX2Zvcm1hdHMgPSBBUlJBWV9TSVpFKHNrbF9w bGFuZV9mb3JtYXRzKTsKIAkJYnJlYWs7CiAJZGVmYXVsdDoKLQkJa2ZyZWUoaW50ZWxfcGxhbmUp OwotCQlyZXR1cm4gLUVOT0RFVjsKKwkJTUlTU0lOR19DQVNFKElOVEVMX0lORk8oZGV2KS0+Z2Vu KTsKKwkJcmV0ID0gLUVOT0RFVjsKKwkJZ290byBmYWlsOwogCX0KIAogCWludGVsX3BsYW5lLT5w aXBlID0gcGlwZTsKIAlpbnRlbF9wbGFuZS0+cGxhbmUgPSBwbGFuZTsKIAlpbnRlbF9wbGFuZS0+ ZnJvbnRidWZmZXJfYml0ID0gSU5URUxfRlJPTlRCVUZGRVJfU1BSSVRFKHBpcGUsIHBsYW5lKTsK IAlpbnRlbF9wbGFuZS0+Y2hlY2tfcGxhbmUgPSBpbnRlbF9jaGVja19zcHJpdGVfcGxhbmU7CisK IAlwb3NzaWJsZV9jcnRjcyA9ICgxIDw8IHBpcGUpOworCiAJcmV0ID0gZHJtX3VuaXZlcnNhbF9w bGFuZV9pbml0KGRldiwgJmludGVsX3BsYW5lLT5iYXNlLCBwb3NzaWJsZV9jcnRjcywKIAkJCQkg ICAgICAgJmludGVsX3BsYW5lX2Z1bmNzLAogCQkJCSAgICAgICBwbGFuZV9mb3JtYXRzLCBudW1f cGxhbmVfZm9ybWF0cywKIAkJCQkgICAgICAgRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSwgTlVMTCk7 Ci0JaWYgKHJldCkgewotCQlrZnJlZShpbnRlbF9wbGFuZSk7Ci0JCWdvdG8gb3V0OwotCX0KKwlp ZiAocmV0KQorCQlnb3RvIGZhaWw7CiAKIAlpbnRlbF9jcmVhdGVfcm90YXRpb25fcHJvcGVydHko ZGV2LCBpbnRlbF9wbGFuZSk7CiAKIAlkcm1fcGxhbmVfaGVscGVyX2FkZCgmaW50ZWxfcGxhbmUt PmJhc2UsICZpbnRlbF9wbGFuZV9oZWxwZXJfZnVuY3MpOwogCi1vdXQ6CisJcmV0dXJuIDA7CisK K2ZhaWw6CisJa2ZyZWUoc3RhdGUpOworCWtmcmVlKGludGVsX3BsYW5lKTsKKwogCXJldHVybiBy ZXQ7CiB9Ci0tIAoyLjQuMwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==