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
					
				| @ -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 New Issue
	
	Block a user