From 3aef3841d0c8099a97a56a285f0a21d9147405bd Mon Sep 17 00:00:00 2001 From: Jon Smirl Date: Thu, 30 Sep 2004 18:13:33 +0000 Subject: Make fops per driver instead of global, remove default flush, poll, read functions --- linux-core/i830_dma.c | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) (limited to 'linux-core/i830_dma.c') diff --git a/linux-core/i830_dma.c b/linux-core/i830_dma.c index 9f2c22e2..835f675e 100644 --- a/linux-core/i830_dma.c +++ b/linux-core/i830_dma.c @@ -110,15 +110,6 @@ static int i830_freelist_put(drm_device_t *dev, drm_buf_t *buf) return 0; } -static struct file_operations i830_buffer_fops = { - .open = drm_open, - .flush = drm_flush, - .release = drm_release, - .ioctl = drm_ioctl, - .mmap = i830_mmap_buffers, - .fasync = drm_fasync, -}; - int i830_mmap_buffers(struct file *filp, struct vm_area_struct *vma) { drm_file_t *priv = filp->private_data; @@ -152,20 +143,17 @@ static int i830_map_buffer(drm_buf_t *buf, struct file *filp) drm_device_t *dev = priv->dev; drm_i830_buf_priv_t *buf_priv = buf->dev_private; drm_i830_private_t *dev_priv = dev->dev_private; - struct file_operations *old_fops; unsigned long virtual; int retcode = 0; if(buf_priv->currently_mapped == I830_BUF_MAPPED) return -EINVAL; down_write( ¤t->mm->mmap_sem ); - old_fops = filp->f_op; - filp->f_op = &i830_buffer_fops; dev_priv->mmap_buffer = buf; virtual = do_mmap(filp, 0, buf->total, PROT_READ|PROT_WRITE, MAP_SHARED, buf->bus_address); dev_priv->mmap_buffer = NULL; - filp->f_op = old_fops; + if (IS_ERR((void *)virtual)) { /* ugh */ /* Real error */ DRM_ERROR("mmap error\n"); -- cgit v1.2.3