procfs: new helper - PDE_DATA(inode)
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / powerpc / kernel / proc_powerpc.c
index f19d0bdc32411c29e4de5f0e41e86a4be3f73d71..41d8ee9c82f128bd48d313840e179380257d98fa 100644 (file)
@@ -32,8 +32,6 @@
 static loff_t page_map_seek( struct file *file, loff_t off, int whence)
 {
        loff_t new;
-       struct proc_dir_entry *dp = PDE(file_inode(file));
-
        switch(whence) {
        case 0:
                new = off;
@@ -42,12 +40,12 @@ static loff_t page_map_seek( struct file *file, loff_t off, int whence)
                new = file->f_pos + off;
                break;
        case 2:
-               new = dp->size + off;
+               new = PAGE_SIZE + off;
                break;
        default:
                return -EINVAL;
        }
-       if ( new < 0 || new > dp->size )
+       if ( new < 0 || new > PAGE_SIZE )
                return -EINVAL;
        return (file->f_pos = new);
 }
@@ -55,19 +53,18 @@ static loff_t page_map_seek( struct file *file, loff_t off, int whence)
 static ssize_t page_map_read( struct file *file, char __user *buf, size_t nbytes,
                              loff_t *ppos)
 {
-       struct proc_dir_entry *dp = PDE(file_inode(file));
-       return simple_read_from_buffer(buf, nbytes, ppos, dp->data, dp->size);
+       return simple_read_from_buffer(buf, nbytes, ppos,
+                       PDE_DATA(file_inode(file)), PAGE_SIZE);
 }
 
 static int page_map_mmap( struct file *file, struct vm_area_struct *vma )
 {
-       struct proc_dir_entry *dp = PDE(file_inode(file));
-
-       if ((vma->vm_end - vma->vm_start) > dp->size)
+       if ((vma->vm_end - vma->vm_start) > PAGE_SIZE)
                return -EINVAL;
 
-       remap_pfn_range(vma, vma->vm_start, __pa(dp->data) >> PAGE_SHIFT,
-                                               dp->size, vma->vm_page_prot);
+       remap_pfn_range(vma, vma->vm_start,
+                       __pa(PDE_DATA(file_inode(file))) >> PAGE_SHIFT,
+                       PAGE_SIZE, vma->vm_page_prot);
        return 0;
 }