From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cihangir Akturk Subject: [PATCH] drm/i915: switch to drm_*_get(), drm_*_put() helpers Date: Sun, 13 Aug 2017 16:30:08 +0300 Message-ID: <1502631009-8927-1-git-send-email-cakturk@gmail.com> References: <20170811161143.m6vpsu6el23p2w6j@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170811161143.m6vpsu6el23p2w6j@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Cc: David Airlie , intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Cihangir Akturk , Daniel Vetter List-Id: dri-devel@lists.freedesktop.org VXNlIGRybV8qX2dldCgpIGFuZCBkcm1fKl9wdXQoKSBoZWxwZXJzIGluc3RlYWQgb2YgZHJtXypf cmVmZXJlbmNlKCkKYW5kIGRybV8qX3VucmVmZXJlbmNlKCkgaGVscGVycy4KCmRybV8qX3JlZmVy ZW5jZSgpIGFuZCBkcm1fKl91bnJlZmVyZW5jZSgpIGZ1bmN0aW9ucyBhcmUganVzdApjb21wYXRp YmlsaXR5IGFsaWFzIGZvciBkcm1fKl9nZXQoKSBhbmQgZHJtXypfcHV0KCkgYW5kIHNob3VsZCBu b3QgYmUKdXNlZCBieSBuZXcgY29kZS4gU28gY29udmVydCBhbGwgdXNlcnMgb2YgY29tcGF0aWJp bGl0eSBmdW5jdGlvbnMgdG8KdXNlIHRoZSBuZXcgQVBJcy4KCkdlbmVyYXRlZCBieTogc2NyaXB0 cy9jb2NjaW5lbGxlL2FwaS9kcm0tZ2V0LXB1dC5jb2NjaQoKU2lnbmVkLW9mZi1ieTogQ2loYW5n aXIgQWt0dXJrIDxjYWt0dXJrQGdtYWlsLmNvbT4KLS0tCgpUaGlzIHBhdGNoIHdhcyBnZW5lcmF0 ZWQgYWdhaW5zdCAqZHJtLXRpcCouCgpJZiBuZWVkZWQsIEkgY2FuIHJlLWdlbmVyYXRlIHRoZSB3 aG9sZSBzZXJpZXMgYWdhaW5zdCAqZHJtLXRpcCogYW5kCnJlc2VuZC4KCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9vYmplY3QuaCB8ICA0ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYyAgIHwgMTQgKysrKysrKy0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RwX21zdC5jICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2ZiZGV2LmMgICAgIHwgIDQgKystLQogNCBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCsp LCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9vYmplY3QuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX29iamVjdC5oCmlu ZGV4IDViMTlhNDkuLjk1Y2ZiNjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX29iamVjdC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX29iamVj dC5oCkBAIC0yNTcsNyArMjU3LDcgQEAgX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpCiBzdGF0aWMg aW5saW5lIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKIGk5MTVfZ2VtX29iamVjdF9nZXQo c3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKIHsKLQlkcm1fZ2VtX29iamVjdF9yZWZl cmVuY2UoJm9iai0+YmFzZSk7CisJZHJtX2dlbV9vYmplY3RfZ2V0KCZvYmotPmJhc2UpOwogCXJl dHVybiBvYmo7CiB9CiAKQEAgLTI2OCw3ICsyNjgsNyBAQCBfX2F0dHJpYnV0ZV9fKChub25udWxs KSkKIHN0YXRpYyBpbmxpbmUgdm9pZAogaTkxNV9nZW1fb2JqZWN0X3B1dChzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqKQogewotCV9fZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9i ai0+YmFzZSk7CisJX19kcm1fZ2VtX29iamVjdF9wdXQoJm9iai0+YmFzZSk7CiB9CiAKIF9fZGVw cmVjYXRlZApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IGJlZmYxMzguLmY5 MTQyZmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTI4MzIsNyArMjgz Miw3IEBAIGludGVsX2ZpbmRfaW5pdGlhbF9wbGFuZV9vYmooc3RydWN0IGludGVsX2NydGMgKmlu dGVsX2NydGMsCiAKIAkJaWYgKGludGVsX3BsYW5lX2dndHRfb2Zmc2V0KHN0YXRlKSA9PSBwbGFu ZV9jb25maWctPmJhc2UpIHsKIAkJCWZiID0gYy0+cHJpbWFyeS0+ZmI7Ci0JCQlkcm1fZnJhbWVi dWZmZXJfcmVmZXJlbmNlKGZiKTsKKwkJCWRybV9mcmFtZWJ1ZmZlcl9nZXQoZmIpOwogCQkJZ290 byB2YWxpZF9mYjsKIAkJfQogCX0KQEAgLTI4NjMsNyArMjg2Myw3IEBAIGludGVsX2ZpbmRfaW5p dGlhbF9wbGFuZV9vYmooc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCiAJCQkgIGludGVs X2NydGMtPnBpcGUsIFBUUl9FUlIoaW50ZWxfc3RhdGUtPnZtYSkpOwogCiAJCWludGVsX3N0YXRl LT52bWEgPSBOVUxMOwotCQlkcm1fZnJhbWVidWZmZXJfdW5yZWZlcmVuY2UoZmIpOworCQlkcm1f ZnJhbWVidWZmZXJfcHV0KGZiKTsKIAkJcmV0dXJuOwogCX0KIApAQCAtMjg4NCw3ICsyODg0LDcg QEAgaW50ZWxfZmluZF9pbml0aWFsX3BsYW5lX29iaihzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxf Y3J0YywKIAlpZiAoaTkxNV9nZW1fb2JqZWN0X2lzX3RpbGVkKG9iaikpCiAJCWRldl9wcml2LT5w cmVzZXJ2ZV9iaW9zX3N3aXp6bGUgPSB0cnVlOwogCi0JZHJtX2ZyYW1lYnVmZmVyX3JlZmVyZW5j ZShmYik7CisJZHJtX2ZyYW1lYnVmZmVyX2dldChmYik7CiAJcHJpbWFyeS0+ZmIgPSBwcmltYXJ5 LT5zdGF0ZS0+ZmIgPSBmYjsKIAlwcmltYXJ5LT5jcnRjID0gcHJpbWFyeS0+c3RhdGUtPmNydGMg PSAmaW50ZWxfY3J0Yy0+YmFzZTsKIApAQCAtOTgxMSw3ICs5ODExLDcgQEAgbW9kZV9maXRzX2lu X2ZiZGV2KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJaWYgKG9iai0+YmFzZS5zaXplIDwgbW9k ZS0+dmRpc3BsYXkgKiBmYi0+cGl0Y2hlc1swXSkKIAkJcmV0dXJuIE5VTEw7CiAKLQlkcm1fZnJh bWVidWZmZXJfcmVmZXJlbmNlKGZiKTsKKwlkcm1fZnJhbWVidWZmZXJfZ2V0KGZiKTsKIAlyZXR1 cm4gZmI7CiAjZWxzZQogCXJldHVybiBOVUxMOwpAQCAtOTk5Miw3ICs5OTkyLDcgQEAgaW50IGlu dGVsX2dldF9sb2FkX2RldGVjdF9waXBlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is CiAJaWYgKHJldCkKIAkJZ290byBmYWlsOwogCi0JZHJtX2ZyYW1lYnVmZmVyX3VucmVmZXJlbmNl KGZiKTsKKwlkcm1fZnJhbWVidWZmZXJfcHV0KGZiKTsKIAogCXJldCA9IGRybV9hdG9taWNfc2V0 X21vZGVfZm9yX2NydGMoJmNydGNfc3RhdGUtPmJhc2UsIG1vZGUpOwogCWlmIChyZXQpCkBAIC0x MDU0Miw3ICsxMDU0Miw3IEBAIHN0YXRpYyB2b2lkIGludGVsX21vZGVzZXRfdXBkYXRlX2Nvbm5l Y3Rvcl9hdG9taWNfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlkcm1fY29ubmVjdG9y X2xpc3RfaXRlcl9iZWdpbihkZXYsICZjb25uX2l0ZXIpOwogCWZvcl9lYWNoX2ludGVsX2Nvbm5l Y3Rvcl9pdGVyKGNvbm5lY3RvciwgJmNvbm5faXRlcikgewogCQlpZiAoY29ubmVjdG9yLT5iYXNl LnN0YXRlLT5jcnRjKQotCQkJZHJtX2Nvbm5lY3Rvcl91bnJlZmVyZW5jZSgmY29ubmVjdG9yLT5i YXNlKTsKKwkJCWRybV9jb25uZWN0b3JfcHV0KCZjb25uZWN0b3ItPmJhc2UpOwogCiAJCWlmIChj b25uZWN0b3ItPmJhc2UuZW5jb2RlcikgewogCQkJY29ubmVjdG9yLT5iYXNlLnN0YXRlLT5iZXN0 X2VuY29kZXIgPQpAQCAtMTA1NTAsNyArMTA1NTAsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rl c2V0X3VwZGF0ZV9jb25uZWN0b3JfYXRvbWljX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp CiAJCQljb25uZWN0b3ItPmJhc2Uuc3RhdGUtPmNydGMgPQogCQkJCWNvbm5lY3Rvci0+YmFzZS5l bmNvZGVyLT5jcnRjOwogCi0JCQlkcm1fY29ubmVjdG9yX3JlZmVyZW5jZSgmY29ubmVjdG9yLT5i YXNlKTsKKwkJCWRybV9jb25uZWN0b3JfZ2V0KCZjb25uZWN0b3ItPmJhc2UpOwogCQl9IGVsc2Ug ewogCQkJY29ubmVjdG9yLT5iYXNlLnN0YXRlLT5iZXN0X2VuY29kZXIgPSBOVUxMOwogCQkJY29u bmVjdG9yLT5iYXNlLnN0YXRlLT5jcnRjID0gTlVMTDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RwX21zdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBf bXN0LmMKaW5kZXggOTNmYzhhYi4uMjA5MmFiMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHBfbXN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBf bXN0LmMKQEAgLTUwNCw3ICs1MDQsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9kZXN0cm95X21z dF9jb25uZWN0b3Ioc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiAJaW50ZWxf Y29ubmVjdG9yLT5tc3RfcG9ydCA9IE5VTEw7CiAJZHJtX21vZGVzZXRfdW5sb2NrKCZjb25uZWN0 b3ItPmRldi0+bW9kZV9jb25maWcuY29ubmVjdGlvbl9tdXRleCk7CiAKLQlkcm1fY29ubmVjdG9y X3VucmVmZXJlbmNlKGNvbm5lY3Rvcik7CisJZHJtX2Nvbm5lY3Rvcl9wdXQoY29ubmVjdG9yKTsK IAlEUk1fREVCVUdfS01TKCJcbiIpOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9mYmRldi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJkZXYuYwpp bmRleCAyNjJlNzVjLi5lMzQzMzRhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9mYmRldi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMKQEAg LTE4OSw3ICsxODksNyBAQCBzdGF0aWMgaW50IGludGVsZmJfY3JlYXRlKHN0cnVjdCBkcm1fZmJf aGVscGVyICpoZWxwZXIsCiAJCQkgICAgICAiIHJlbGVhc2luZyBpdFxuIiwKIAkJCSAgICAgIGlu dGVsX2ZiLT5iYXNlLndpZHRoLCBpbnRlbF9mYi0+YmFzZS5oZWlnaHQsCiAJCQkgICAgICBzaXpl cy0+ZmJfd2lkdGgsIHNpemVzLT5mYl9oZWlnaHQpOwotCQlkcm1fZnJhbWVidWZmZXJfdW5yZWZl cmVuY2UoJmludGVsX2ZiLT5iYXNlKTsKKwkJZHJtX2ZyYW1lYnVmZmVyX3B1dCgmaW50ZWxfZmIt PmJhc2UpOwogCQlpbnRlbF9mYiA9IGlmYmRldi0+ZmIgPSBOVUxMOwogCX0KIAlpZiAoIWludGVs X2ZiIHx8IFdBUk5fT04oIWludGVsX2ZiLT5vYmopKSB7CkBAIC02MjQsNyArNjI0LDcgQEAgc3Rh dGljIGJvb2wgaW50ZWxfZmJkZXZfaW5pdF9iaW9zKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJ aWZiZGV2LT5wcmVmZXJyZWRfYnBwID0gZmItPmJhc2UuZm9ybWF0LT5jcHBbMF0gKiA4OwogCWlm YmRldi0+ZmIgPSBmYjsKIAotCWRybV9mcmFtZWJ1ZmZlcl9yZWZlcmVuY2UoJmlmYmRldi0+ZmIt PmJhc2UpOworCWRybV9mcmFtZWJ1ZmZlcl9nZXQoJmlmYmRldi0+ZmItPmJhc2UpOwogCiAJLyog RmluYWwgcGFzcyB0byBjaGVjayBpZiBhbnkgYWN0aXZlIHBpcGVzIGRvbid0IGhhdmUgZmJzICov CiAJZm9yX2VhY2hfY3J0YyhkZXYsIGNydGMpIHsKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751896AbdHMNa0 (ORCPT ); Sun, 13 Aug 2017 09:30:26 -0400 Received: from mail-wr0-f193.google.com ([209.85.128.193]:37415 "EHLO mail-wr0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751040AbdHMNaY (ORCPT ); Sun, 13 Aug 2017 09:30:24 -0400 From: Cihangir Akturk Cc: Cihangir Akturk , Daniel Vetter , Jani Nikula , David Airlie , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH] drm/i915: switch to drm_*_get(), drm_*_put() helpers Date: Sun, 13 Aug 2017 16:30:08 +0300 Message-Id: <1502631009-8927-1-git-send-email-cakturk@gmail.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <20170811161143.m6vpsu6el23p2w6j@phenom.ffwll.local> References: <20170811161143.m6vpsu6el23p2w6j@phenom.ffwll.local> To: unlisted-recipients:; (no To-header on input) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Use drm_*_get() and drm_*_put() helpers instead of drm_*_reference() and drm_*_unreference() helpers. drm_*_reference() and drm_*_unreference() functions are just compatibility alias for drm_*_get() and drm_*_put() and should not be used by new code. So convert all users of compatibility functions to use the new APIs. Generated by: scripts/coccinelle/api/drm-get-put.cocci Signed-off-by: Cihangir Akturk --- This patch was generated against *drm-tip*. If needed, I can re-generate the whole series against *drm-tip* and resend. drivers/gpu/drm/i915/i915_gem_object.h | 4 ++-- drivers/gpu/drm/i915/intel_display.c | 14 +++++++------- drivers/gpu/drm/i915/intel_dp_mst.c | 2 +- drivers/gpu/drm/i915/intel_fbdev.c | 4 ++-- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem_object.h b/drivers/gpu/drm/i915/i915_gem_object.h index 5b19a49..95cfb64 100644 --- a/drivers/gpu/drm/i915/i915_gem_object.h +++ b/drivers/gpu/drm/i915/i915_gem_object.h @@ -257,7 +257,7 @@ __attribute__((nonnull)) static inline struct drm_i915_gem_object * i915_gem_object_get(struct drm_i915_gem_object *obj) { - drm_gem_object_reference(&obj->base); + drm_gem_object_get(&obj->base); return obj; } @@ -268,7 +268,7 @@ __attribute__((nonnull)) static inline void i915_gem_object_put(struct drm_i915_gem_object *obj) { - __drm_gem_object_unreference(&obj->base); + __drm_gem_object_put(&obj->base); } __deprecated diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index beff138..f9142ff 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -2832,7 +2832,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc, if (intel_plane_ggtt_offset(state) == plane_config->base) { fb = c->primary->fb; - drm_framebuffer_reference(fb); + drm_framebuffer_get(fb); goto valid_fb; } } @@ -2863,7 +2863,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc, intel_crtc->pipe, PTR_ERR(intel_state->vma)); intel_state->vma = NULL; - drm_framebuffer_unreference(fb); + drm_framebuffer_put(fb); return; } @@ -2884,7 +2884,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc, if (i915_gem_object_is_tiled(obj)) dev_priv->preserve_bios_swizzle = true; - drm_framebuffer_reference(fb); + drm_framebuffer_get(fb); primary->fb = primary->state->fb = fb; primary->crtc = primary->state->crtc = &intel_crtc->base; @@ -9811,7 +9811,7 @@ mode_fits_in_fbdev(struct drm_device *dev, if (obj->base.size < mode->vdisplay * fb->pitches[0]) return NULL; - drm_framebuffer_reference(fb); + drm_framebuffer_get(fb); return fb; #else return NULL; @@ -9992,7 +9992,7 @@ int intel_get_load_detect_pipe(struct drm_connector *connector, if (ret) goto fail; - drm_framebuffer_unreference(fb); + drm_framebuffer_put(fb); ret = drm_atomic_set_mode_for_crtc(&crtc_state->base, mode); if (ret) @@ -10542,7 +10542,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev) drm_connector_list_iter_begin(dev, &conn_iter); for_each_intel_connector_iter(connector, &conn_iter) { if (connector->base.state->crtc) - drm_connector_unreference(&connector->base); + drm_connector_put(&connector->base); if (connector->base.encoder) { connector->base.state->best_encoder = @@ -10550,7 +10550,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev) connector->base.state->crtc = connector->base.encoder->crtc; - drm_connector_reference(&connector->base); + drm_connector_get(&connector->base); } else { connector->base.state->best_encoder = NULL; connector->base.state->crtc = NULL; diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c index 93fc8ab..2092ab1 100644 --- a/drivers/gpu/drm/i915/intel_dp_mst.c +++ b/drivers/gpu/drm/i915/intel_dp_mst.c @@ -504,7 +504,7 @@ static void intel_dp_destroy_mst_connector(struct drm_dp_mst_topology_mgr *mgr, intel_connector->mst_port = NULL; drm_modeset_unlock(&connector->dev->mode_config.connection_mutex); - drm_connector_unreference(connector); + drm_connector_put(connector); DRM_DEBUG_KMS("\n"); } diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c index 262e75c..e34334a 100644 --- a/drivers/gpu/drm/i915/intel_fbdev.c +++ b/drivers/gpu/drm/i915/intel_fbdev.c @@ -189,7 +189,7 @@ static int intelfb_create(struct drm_fb_helper *helper, " releasing it\n", intel_fb->base.width, intel_fb->base.height, sizes->fb_width, sizes->fb_height); - drm_framebuffer_unreference(&intel_fb->base); + drm_framebuffer_put(&intel_fb->base); intel_fb = ifbdev->fb = NULL; } if (!intel_fb || WARN_ON(!intel_fb->obj)) { @@ -624,7 +624,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev, ifbdev->preferred_bpp = fb->base.format->cpp[0] * 8; ifbdev->fb = fb; - drm_framebuffer_reference(&ifbdev->fb->base); + drm_framebuffer_get(&ifbdev->fb->base); /* Final pass to check if any active pipes don't have fbs */ for_each_crtc(dev, crtc) { -- 2.7.4