From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukas Wunner Subject: [PATCH v5 2/2] drm/i915: On fb alloc failure, unref gem object where it gets refed Date: Sat, 4 Jul 2015 11:50:58 +0200 Message-ID: <521e48fc5fc8d211ed2847070120ff4032b7a383.1441363361.git.lukas@wunner.de> References: 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 703507A19B for ; Fri, 4 Sep 2015 07:01:06 -0700 (PDT) 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 Q3VycmVudGx5IHdoZW4gYWxsb2NhdGluZyBhIGZyYW1lYnVmZmVyIGZhaWxzLCB0aGUgZ2VtIG9i amVjdCBnZXRzCnVucmVmZWQgYXQgdGhlIGJvdHRvbSBvZiB0aGUgY2FsbCBjaGFpbiBpbiBfX2lu dGVsX2ZyYW1lYnVmZmVyX2NyZWF0ZSwKbm90IHdoZXJlIGl0IGdldHMgcmVmZWQsIHdoaWNoIGlz IGluIGludGVsX2ZyYW1lYnVmZmVyX2NyZWF0ZV9mb3JfbW9kZQoodmlhIGk5MTVfZ2VtX2FsbG9j X29iamVjdCkgYW5kIGluIGludGVsX3VzZXJfZnJhbWVidWZmZXJfY3JlYXRlCih2aWEgZHJtX2dl bV9vYmplY3RfbG9va3VwKS4KClRoaXMgaW52aXRlcyBtaXN0YWtlczogQXMgZGlzY292ZXJlZCBi eSBUdnJ0a28gVXJzdWxpbiwgYSBkb3VibGUgdW5yZWYKaGFzIHNuZWFrZWQgaW50byBpbnRlbGZi X2FsbG9jICh3aGljaCBjYWxscyBfX2ludGVsX2ZyYW1lYnVmZmVyX2NyZWF0ZSkuCgpBcyBzdWdn ZXN0ZWQgYnkgVmlsbGUgU3lyasOkbMOkLCBpbXByb3ZlIGNvZGUgY2xhcml0eSBieSBtb3Zpbmcg dGhlIHVucmVmCmF3YXkgZnJvbSBfX2ludGVsX2ZyYW1lYnVmZmVyX2NyZWF0ZSB0byB3aGVyZSB0 aGUgZ2VtIG9iamVjdCBnZXRzIHJlZmVkLgoKW0NoYW5nZWxvZyBpcyBpbiBwcmVjZWRpbmcgcGF0 Y2ggYnkgVHZydGtvIFVyc3VsaW4uXQoKVGVzdGVkLWJ5OiBQaWVycmUgTW9yZWF1IDxwaWVycmUu bW9ycm93QGZyZWUuZnI+CiAgICBbTUJQICA1LDMgMjAwOSAgbnZpZGlhIDk0MDBNICsgOTYwME0g R1QgICBwcmUtcmV0aW5hXQpUZXN0ZWQtYnk6IFBhdWwgSG9yZGlpZW5rbyA8cHZ0LmdvcmRAZ21h aWwuY29tPgogICAgW01CUCAgNiwyIDIwMTAgIGludGVsIElMSyArIG52aWRpYSBHVDIxNiAgcHJl LXJldGluYV0KVGVzdGVkLWJ5OiBXaWxsaWFtIEJyb3duIDx3aWxsaWFtQGJsYWNraGF0cy5uZXQu YXU+CiAgICBbTUJQICA4LDIgMjAxMSAgaW50ZWwgU05CICsgYW1kIHR1cmtzICAgICBwcmUtcmV0 aW5hXQpUZXN0ZWQtYnk6IEx1a2FzIFd1bm5lciA8bHVrYXNAd3VubmVyLmRlPgogICAgW01CUCAg OSwxIDIwMTIgIGludGVsIElWQiArIG52aWRpYSBHSzEwNyAgcHJlLXJldGluYV0KVGVzdGVkLWJ5 OiBCcnVubyBCaWVyYmF1bWVyIDxicnVub0BiaWVyYmF1bWVyLm5ldD4KICAgIFtNQlAgMTEsMyAy MDEzICBpbnRlbCBIU1cgKyBudmlkaWEgR0sxMDcgIHJldGluYV0KClNpZ25lZC1vZmYtYnk6IEx1 a2FzIFd1bm5lciA8bHVrYXNAd3VubmVyLmRlPgpGaXhlczogYThiYjY4MTgyNzBjICgiZHJtL2k5 MTU6IEZpeCBlcnJvciBwYXRoIGxlYWsgaW4gZmJkZXYgZmIKICAgIGFsbG9jYXRpb24iKQpDYzog Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBUdnJ0a28gVXJzdWxp biA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5z eXJqYWxhQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmMgfCAyMSArKysrKysrKysrKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNCBp bnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwppbmRleCA0MjFhYzE1Li42OGQwNTFkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlz cGxheS5jCkBAIC0xMDAzMywyMCArMTAwMzMsMTcgQEAgX19pbnRlbF9mcmFtZWJ1ZmZlcl9jcmVh dGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlpbnQgcmV0OwogCiAJaW50ZWxfZmIgPSBremFs bG9jKHNpemVvZigqaW50ZWxfZmIpLCBHRlBfS0VSTkVMKTsKLQlpZiAoIWludGVsX2ZiKSB7Ci0J CWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlKCZvYmotPmJhc2UpOworCWlmICghaW50ZWxfZmIp CiAJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwotCX0KIAogCXJldCA9IGludGVsX2ZyYW1lYnVm ZmVyX2luaXQoZGV2LCBpbnRlbF9mYiwgbW9kZV9jbWQsIG9iaik7CiAJaWYgKHJldCkKIAkJZ290 byBlcnI7CiAKIAlyZXR1cm4gJmludGVsX2ZiLT5iYXNlOworCiBlcnI6Ci0JZHJtX2dlbV9vYmpl Y3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7CiAJa2ZyZWUoaW50ZWxfZmIpOwotCiAJcmV0dXJu IEVSUl9QVFIocmV0KTsKIH0KIApAQCAtMTAwODYsNiArMTAwODMsNyBAQCBpbnRlbF9mcmFtZWJ1 ZmZlcl9jcmVhdGVfZm9yX21vZGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkgIHN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAogCQkJCSAgaW50IGRlcHRoLCBpbnQgYnBwKQogewor CXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiOwogCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmo7CiAJc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgbW9kZV9jbWQgPSB7IDAgfTsKIApAQCAt MTAxMDAsNyArMTAwOTgsMTEgQEAgaW50ZWxfZnJhbWVidWZmZXJfY3JlYXRlX2Zvcl9tb2RlKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJCQkJCWJwcCk7CiAJbW9kZV9jbWQucGl4ZWxfZm9y bWF0ID0gZHJtX21vZGVfbGVnYWN5X2ZiX2Zvcm1hdChicHAsIGRlcHRoKTsKIAotCXJldHVybiBp bnRlbF9mcmFtZWJ1ZmZlcl9jcmVhdGUoZGV2LCAmbW9kZV9jbWQsIG9iaik7CisJZmIgPSBpbnRl bF9mcmFtZWJ1ZmZlcl9jcmVhdGUoZGV2LCAmbW9kZV9jbWQsIG9iaik7CisJaWYgKElTX0VSUihm YikpCisJCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKCZvYmotPmJhc2UpOwor CisJcmV0dXJuIGZiOwogfQogCiBzdGF0aWMgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqCkBAIC0x NDI4OSw2ICsxNDI5MSw3IEBAIGludGVsX3VzZXJfZnJhbWVidWZmZXJfY3JlYXRlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiAJCQkgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHAsCiAJCQkgICAg ICBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kMiAqbW9kZV9jbWQpCiB7CisJc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqZmI7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKIAogCW9iaiA9 IHRvX2ludGVsX2JvKGRybV9nZW1fb2JqZWN0X2xvb2t1cChkZXYsIGZpbHAsCkBAIC0xNDI5Niw3 ICsxNDI5OSwxMSBAQCBpbnRlbF91c2VyX2ZyYW1lYnVmZmVyX2NyZWF0ZShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCWlmICgmb2JqLT5iYXNlID09IE5VTEwpCiAJCXJldHVybiBFUlJfUFRSKC1F Tk9FTlQpOwogCi0JcmV0dXJuIGludGVsX2ZyYW1lYnVmZmVyX2NyZWF0ZShkZXYsIG1vZGVfY21k LCBvYmopOworCWZiID0gaW50ZWxfZnJhbWVidWZmZXJfY3JlYXRlKGRldiwgbW9kZV9jbWQsIG9i aik7CisJaWYgKElTX0VSUihmYikpCisJCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9j a2VkKCZvYmotPmJhc2UpOworCisJcmV0dXJuIGZiOwogfQogCiAjaWZuZGVmIENPTkZJR19EUk1f RkJERVZfRU1VTEFUSU9OCi0tIAoyLjEuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK