drm/radeon/kms: Fix radeon_gem_busy_ioctl harder.
authorMichel Dänzer <daenzer@vmware.com>
Sat, 22 Aug 2009 15:38:23 +0000 (17:38 +0200)
committerDave Airlie <airlied@redhat.com>
Sun, 23 Aug 2009 01:36:13 +0000 (11:36 +1000)
It was mixing up TTM placement values and flags.

Signed-off-by: Michel Dänzer <daenzer@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/radeon_gem.c

index 14c199802920920fbd2fd1f33b52d0e3c0b45652..d880edf254dbad63a73e99ee7c05de40757e9ecc 100644 (file)
@@ -274,12 +274,18 @@ int radeon_gem_busy_ioctl(struct drm_device *dev, void *data,
        }
        robj = gobj->driver_private;
        r = radeon_object_busy_domain(robj, &cur_placement);
-       if (cur_placement == TTM_PL_VRAM)
+       switch (cur_placement) {
+       case TTM_PL_VRAM:
                args->domain = RADEON_GEM_DOMAIN_VRAM;
-       if (cur_placement == TTM_PL_FLAG_TT)
+               break;
+       case TTM_PL_TT:
                args->domain = RADEON_GEM_DOMAIN_GTT;
-       if (cur_placement == TTM_PL_FLAG_SYSTEM)
+               break;
+       case TTM_PL_SYSTEM:
                args->domain = RADEON_GEM_DOMAIN_CPU;
+       default:
+               break;
+       }
        mutex_lock(&dev->struct_mutex);
        drm_gem_object_unreference(gobj);
        mutex_unlock(&dev->struct_mutex);