diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-05-09 12:12:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-05-09 12:12:53 -0400 |
commit | 11fbf53d66ec302fe50b06bd7cb4863dbb98775a (patch) | |
tree | 1e7f8fdb574313b9c1403d2f89386a461c9b2eaa /fs/open.c | |
parent | 339fbf6796f8e74544091adbf511286768eaf93e (diff) | |
parent | 6b4657667ba06cd2e07206c65e630acdf248bfd1 (diff) |
Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull misc vfs updates from Al Viro:
"Assorted bits and pieces from various people. No common topic in this
pile, sorry"
* 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
fs/affs: add rename exchange
fs/affs: add rename2 to prepare multiple methods
Make stat/lstat/fstatat pass AT_NO_AUTOMOUNT to vfs_statx()
fs: don't set *REFERENCED on single use objects
fs: compat: Remove warning from COMPATIBLE_IOCTL
remove pointless extern of atime_need_update_rcu()
fs: completely ignore unknown open flags
fs: add a VALID_OPEN_FLAGS
fs: remove _submit_bh()
fs: constify tree_descr arrays passed to simple_fill_super()
fs: drop duplicate header percpu-rwsem.h
fs/affs: bugfix: Write files greater than page size on OFS
fs/affs: bugfix: enable writes on OFS disks
fs/affs: remove node generation check
fs/affs: import amigaffs.h
fs/affs: bugfix: make symbolic links work again
Diffstat (limited to 'fs/open.c')
-rw-r--r-- | fs/open.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -900,6 +900,12 @@ static inline int build_open_flags(int flags, umode_t mode, struct open_flags *o | |||
900 | int lookup_flags = 0; | 900 | int lookup_flags = 0; |
901 | int acc_mode = ACC_MODE(flags); | 901 | int acc_mode = ACC_MODE(flags); |
902 | 902 | ||
903 | /* | ||
904 | * Clear out all open flags we don't know about so that we don't report | ||
905 | * them in fcntl(F_GETFD) or similar interfaces. | ||
906 | */ | ||
907 | flags &= VALID_OPEN_FLAGS; | ||
908 | |||
903 | if (flags & (O_CREAT | __O_TMPFILE)) | 909 | if (flags & (O_CREAT | __O_TMPFILE)) |
904 | op->mode = (mode & S_IALLUGO) | S_IFREG; | 910 | op->mode = (mode & S_IALLUGO) | S_IFREG; |
905 | else | 911 | else |