summaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2013-04-24 07:35:20 +0200
committerTomi Valkeinen <tomi.valkeinen@ti.com>2013-04-26 07:28:56 +0200
commit138f296e140f79cb955caba70690076fb14e6f6d (patch)
treeac205dc33305938a0465800336c198ff399a9114 /drivers/video
parentfbdev: improve fb_mmap bounds checks (diff)
downloadlinux-138f296e140f79cb955caba70690076fb14e6f6d.tar.xz
linux-138f296e140f79cb955caba70690076fb14e6f6d.zip
fbdev: fix check for fb_mmap's mmio availability
Commit fc9bbca8f650e5f738af8806317c0a041a48ae4a (vm: convert fb_mmap to vm_iomap_memory() helper) made fbmem.c use vm_iomap_memory, but also accidentally removed the check for mmio's availability. Add the check back. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/fbmem.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
index 86291dcd964a..dcb669eb4532 100644
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -1398,6 +1398,11 @@ fb_mmap(struct file *file, struct vm_area_struct * vma)
len = info->fix.smem_len;
mmio_pgoff = PAGE_ALIGN((start & ~PAGE_MASK) + len) >> PAGE_SHIFT;
if (vma->vm_pgoff >= mmio_pgoff) {
+ if (info->var.accel_flags) {
+ mutex_unlock(&info->mm_lock);
+ return -EINVAL;
+ }
+
vma->vm_pgoff -= mmio_pgoff;
start = info->fix.mmio_start;
len = info->fix.mmio_len;