vfs: sparse: add __FMODE_EXEC
FMODE_EXEC is a constant type of fmode_t but was used with normal integer constants. This results in following warnings from sparse. Fix it using new macro __FMODE_EXEC. fs/exec.c:116:58: warning: restricted fmode_t degrades to integer fs/exec.c:689:58: warning: restricted fmode_t degrades to integer fs/fcntl.c:777:9: warning: restricted fmode_t degrades to integer Signed-off-by: Namhyung Kim <namhyung@gmail.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
1a44bc8c7c
commit
3cd90ea42f
3 changed files with 4 additions and 3 deletions
|
@ -120,7 +120,7 @@ SYSCALL_DEFINE1(uselib, const char __user *, library)
|
|||
goto out;
|
||||
|
||||
file = do_filp_open(AT_FDCWD, tmp,
|
||||
O_LARGEFILE | O_RDONLY | FMODE_EXEC, 0,
|
||||
O_LARGEFILE | O_RDONLY | __FMODE_EXEC, 0,
|
||||
MAY_READ | MAY_EXEC | MAY_OPEN);
|
||||
putname(tmp);
|
||||
error = PTR_ERR(file);
|
||||
|
@ -723,7 +723,7 @@ struct file *open_exec(const char *name)
|
|||
int err;
|
||||
|
||||
file = do_filp_open(AT_FDCWD, name,
|
||||
O_LARGEFILE | O_RDONLY | FMODE_EXEC, 0,
|
||||
O_LARGEFILE | O_RDONLY | __FMODE_EXEC, 0,
|
||||
MAY_EXEC | MAY_OPEN);
|
||||
if (IS_ERR(file))
|
||||
goto out;
|
||||
|
|
|
@ -815,7 +815,7 @@ static int __init fcntl_init(void)
|
|||
__O_SYNC | O_DSYNC | FASYNC |
|
||||
O_DIRECT | O_LARGEFILE | O_DIRECTORY |
|
||||
O_NOFOLLOW | O_NOATIME | O_CLOEXEC |
|
||||
FMODE_EXEC
|
||||
__FMODE_EXEC
|
||||
));
|
||||
|
||||
fasync_cache = kmem_cache_create("fasync_cache",
|
||||
|
|
|
@ -2555,6 +2555,7 @@ int proc_nr_inodes(struct ctl_table *table, int write,
|
|||
void __user *buffer, size_t *lenp, loff_t *ppos);
|
||||
int __init get_filesystem_list(char *buf);
|
||||
|
||||
#define __FMODE_EXEC ((__force int) FMODE_EXEC)
|
||||
#define __FMODE_NONOTIFY ((__force int) FMODE_NONOTIFY)
|
||||
|
||||
#define ACC_MODE(x) ("\004\002\006\006"[(x)&O_ACCMODE])
|
||||
|
|
Loading…
Reference in a new issue