Commit 461e274b authored by Souptick Joarder's avatar Souptick Joarder Committed by Miguel Ojeda

auxdisplay/cfag12864bfb.c: Convert to use vm_map_pages_zero()

While using mmap, the incorrect values of length and vm_pgoff are
ignored and this driver goes ahead with mapping cfag12864b_buffer
to user vma.

Convert vm_insert_pages() to use vm_map_pages_zero(). We could later
"fix" these drivers to behave according to the normal vm_pgoff
offsetting simply by removing the _zero suffix on the function name and
if that causes regressions, it gives us an easy way to revert.
Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
Signed-off-by: default avatarMiguel Ojeda <miguel.ojeda.sandonis@gmail.com>
parent 9e0babf2
...@@ -52,8 +52,9 @@ static const struct fb_var_screeninfo cfag12864bfb_var = { ...@@ -52,8 +52,9 @@ static const struct fb_var_screeninfo cfag12864bfb_var = {
static int cfag12864bfb_mmap(struct fb_info *info, struct vm_area_struct *vma) static int cfag12864bfb_mmap(struct fb_info *info, struct vm_area_struct *vma)
{ {
return vm_insert_page(vma, vma->vm_start, struct page *pages = virt_to_page(cfag12864b_buffer);
virt_to_page(cfag12864b_buffer));
return vm_map_pages_zero(vma, &pages, 1);
} }
static struct fb_ops cfag12864bfb_ops = { static struct fb_ops cfag12864bfb_ops = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment