Bugfixes.
authorThomas Hellstrom <thomas-at-tungstengraphics-dot-com>
Thu, 12 Oct 2006 14:10:47 +0000 (16:10 +0200)
committerThomas Hellstrom <thomas-at-tungstengraphics-dot-com>
Thu, 12 Oct 2006 14:10:47 +0000 (16:10 +0200)
linux-core/drm_agpsupport.c
linux-core/drm_bo.c

index 902b894..d9fd9c9 100644 (file)
@@ -559,7 +559,7 @@ int drm_agp_unbind_memory(DRM_AGP_MEM * handle)
  */
 
 static int drm_agp_needs_unbind_cache_adjust(drm_ttm_backend_t *backend) {
-       return ((backend->flags & DRM_BE_FLAG_BOUND_CACHED) ? 1 : 0);
+       return ((backend->flags & DRM_BE_FLAG_BOUND_CACHED) ? 0 : 1);
 }
 
 
index a84734a..c24f8d5 100644 (file)
@@ -1718,6 +1718,7 @@ int drm_mm_init_ioctl(DRM_IOCTL_ARGS)
                atomic_set(&bm->count, 0);
                bm->cur_pages = 0;
                bm->max_pages = arg.req.max_locked_pages;
+               mutex_unlock(&dev->struct_mutex);
                break;
        case mm_takedown:
                LOCK_TEST_WITH_RETURN(dev, filp);
@@ -1732,7 +1733,6 @@ int drm_mm_init_ioctl(DRM_IOCTL_ARGS)
                return -EINVAL;
        }
 
-       mutex_unlock(&dev->struct_mutex);
        if (ret)
                return ret;