mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 02:32:09 -04:00
[PATCH] remove duplicated sys_open32() code from 64bit archs
64 bit architectures all implement their own compatibility sys_open(), when in fact the difference is simply not forcing the O_LARGEFILE flag. So use the a common function instead. Signed-off-by: Miklos Szeredi <[email protected]> Cc: <[email protected]> Cc: Christoph Hellwig <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
ab8d11beb4
commit
e922efc342
10 changed files with 26 additions and 122 deletions
19
fs/open.c
19
fs/open.c
|
|
@ -933,16 +933,11 @@ void fastcall fd_install(unsigned int fd, struct file * file)
|
|||
|
||||
EXPORT_SYMBOL(fd_install);
|
||||
|
||||
asmlinkage long sys_open(const char __user * filename, int flags, int mode)
|
||||
long do_sys_open(const char __user *filename, int flags, int mode)
|
||||
{
|
||||
char * tmp;
|
||||
int fd;
|
||||
char *tmp = getname(filename);
|
||||
int fd = PTR_ERR(tmp);
|
||||
|
||||
if (force_o_largefile())
|
||||
flags |= O_LARGEFILE;
|
||||
|
||||
tmp = getname(filename);
|
||||
fd = PTR_ERR(tmp);
|
||||
if (!IS_ERR(tmp)) {
|
||||
fd = get_unused_fd();
|
||||
if (fd >= 0) {
|
||||
|
|
@ -959,6 +954,14 @@ asmlinkage long sys_open(const char __user * filename, int flags, int mode)
|
|||
}
|
||||
return fd;
|
||||
}
|
||||
|
||||
asmlinkage long sys_open(const char __user *filename, int flags, int mode)
|
||||
{
|
||||
if (force_o_largefile())
|
||||
flags |= O_LARGEFILE;
|
||||
|
||||
return do_sys_open(filename, flags, mode);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(sys_open);
|
||||
|
||||
#ifndef __alpha__
|
||||
|
|
|
|||
Loading…
Reference in a new issue