提交 35cb6d54 编写于 作者: J Jens Axboe

fs: make build_open_flags() available internally

This is a prep patch for supporting non-blocking open from io_uring.
Signed-off-by: NJens Axboe <axboe@kernel.dk>
上级 d63d1b5e
...@@ -124,6 +124,8 @@ extern struct file *do_filp_open(int dfd, struct filename *pathname, ...@@ -124,6 +124,8 @@ extern struct file *do_filp_open(int dfd, struct filename *pathname,
const struct open_flags *op); const struct open_flags *op);
extern struct file *do_file_open_root(struct dentry *, struct vfsmount *, extern struct file *do_file_open_root(struct dentry *, struct vfsmount *,
const char *, const struct open_flags *); const char *, const struct open_flags *);
extern struct open_how build_open_how(int flags, umode_t mode);
extern int build_open_flags(const struct open_how *how, struct open_flags *op);
long do_sys_ftruncate(unsigned int fd, loff_t length, int small); long do_sys_ftruncate(unsigned int fd, loff_t length, int small);
long do_faccessat(int dfd, const char __user *filename, int mode); long do_faccessat(int dfd, const char __user *filename, int mode);
......
...@@ -958,7 +958,7 @@ EXPORT_SYMBOL(open_with_fake_path); ...@@ -958,7 +958,7 @@ EXPORT_SYMBOL(open_with_fake_path);
#define WILL_CREATE(flags) (flags & (O_CREAT | __O_TMPFILE)) #define WILL_CREATE(flags) (flags & (O_CREAT | __O_TMPFILE))
#define O_PATH_FLAGS (O_DIRECTORY | O_NOFOLLOW | O_PATH | O_CLOEXEC) #define O_PATH_FLAGS (O_DIRECTORY | O_NOFOLLOW | O_PATH | O_CLOEXEC)
static inline struct open_how build_open_how(int flags, umode_t mode) inline struct open_how build_open_how(int flags, umode_t mode)
{ {
struct open_how how = { struct open_how how = {
.flags = flags & VALID_OPEN_FLAGS, .flags = flags & VALID_OPEN_FLAGS,
...@@ -974,8 +974,7 @@ static inline struct open_how build_open_how(int flags, umode_t mode) ...@@ -974,8 +974,7 @@ static inline struct open_how build_open_how(int flags, umode_t mode)
return how; return how;
} }
static inline int build_open_flags(const struct open_how *how, inline int build_open_flags(const struct open_how *how, struct open_flags *op)
struct open_flags *op)
{ {
int flags = how->flags; int flags = how->flags;
int lookup_flags = 0; int lookup_flags = 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册