diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2011-10-25 18:53:57 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-07-19 22:50:47 -0400 |
commit | 4c373790a4d4d667d1ab38b1fe2bbf6a8322e93b (patch) | |
tree | 19d122639cb74a5c2cc49f8e32fbea2d8b242053 | |
parent | b0071efe827f68cf173e1a8868b70618e9aca7d7 (diff) |
drm: ditch strange DRIVER_DMA_QUEUE only error bail-out
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>
-rw-r--r-- | 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 521152041691..32039553e172 100644 --- a/drivers/gpu/drm/drm_lock.c +++ b/drivers/gpu/drm/drm_lock.c | |||
@@ -70,10 +70,6 @@ int drm_lock(struct drm_device *dev, void *data, struct drm_file *file_priv) | |||
70 | lock->context, task_pid_nr(current), | 70 | lock->context, task_pid_nr(current), |
71 | master->lock.hw_lock->lock, lock->flags); | 71 | master->lock.hw_lock->lock, lock->flags); |
72 | 72 | ||
73 | if (drm_core_check_feature(dev, DRIVER_DMA_QUEUE)) | ||
74 | if (lock->context < 0) | ||
75 | return -EINVAL; | ||
76 | |||
77 | add_wait_queue(&master->lock.lock_queue, &entry); | 73 | add_wait_queue(&master->lock.lock_queue, &entry); |
78 | spin_lock_bh(&master->lock.spinlock); | 74 | spin_lock_bh(&master->lock.spinlock); |
79 | master->lock.user_waiters++; | 75 | master->lock.user_waiters++; |