diff options
author | Miklos Szeredi <mszeredi@suse.cz> | 2007-10-17 08:27:08 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-17 17:42:52 +0200 |
commit | 1a159dd229e6a70e3ffd3f785cb51fa61b232279 (patch) | |
tree | 25d7596b718b37dccedc1a4486e4afc45e29a772 /fs/exec.c | |
parent | fix execute checking in permission() (diff) | |
download | linux-1a159dd229e6a70e3ffd3f785cb51fa61b232279.tar.xz linux-1a159dd229e6a70e3ffd3f785cb51fa61b232279.zip |
exec: remove unnecessary check for MNT_NOEXEC
vfs_permission(MAY_EXEC) checks if the filesystem is mounted with "noexec", so
there's no need to repeat this check in sys_uselib() and open_exec().
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/exec.c')
-rw-r--r-- | fs/exec.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/fs/exec.c b/fs/exec.c index cbd183daaad4..59c0038baa4f 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -112,9 +112,6 @@ asmlinkage long sys_uselib(const char __user * library) if (error) goto out; - error = -EACCES; - if (nd.mnt->mnt_flags & MNT_NOEXEC) - goto exit; error = -EINVAL; if (!S_ISREG(nd.dentry->d_inode->i_mode)) goto exit; @@ -658,8 +655,7 @@ struct file *open_exec(const char *name) if (!err) { struct inode *inode = nd.dentry->d_inode; file = ERR_PTR(-EACCES); - if (!(nd.mnt->mnt_flags & MNT_NOEXEC) && - S_ISREG(inode->i_mode)) { + if (S_ISREG(inode->i_mode)) { int err = vfs_permission(&nd, MAY_EXEC); file = ERR_PTR(err); if (!err) { |