From: Thomas Hellstrom Date: Wed, 31 Jan 2007 10:03:53 +0000 (+0100) Subject: Fix an error-path oops. X-Git-Tag: submit/1.0/20121108.012404~1220 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=36d50687dd88e0e42cf2adfd8ff81a160765e12a;p=profile%2Fivi%2Flibdrm.git Fix an error-path oops. --- diff --git a/linux-core/drm_bo.c b/linux-core/drm_bo.c index 7439e27..2b960c7 100644 --- a/linux-core/drm_bo.c +++ b/linux-core/drm_bo.c @@ -373,11 +373,13 @@ static void drm_bo_base_deref_locked(drm_file_t * priv, drm_user_object_t * uo) static void drm_bo_usage_deref_unlocked(drm_buffer_object_t * bo) { + drm_device_t *dev = bo->dev; + if (atomic_dec_and_test(&bo->usage)) { - mutex_lock(&bo->dev->struct_mutex); + mutex_lock(&dev->struct_mutex); if (atomic_read(&bo->usage) == 0) drm_bo_destroy_locked(bo); - mutex_unlock(&bo->dev->struct_mutex); + mutex_unlock(&dev->struct_mutex); } }