If the operation fails and userspace is unaware it will access unmapped
memory, crashing the process.

Signed-off-by: Thomas Weißschuh <[email protected]>
---
 arch/powerpc/kernel/proc_powerpc.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/powerpc/kernel/proc_powerpc.c 
b/arch/powerpc/kernel/proc_powerpc.c
index 
b109cd7b5d01fbe6870b60e60965effa86ecf3b6..910d2082e05fd86bd1146815d4b67633a6f2b459
 100644
--- a/arch/powerpc/kernel/proc_powerpc.c
+++ b/arch/powerpc/kernel/proc_powerpc.c
@@ -33,10 +33,9 @@ static int page_map_mmap( struct file *file, struct 
vm_area_struct *vma )
        if ((vma->vm_end - vma->vm_start) > PAGE_SIZE)
                return -EINVAL;
 
-       remap_pfn_range(vma, vma->vm_start,
-                       __pa(pde_data(file_inode(file))) >> PAGE_SHIFT,
-                       PAGE_SIZE, vma->vm_page_prot);
-       return 0;
+       return remap_pfn_range(vma, vma->vm_start,
+                              __pa(pde_data(file_inode(file))) >> PAGE_SHIFT,
+                              PAGE_SIZE, vma->vm_page_prot);
 }
 
 static const struct proc_ops page_map_proc_ops = {

-- 
2.47.0


Reply via email to