|
@@ -130,11 +130,10 @@ static int i810_map_buffer(struct drm_buf *buf, struct drm_file *file_priv)
|
|
|
return -EINVAL;
|
|
|
|
|
|
/* This is all entirely broken */
|
|
|
- down_write(¤t->mm->mmap_sem);
|
|
|
old_fops = file_priv->filp->f_op;
|
|
|
file_priv->filp->f_op = &i810_buffer_fops;
|
|
|
dev_priv->mmap_buffer = buf;
|
|
|
- buf_priv->virtual = (void *)do_mmap(file_priv->filp, 0, buf->total,
|
|
|
+ buf_priv->virtual = (void *)vm_mmap(file_priv->filp, 0, buf->total,
|
|
|
PROT_READ | PROT_WRITE,
|
|
|
MAP_SHARED, buf->bus_address);
|
|
|
dev_priv->mmap_buffer = NULL;
|
|
@@ -145,7 +144,6 @@ static int i810_map_buffer(struct drm_buf *buf, struct drm_file *file_priv)
|
|
|
retcode = PTR_ERR(buf_priv->virtual);
|
|
|
buf_priv->virtual = NULL;
|
|
|
}
|
|
|
- up_write(¤t->mm->mmap_sem);
|
|
|
|
|
|
return retcode;
|
|
|
}
|