diff options
Diffstat (limited to 'drivers/video/fb_defio.c')
-rw-r--r-- | drivers/video/fb_defio.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/video/fb_defio.c b/drivers/video/fb_defio.c index f963f5f59b73..1a8643f053d8 100644 --- a/drivers/video/fb_defio.c +++ b/drivers/video/fb_defio.c | |||
@@ -32,12 +32,14 @@ static struct page* fb_deferred_io_nopage(struct vm_area_struct *vma, | |||
32 | unsigned long offset; | 32 | unsigned long offset; |
33 | struct page *page; | 33 | struct page *page; |
34 | struct fb_info *info = vma->vm_private_data; | 34 | struct fb_info *info = vma->vm_private_data; |
35 | /* info->screen_base is in System RAM */ | ||
36 | void *screen_base = (void __force *) info->screen_base; | ||
35 | 37 | ||
36 | offset = (vaddr - vma->vm_start) + (vma->vm_pgoff << PAGE_SHIFT); | 38 | offset = (vaddr - vma->vm_start) + (vma->vm_pgoff << PAGE_SHIFT); |
37 | if (offset >= info->fix.smem_len) | 39 | if (offset >= info->fix.smem_len) |
38 | return NOPAGE_SIGBUS; | 40 | return NOPAGE_SIGBUS; |
39 | 41 | ||
40 | page = vmalloc_to_page(info->screen_base + offset); | 42 | page = vmalloc_to_page(screen_base + offset); |
41 | if (!page) | 43 | if (!page) |
42 | return NOPAGE_OOM; | 44 | return NOPAGE_OOM; |
43 | 45 | ||