From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: [PATCH 3/4] drm/i915: tidy up initialisation failure paths (legacy) Date: Thu, 21 Jan 2016 19:37:46 +0000 Message-ID: <1453405067-32890-4-git-send-email-david.s.gordon@intel.com> References: <1453405067-32890-1-git-send-email-david.s.gordon@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 86D2F6EB4E for ; Thu, 21 Jan 2016 11:37:55 -0800 (PST) In-Reply-To: <1453405067-32890-1-git-send-email-david.s.gordon@intel.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 List-Id: intel-gfx@lists.freedesktop.org MS4gRml4IGludGVsX2NsZWFudXBfcmluZ19idWZmZXIoKSB0byBoYW5kbGUgdGhlIGVycm9yIGNs ZWFudXAKICAgY2FzZSB3aGVyZSB0aGUgcmluZ2J1ZmZlciBoYXMgYmVlbiBhbGxvY2F0ZWQgYnV0 IG1hcC1hbmQtcGluCiAgIGZhaWxlZC4gVW5waW4gaXQgaWZmIGl0J3MgcHJldmlvdXNseSBiZWVu IG1hcHBlZC1hbmQtcGlubmVkLgoKMi4gRml4IHRoZSBlcnJvciBwYXRoIGluIGludGVsX2luaXRf cmluZ19idWZmZXIoKSwgd2hpY2ggYWxyZWFkeQogICBjYWxsZWQgaW50ZWxfZGVzdHJveV9yaW5n YnVmZmVyX29iaigpLCBidXQgZmFpbGVkIHRvIGZyZWUgdGhlCiAgIGFjdHVhbCByaW5nYnVmZmVy IHN0cnVjdHVyZS4gQ2FsbGluZyBpbnRlbF9yaW5nYnVmZmVyX2ZyZWUoKQogICBpbnN0ZWFkIGRv ZXMgYm90aCBpbiBvbmUgZ28uCgozLiBXaXRoIHRoZSBhYm92ZSBjaGFuZ2UsIGludGVsX2Rlc3Ry b3lfcmluZ2J1ZmZlcl9vYmooKSBpcyBvbmx5CiAgIGNhbGxlZCBpbiBvbmUgcGxhY2UgKGludGVs X3JpbmdidWZmZXJfZnJlZSgpKSwgc28gZmxhdHRlbiBpdAogICBpbnRvIHRoYXQgZnVuY3Rpb24u Cgo0LiBtb3ZlIGxvdy1sZXZlbCByZWdpc3RlciBhY2Nlc3NlcyBmcm9tIGludGVsX2NsZWFudXBf cmluZ19idWZmZXIoKQogICAod2hpY2ggY2FsbHMgaW50ZWxfc3RvcF9yaW5nX2J1ZmZlcihyaW5n KSB3aGljaCBjYWxscyBzdG9wX3JpbmcoKSkKICAgZG93biBpbnRvIHN0b3BfcmluZygpIGl0c2Vs ZiksIHdoaWNoIGlzIGFscmVhZHkgZG9pbmcgbG93LWxldmVsCiAgIHJlZ2lzdGVyIGFjY2Vzc2Vz LiBUaGVuLCBpbnRlbF9jbGVhbnVwX3JpbmdfYnVmZmVyKCkgbm8gbG9uZ2VyCiAgIG5lZWRzICdk ZXZfcHJpdicuCgpTaWduZWQtb2ZmLWJ5OiBEYXZlIEdvcmRvbiA8ZGF2aWQucy5nb3Jkb25AaW50 ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyB8IDQ3 ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDIyIGlu c2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Jp bmdidWZmZXIuYwppbmRleCA5MDMwZTJiLi4yOWRlNjRlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcmluZ2J1ZmZlci5jCkBAIC01NTEsNiArNTUxLDggQEAgc3RhdGljIGJvb2wgc3RvcF9y aW5nKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCiAJCUk5MTVfV1JJVEVfTU9ERShyaW5n LCBfTUFTS0VEX0JJVF9ESVNBQkxFKFNUT1BfUklORykpOwogCX0KIAorCVdBUk5fT04oIUlTX0dF TjIocmluZy0+ZGV2KSAmJiAoSTkxNV9SRUFEX01PREUocmluZykgJiBNT0RFX0lETEUpID09IDAp OworCiAJcmV0dXJuIChJOTE1X1JFQURfSEVBRChyaW5nKSAmIEhFQURfQUREUikgPT0gMDsKIH0K IApAQCAtMjA3MSwxMiArMjA3Myw2IEBAIGludCBpbnRlbF9waW5fYW5kX21hcF9yaW5nYnVmZmVy X29iaihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgdm9p ZCBpbnRlbF9kZXN0cm95X3JpbmdidWZmZXJfb2JqKHN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpy aW5nYnVmKQotewotCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlKCZyaW5nYnVmLT5vYmotPmJh c2UpOwotCXJpbmdidWYtPm9iaiA9IE5VTEw7Ci19Ci0KIHN0YXRpYyBpbnQgaW50ZWxfYWxsb2Nf cmluZ2J1ZmZlcl9vYmooc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkgICAgICBzdHJ1Y3Qg aW50ZWxfcmluZ2J1ZmZlciAqcmluZ2J1ZikKIHsKQEAgLTIxMzksMTEgKzIxMzUsMTQgQEAgc3Ry dWN0IGludGVsX3JpbmdidWZmZXIgKgogfQogCiB2b2lkCi1pbnRlbF9yaW5nYnVmZmVyX2ZyZWUo c3RydWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmcpCitpbnRlbF9yaW5nYnVmZmVyX2ZyZWUoc3Ry dWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdidWYpCiB7Ci0JaW50ZWxfZGVzdHJveV9yaW5nYnVm ZmVyX29iaihyaW5nKTsKLQlsaXN0X2RlbCgmcmluZy0+bGluayk7Ci0Ja2ZyZWUocmluZyk7CisJ aWYgKHJpbmdidWYtPm9iaikgeworCQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSgmcmluZ2J1 Zi0+b2JqLT5iYXNlKTsKKwkJcmluZ2J1Zi0+b2JqID0gTlVMTDsKKwl9CisJbGlzdF9kZWwoJnJp bmdidWYtPmxpbmspOworCWtmcmVlKHJpbmdidWYpOwogfQogCiBzdGF0aWMgaW50IGludGVsX2lu aXRfcmluZ19idWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKQEAgLTIxNzEsNiArMjE3MCwx MyBAQCBzdGF0aWMgaW50IGludGVsX2luaXRfcmluZ19idWZmZXIoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKIAl9CiAJcmluZy0+YnVmZmVyID0gcmluZ2J1ZjsKIAorCXJldCA9IGludGVsX3Bpbl9h bmRfbWFwX3JpbmdidWZmZXJfb2JqKGRldiwgcmluZ2J1Zik7CisJaWYgKHJldCkgeworCQlEUk1f RVJST1IoIkZhaWxlZCB0byBwaW4gYW5kIG1hcCByaW5nYnVmZmVyICVzOiAlZFxuIiwKKwkJCQly aW5nLT5uYW1lLCByZXQpOworCQlnb3RvIGVycm9yOworCX0KKwogCWlmIChJOTE1X05FRURfR0ZY X0hXUyhkZXYpKSB7CiAJCXJldCA9IGluaXRfc3RhdHVzX3BhZ2UocmluZyk7CiAJCWlmIChyZXQp CkBAIC0yMTgyLDE0ICsyMTg4LDYgQEAgc3RhdGljIGludCBpbnRlbF9pbml0X3JpbmdfYnVmZmVy KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQlnb3RvIGVycm9yOwogCX0KIAotCXJldCA9IGlu dGVsX3Bpbl9hbmRfbWFwX3JpbmdidWZmZXJfb2JqKGRldiwgcmluZ2J1Zik7Ci0JaWYgKHJldCkg ewotCQlEUk1fRVJST1IoIkZhaWxlZCB0byBwaW4gYW5kIG1hcCByaW5nYnVmZmVyICVzOiAlZFxu IiwKLQkJCQlyaW5nLT5uYW1lLCByZXQpOwotCQlpbnRlbF9kZXN0cm95X3JpbmdidWZmZXJfb2Jq KHJpbmdidWYpOwotCQlnb3RvIGVycm9yOwotCX0KLQogCXJldCA9IGk5MTVfY21kX3BhcnNlcl9p bml0X3JpbmcocmluZyk7CiAJaWYgKHJldCkKIAkJZ290byBlcnJvcjsKQEAgLTIyMDMsMTkgKzIy MDEsMTggQEAgc3RhdGljIGludCBpbnRlbF9pbml0X3JpbmdfYnVmZmVyKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCiAKIHZvaWQgaW50ZWxfY2xlYW51cF9yaW5nX2J1ZmZlcihzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICpyaW5nKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdjsK KwlzdHJ1Y3QgaW50ZWxfcmluZ2J1ZmZlciAqcmluZ2J1ZjsKIAogCWlmICghaW50ZWxfcmluZ19p bml0aWFsaXplZChyaW5nKSkKIAkJcmV0dXJuOwogCi0JZGV2X3ByaXYgPSB0b19pOTE1KHJpbmct PmRldik7Ci0KLQlpZiAocmluZy0+YnVmZmVyKSB7CisJcmluZ2J1ZiA9IHJpbmctPmJ1ZmZlcjsK KwlpZiAocmluZ2J1ZikgewogCQlpbnRlbF9zdG9wX3JpbmdfYnVmZmVyKHJpbmcpOwotCQlXQVJO X09OKCFJU19HRU4yKHJpbmctPmRldikgJiYgKEk5MTVfUkVBRF9NT0RFKHJpbmcpICYgTU9ERV9J RExFKSA9PSAwKTsKIAotCQlpbnRlbF91bnBpbl9yaW5nYnVmZmVyX29iaihyaW5nLT5idWZmZXIp OwotCQlpbnRlbF9yaW5nYnVmZmVyX2ZyZWUocmluZy0+YnVmZmVyKTsKKwkJaWYgKHJpbmdidWYt PnZpcnR1YWxfc3RhcnQpCisJCQlpbnRlbF91bnBpbl9yaW5nYnVmZmVyX29iaihyaW5nYnVmKTsK KwkJaW50ZWxfcmluZ2J1ZmZlcl9mcmVlKHJpbmdidWYpOwogCQlyaW5nLT5idWZmZXIgPSBOVUxM OwogCX0KIAotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==