summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Hennerich <michael.hennerich@analog.com>2008-03-28 22:16:06 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2008-03-28 22:45:22 +0100
commit363df3994f034e7fe87d146fcf19f6a3ab2a2291 (patch)
tree43e88e56df7f9649777958128d68682e38776878
parentblackfin video driver: update the BF52x EZKIT video framebuffer driver accord... (diff)
downloadlinux-363df3994f034e7fe87d146fcf19f6a3ab2a2291.tar.xz
linux-363df3994f034e7fe87d146fcf19f6a3ab2a2291.zip
blackfin video driver: fix bug when opening/reading/mmaping BF54x and BF52x framebuffer simultaneously
http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3974 opening/reading/mmaping BF54x and BF52x framebuffer simultaneously triggers BUG: failure at mm/nommu.c:470/add_nommu_vma() Add VM_SHARED to the default vm_flags Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/video/bf54x-lq043fb.c2
-rw-r--r--drivers/video/bfin-t350mcqb-fb.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/video/bf54x-lq043fb.c b/drivers/video/bf54x-lq043fb.c
index 986a550c0439..eefba3d0e4b9 100644
--- a/drivers/video/bf54x-lq043fb.c
+++ b/drivers/video/bf54x-lq043fb.c
@@ -384,7 +384,7 @@ static int bfin_bf54x_fb_mmap(struct fb_info *info, struct vm_area_struct *vma)
* Other flags can be set, and are documented in
* include/linux/mm.h
*/
- vma->vm_flags |= VM_MAYSHARE;
+ vma->vm_flags |= VM_MAYSHARE | VM_SHARED;
return 0;
}
diff --git a/drivers/video/bfin-t350mcqb-fb.c b/drivers/video/bfin-t350mcqb-fb.c
index f36ca7f6d8a0..135d6dd7e672 100644
--- a/drivers/video/bfin-t350mcqb-fb.c
+++ b/drivers/video/bfin-t350mcqb-fb.c
@@ -302,7 +302,7 @@ static int bfin_t350mcqb_fb_mmap(struct fb_info *info, struct vm_area_struct *vm
* Other flags can be set, and are documented in
* include/linux/mm.h
*/
- vma->vm_flags |= VM_MAYSHARE;
+ vma->vm_flags |= VM_MAYSHARE | VM_SHARED;
return 0;
}