mtd: mtdchar: return expected errors on mmap() call

According both to POSIX.1-2008 and Linux Programmer's Manual mmap()
syscall shouldn't return undocumented ENOSYS, this change replaces
the errno with more appropriate ENODEV and EACCESS.

Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Cc: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
Vladimir Zapolskiy 2013-10-28 18:08:15 +02:00 committed by Brian Norris
parent 80bd33acda
commit b999593237

View File

@ -1100,7 +1100,7 @@ static unsigned long mtdchar_get_unmapped_area(struct file *file,
return (unsigned long) -EINVAL;
ret = mtd_get_unmapped_area(mtd, len, offset, flags);
return ret == -EOPNOTSUPP ? -ENOSYS : ret;
return ret == -EOPNOTSUPP ? -ENODEV : ret;
}
#endif
@ -1125,9 +1125,9 @@ static int mtdchar_mmap(struct file *file, struct vm_area_struct *vma)
#endif
return vm_iomap_memory(vma, map->phys, map->size);
}
return -ENOSYS;
return -ENODEV;
#else
return vma->vm_flags & VM_SHARED ? 0 : -ENOSYS;
return vma->vm_flags & VM_SHARED ? 0 : -EACCES;
#endif
}