Merge branch 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu...
[deliverable/linux.git] / fs / ramfs / file-nommu.c
index a586467f6ff6c73a4f31234fd96fce0a7b0dc34b..be3ddd189cd4330b3da372f52a270d2ea786aa98 100644 (file)
@@ -211,14 +211,11 @@ static unsigned long ramfs_nommu_get_unmapped_area(struct file *file,
        struct page **pages = NULL, **ptr, *page;
        loff_t isize;
 
-       if (!(flags & MAP_SHARED))
-               return addr;
-
        /* the mapping mustn't extend beyond the EOF */
        lpages = (len + PAGE_SIZE - 1) >> PAGE_SHIFT;
        isize = i_size_read(inode);
 
-       ret = -EINVAL;
+       ret = -ENOSYS;
        maxpages = (isize + PAGE_SIZE - 1) >> PAGE_SHIFT;
        if (pgoff >= maxpages)
                goto out;
@@ -227,7 +224,6 @@ static unsigned long ramfs_nommu_get_unmapped_area(struct file *file,
                goto out;
 
        /* gang-find the pages */
-       ret = -ENOMEM;
        pages = kcalloc(lpages, sizeof(struct page *), GFP_KERNEL);
        if (!pages)
                goto out_free;
@@ -263,7 +259,7 @@ out:
  */
 static int ramfs_nommu_mmap(struct file *file, struct vm_area_struct *vma)
 {
-       if (!(vma->vm_flags & VM_SHARED))
+       if (!(vma->vm_flags & (VM_SHARED | VM_MAYSHARE)))
                return -ENOSYS;
 
        file_accessed(file);
This page took 0.025925 seconds and 5 git commands to generate.