drm: fix quiescent locking
authorDave Airlie <airlied@starflyer.(none)>
Thu, 24 Nov 2005 10:41:14 +0000 (21:41 +1100)
committerDave Airlie <airlied@linux.ie>
Thu, 24 Nov 2005 10:41:14 +0000 (21:41 +1100)
commitcf65f1623dd005ddfb1cbba20af3423a6c638dbe
treeaa1a69092764317ff9ac49c25be5e423882b90d6
parent33bc227e4e48ddadcf2eacb381c19df338f0a6c8
drm: fix quiescent locking

A fix for a locking bug which is triggered when a client tries to lock with
flag DMA_QUIESCENT (typically the X server), but gets interrupted by a signal.
The locking IOCTL should then return an error, but if DMA_QUIESCENT succeeds
it returns 0, and the client falsely thinks it has the lock. In addition
The client waits for DMA_QUISCENT and possibly DMA_READY without having the lock.

From: Thomas Hellstrom
Signed-off-by: Dave Airlie <airlied@linux.ie>
drivers/char/drm/drm_lock.c