From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukas Wunner Subject: [PATCH v7 3/3] drm/i915: Fix failure paths around initial fbdev allocation Date: Tue, 30 Jun 2015 10:06:27 +0100 Message-ID: <47d4e88c91b3bf0f7a280cabec54c8c8cf0cf6f2.1446892879.git.lukas@wunner.de> References: <20151030182818.GR16848@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mailout2.hostsharing.net (mailout2.hostsharing.net [83.223.90.233]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6D3C96E308 for ; Sat, 7 Nov 2015 07:40:36 -0800 (PST) In-Reply-To: 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: Jani Nikula List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGhhZCB0 d28gZmFpbHVyZSBtb2RlcyBoZXJlOgoKMS4KRGVhZGxvY2sgaW4gaW50ZWxmYl9hbGxvYyBmYWls dXJlIHBhdGggd2hlcmUgaXQgY2FsbHMKZHJtX2ZyYW1lYnVmZmVyX3JlbW92ZSwgd2hpY2ggZ3Jh YnMgdGhlIHN0cnVjdCBtdXRleCBhbmQgaW50ZWxmYl9jcmVhdGUKKGNhbGxlciBvZiBpbnRlbGZi X2FsbG9jKSB3YXMgYWxyZWFkeSBob2xkaW5nIGl0LgoKMi4KRGVhZGxvY2sgaW4gaW50ZWxmYl9j cmVhdGUgZmFpbHVyZSBwYXRoIHdoZXJlIGl0IGNhbGxzCmRybV9mcmFtZWJ1ZmZlcl91bnJlZmVy ZW5jZSwgd2hpY2ggZ3JhYnMgdGhlIHN0cnVjdCBtdXRleCBhbmQKaW50ZWxmYl9jcmVhdGUgd2Fz IGFscmVhZHkgaG9sZGluZyBpdC4KCltEYW5pZWwgVmV0dGVyIG9uIHdoeSBzdHJ1Y3RfbXV0ZXgg bmVlZHMgdG8gYmUgbG9ja2VkIGluIHRoZSBzZWNvbmQgaGFsZgpvZiBpbnRlbGZiX2NyZWF0ZTog IlRoZSB2bWEgW2ZvciB0aGUgZmJkZXZdIGlzIHBpbm5lZCwgdGhlIHByb2JsZW0gaXMKdGhhdCB3 ZSByZS1sb29rdXAgaXQgYSBmZXcgdGltZXMsIHdoaWNoIGlzIHJhY3kuIFdlIHNob3VsZCBpbnN0 ZWFkIHRyYWNrCnRoZSB2bWEgZGlyZWN0bHksIGJ1dCBvaCB3ZWxsIHdlIGRvbid0LiJdCgp2MjoK ICAgKiBSZWZvcm1hdCBjb21taXQgbXNnIHRvIDcyIGNoYXJzLiAoTHVrYXMgV3VubmVyKQogICAq IEFkZCB0aGlyZCBmYWlsdXJlIG1vZGUuIChMdWthcyBXdW5uZXIpCgp2NToKICAgKiBSZWJhc2Ug b24gZHJtLWludGVsLW5pZ2h0bHkgMjAxNXktMDltLTAxZC0wOWgtMDZtLTA4cyBVVEMsCiAgICAg cmVwaHJhc2UgY29tbWl0IG1lc3NhZ2UuIChKYW5pIE5pY3VsYSkKCnY2OgogICAqIEluIGludGVs ZmJfYWxsb2MsIGlmIF9faW50ZWxfZnJhbWVidWZmZXJfY3JlYXRlIGZhaWxlZCwKICAgICBmYiB3 aWxsIGJlIGFuIEVSUl9QVFIsIHRodXMgbm90IG51bGwuIFNvIGluIHRoZSBmYWlsdXJlCiAgICAg cGF0aCB3ZSBuZWVkIHRvIGNoZWNrIGZvciBJU19FUlJfT1JfTlVMTCB0byBhdm9pZCBjYWxsaW5n CiAgICAgZHJtX2ZyYW1lYnVmZmVyX3JlbW92ZSBvbiB0aGUgRVJSX1BUUi4gKEx1a2FzIFd1bm5l cikKICAgKiBTaW5jZSB0aGlzIGlzIGluaXQgY29kZSBhIGRybV9mcmFtZWJ1ZmZlcl91bnJlZmVy ZW5jZSBzaG91bGQKICAgICBiZSBhbGwgd2UgbmVlZC4gZHJtX2ZyYW1lYnVmZmVyX3JlbW92ZSBp cyBmb3IgZnJhbWVidWZmZXJzCiAgICAgdGhhdCB1c2Vyc3BhY2UgaGFzIGNyZWF0ZWQgLSBhbmQg aXMgZ2V0dGluZyBzb21ld2hhdAogICAgIGRlZmVhdHVyZWQuIChEYW5pZWwgVmV0dGVyKQoKdjc6 CiAgICogQ2xhcmlmeSB3aHkgc3RydWN0X211dGV4IG5lZWRzIHRvIGJlIGxvY2tlZCBpbiB0aGUg c2Vjb25kIGhhbGYKICAgICBvZiBpbnRlbGZiX2NyZWF0ZS4gKERhbmllbCBWZXR0ZXIpCgpGaXhl czogNjBhNWNhMDE1ZmZkICgiZHJtL2k5MTU6IEFkZCBsb2NraW5nIGFyb3VuZAogICAgZnJhbWVi dWZmZXJfcmVmZXJlbmNlcy0tIikKUmVwb3J0ZWQtYnk6IEx1a2FzIFd1bm5lciA8bHVrYXNAd3Vu bmVyLmRlPgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50 ZWwuY29tPgpbTHVrYXM6IENyZWF0ZSB2MyArIHY0ICsgdjUgKyB2NiArIHY3IGJhc2VkIG9uIFR2 cnRrbydzIHYyXQpTaWduZWQtb2ZmLWJ5OiBMdWthcyBXdW5uZXIgPGx1a2FzQHd1bm5lci5kZT4K Q2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogVmlsbGUgU3ly asOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IERhbmll bCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZmJkZXYuYyB8IDIwICsrKysrKysrKysrKy0tLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMTIgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9mYmRldi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZmJkZXYuYwppbmRleCAyMjQwZTcwLi5kYjgyYWQ0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9mYmRldi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Zi ZGV2LmMKQEAgLTExOSw3ICsxMTksNyBAQCBzdGF0aWMgaW50IGludGVsZmJfYWxsb2Moc3RydWN0 IGRybV9mYl9oZWxwZXIgKmhlbHBlciwKIHsKIAlzdHJ1Y3QgaW50ZWxfZmJkZXYgKmlmYmRldiA9 CiAJCWNvbnRhaW5lcl9vZihoZWxwZXIsIHN0cnVjdCBpbnRlbF9mYmRldiwgaGVscGVyKTsKLQlz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYjsKKwlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9 IE5VTEw7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGhlbHBlci0+ZGV2OwogCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKIAlzdHJ1Y3QgZHJtX21v ZGVfZmJfY21kMiBtb2RlX2NtZCA9IHt9OwpAQCAtMTM4LDYgKzEzOCw4IEBAIHN0YXRpYyBpbnQg aW50ZWxmYl9hbGxvYyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyLAogCW1vZGVfY21kLnBp eGVsX2Zvcm1hdCA9IGRybV9tb2RlX2xlZ2FjeV9mYl9mb3JtYXQoc2l6ZXMtPnN1cmZhY2VfYnBw LAogCQkJCQkJCSAgc2l6ZXMtPnN1cmZhY2VfZGVwdGgpOwogCisJbXV0ZXhfbG9jaygmZGV2LT5z dHJ1Y3RfbXV0ZXgpOworCiAJc2l6ZSA9IG1vZGVfY21kLnBpdGNoZXNbMF0gKiBtb2RlX2NtZC5o ZWlnaHQ7CiAJc2l6ZSA9IFBBR0VfQUxJR04oc2l6ZSk7CiAKQEAgLTE2NSwxNiArMTY3LDE5IEBA IHN0YXRpYyBpbnQgaW50ZWxmYl9hbGxvYyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyLAog CXJldCA9IGludGVsX3Bpbl9hbmRfZmVuY2VfZmJfb2JqKE5VTEwsIGZiLCBOVUxMKTsKIAlpZiAo cmV0KSB7CiAJCURSTV9FUlJPUigiZmFpbGVkIHRvIHBpbiBvYmo6ICVkXG4iLCByZXQpOwotCQln b3RvIG91dF9mYjsKKwkJZ290byBvdXQ7CiAJfQogCisJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVj dF9tdXRleCk7CisKIAlpZmJkZXYtPmZiID0gdG9faW50ZWxfZnJhbWVidWZmZXIoZmIpOwogCiAJ cmV0dXJuIDA7CiAKLW91dF9mYjoKLQlkcm1fZnJhbWVidWZmZXJfcmVtb3ZlKGZiKTsKIG91dDoK KwltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKKwlpZiAoIUlTX0VSUl9PUl9OVUxM KGZiKSkKKwkJZHJtX2ZyYW1lYnVmZmVyX3VucmVmZXJlbmNlKGZiKTsKIAlyZXR1cm4gcmV0Owog fQogCkBAIC0xOTIsOCArMTk3LDYgQEAgc3RhdGljIGludCBpbnRlbGZiX2NyZWF0ZShzdHJ1Y3Qg ZHJtX2ZiX2hlbHBlciAqaGVscGVyLAogCWludCBzaXplLCByZXQ7CiAJYm9vbCBwcmVhbGxvYyA9 IGZhbHNlOwogCi0JbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwotCiAJaWYgKGludGVs X2ZiICYmCiAJICAgIChzaXplcy0+ZmJfd2lkdGggPiBpbnRlbF9mYi0+YmFzZS53aWR0aCB8fAog CSAgICAgc2l6ZXMtPmZiX2hlaWdodCA+IGludGVsX2ZiLT5iYXNlLmhlaWdodCkpIHsKQEAgLTIw OCw3ICsyMTEsNyBAQCBzdGF0aWMgaW50IGludGVsZmJfY3JlYXRlKHN0cnVjdCBkcm1fZmJfaGVs cGVyICpoZWxwZXIsCiAJCURSTV9ERUJVR19LTVMoIm5vIEJJT1MgZmIsIGFsbG9jYXRpbmcgYSBu ZXcgb25lXG4iKTsKIAkJcmV0ID0gaW50ZWxmYl9hbGxvYyhoZWxwZXIsIHNpemVzKTsKIAkJaWYg KHJldCkKLQkJCWdvdG8gb3V0X3VubG9jazsKKwkJCXJldHVybiByZXQ7CiAJCWludGVsX2ZiID0g aWZiZGV2LT5mYjsKIAl9IGVsc2UgewogCQlEUk1fREVCVUdfS01TKCJyZS11c2luZyBCSU9TIGZi XG4iKTsKQEAgLTIyMCw2ICsyMjMsOCBAQCBzdGF0aWMgaW50IGludGVsZmJfY3JlYXRlKHN0cnVj dCBkcm1fZmJfaGVscGVyICpoZWxwZXIsCiAJb2JqID0gaW50ZWxfZmItPm9iajsKIAlzaXplID0g b2JqLT5iYXNlLnNpemU7CiAKKwltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CisKIAlp bmZvID0gZHJtX2ZiX2hlbHBlcl9hbGxvY19mYmkoaGVscGVyKTsKIAlpZiAoSVNfRVJSKGluZm8p KSB7CiAJCXJldCA9IFBUUl9FUlIoaW5mbyk7CkBAIC0yODEsNyArMjg2LDYgQEAgb3V0X2Rlc3Ry b3lfZmJpOgogb3V0X3VucGluOgogCWk5MTVfZ2VtX29iamVjdF9nZ3R0X3VucGluKG9iaik7CiAJ ZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7Ci1vdXRfdW5sb2NrOgogCW11 dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogCXJldHVybiByZXQ7CiB9Ci0tIAoxLjgu NS4yIChBcHBsZSBHaXQtNDgpCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo=