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.vet...@ffwll.ch>
---
 drivers/gpu/drm/drm_lock.c |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_lock.c b/drivers/gpu/drm/drm_lock.c
index b107e1d..37822d1 100644
--- a/drivers/gpu/drm/drm_lock.c
+++ b/drivers/gpu/drm/drm_lock.c
@@ -69,10 +69,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++;
-- 
1.7.7.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to