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@gmail.com> Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
This commit is contained in:
Родитель
9e0babf2c0
Коммит
461e274b28
|
@ -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)
|
||||
{
|
||||
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 = {
|
||||
|
|
Загрузка…
Ссылка в новой задаче