summaryrefslogtreecommitdiff
path: root/linux/fops.c
diff options
context:
space:
mode:
authorDaryll Strauss <daryll@users.sourceforge.net>2000-01-12 21:47:44 +0000
committerDaryll Strauss <daryll@users.sourceforge.net>2000-01-12 21:47:44 +0000
commitaa724a52b9e3b5fa6a768629e2d403288432b7a8 (patch)
tree4942f6c4db16416111f46b0c9b88216e36dfbd22 /linux/fops.c
parente83ae7576bca0dc248a03c8031b0cce37956aac4 (diff)
Add a drm_poll function to the tdfx driver. This fixes the problem with
3.9.17 where the server hangs when the mouse is first moved.
Diffstat (limited to 'linux/fops.c')
-rw-r--r--linux/fops.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/linux/fops.c b/linux/fops.c
index 39bfdbb8..0bdf2135 100644
--- a/linux/fops.c
+++ b/linux/fops.c
@@ -25,7 +25,7 @@
* DEALINGS IN THE SOFTWARE.
*
* $PI: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c,v 1.3 1999/08/20 15:36:45 faith Exp $
- * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c,v 1.2 1999/12/14 01:33:56 robin Exp $
+ * $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/fops.c,v 1.1 1999/09/25 14:37:59 dawes Exp $
*
*/
@@ -221,3 +221,12 @@ int drm_write_string(drm_device_t *dev, const char *s)
wake_up_interruptible(&dev->buf_readers);
return 0;
}
+
+unsigned int drm_poll(struct file *filp, struct poll_table_struct *wait)
+{
+ drm_file_t *priv = filp->private_data;
+ drm_device_t *dev = priv->dev;
+ poll_wait(filp, &dev->buf_readers, wait);
+ if (dev->buf_wp != dev->buf_rp) return POLLIN | POLLRDNORM;
+ return 0;
+}