drm: ditch strange DRIVER_DMA_QUEUE only error bail-out
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 25 Oct 2011 22:53:57 +0000 (00:53 +0200)
committerDave Airlie <airlied@redhat.com>
Fri, 20 Jul 2012 02:50:47 +0000 (22:50 -0400)
Only one driver (i810) even sets that flag. Now the actual locking
code uncoditionally promotes lock->context to an unsigned int.

Closer inspection of the userspace reveals that the drm lock context
is defined as an unsigned int (at least on linux). I suspect we just
have a strange case of signedness confusion going on.

Tested on my i815, doesn't seem to break anything.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/drm_lock.c

index 5211520416911bfff0b4339c83cd3a9e6856248a..32039553e172f557fa7c53f232cbc6406201173c 100644 (file)
@@ -70,10 +70,6 @@ int drm_lock(struct drm_device *dev, void *data, struct drm_file *file_priv)
                  lock->context, task_pid_nr(current),
                  master->lock.hw_lock->lock, lock->flags);
 
-       if (drm_core_check_feature(dev, DRIVER_DMA_QUEUE))
-               if (lock->context < 0)
-                       return -EINVAL;
-
        add_wait_queue(&master->lock.lock_queue, &entry);
        spin_lock_bh(&master->lock.spinlock);
        master->lock.user_waiters++;