[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1558887028-4026-1-git-send-email-jrdr.linux@gmail.com>
Date: Sun, 26 May 2019 21:40:27 +0530
From: Souptick Joarder <jrdr.linux@...il.com>
To: miguel.ojeda.sandonis@...il.com
Cc: linux-kernel@...r.kernel.org, willy@...radead.org,
Souptick Joarder <jrdr.linux@...il.com>
Subject: [PATCH 1/2] 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: Souptick Joarder <jrdr.linux@...il.com>
---
v2: Fixed minor typo.
drivers/auxdisplay/cfag12864bfb.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/auxdisplay/cfag12864bfb.c b/drivers/auxdisplay/cfag12864bfb.c
index 40c8a55..4074886 100644
--- a/drivers/auxdisplay/cfag12864bfb.c
+++ b/drivers/auxdisplay/cfag12864bfb.c
@@ -52,8 +52,9 @@
static int cfag12864bfb_mmap(struct fb_info *info, struct vm_area_struct *vma)
{
- return vm_insert_page(vma, vma->vm_start,
- virt_to_page(cfag12864b_buffer));
+ struct page *pages = virt_to_page(cfag12864b_buffer);
+
+ return vm_map_pages_zero(vma, &pages, 1);
}
static struct fb_ops cfag12864bfb_ops = {
--
1.9.1
Powered by blists - more mailing lists