OSDN Git Service

[FreeBSD] Fix lock leak.
authorvehemens <vehemens@verizon.net>
Wed, 13 Aug 2008 21:17:05 +0000 (17:17 -0400)
committerRobert Noland <rnoland@2hip.net>
Sun, 24 Aug 2008 19:25:19 +0000 (15:25 -0400)
Signed-off-by: Robert Noland <rnoland@2hip.net>
bsd-core/drm_drv.c

index 771e555..d369af4 100644 (file)
@@ -600,9 +600,10 @@ error:
 #ifdef __FreeBSD__
        destroy_dev(dev->devnode);
 #if __FreeBSD_version >= 500000
+       mtx_destroy(&dev->tsk_lock);
        mtx_destroy(&dev->drw_lock);
-       mtx_destroy(&dev->irq_lock);
        mtx_destroy(&dev->vbl_lock);
+       mtx_destroy(&dev->irq_lock);
        mtx_destroy(&dev->dev_lock);
 #endif
 #endif
@@ -663,9 +664,10 @@ static void drm_unload(struct drm_device *dev)
                DRM_ERROR("Request to disable bus-master failed.\n");
 
 #if defined(__FreeBSD__) &&  __FreeBSD_version >= 500000
+       mtx_destroy(&dev->tsk_lock);
        mtx_destroy(&dev->drw_lock);
-       mtx_destroy(&dev->irq_lock);
        mtx_destroy(&dev->vbl_lock);
+       mtx_destroy(&dev->irq_lock);
        mtx_destroy(&dev->dev_lock);
 #endif
 }