summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2019-12-13 19:10:11 +0100
committerJens Axboe <axboe@kernel.dk>2020-01-21 01:01:53 +0100
commit35cb6d54c1d5daf1d1ed585ef5ce4557e7ab284c (patch)
treec7d2670b891478bf140ca25919d1615fc2e05c35 /fs
parentio_uring: add support for fallocate() (diff)
downloadlinux-35cb6d54c1d5daf1d1ed585ef5ce4557e7ab284c.tar.xz
linux-35cb6d54c1d5daf1d1ed585ef5ce4557e7ab284c.zip
fs: make build_open_flags() available internally
This is a prep patch for supporting non-blocking open from io_uring. Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'fs')
-rw-r--r--fs/internal.h2
-rw-r--r--fs/open.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/fs/internal.h b/fs/internal.h
index e3fa69544b66..c4baf42f8d8a 100644
--- a/fs/internal.h
+++ b/fs/internal.h
@@ -124,6 +124,8 @@ extern struct file *do_filp_open(int dfd, struct filename *pathname,
const struct open_flags *op);
extern struct file *do_file_open_root(struct dentry *, struct vfsmount *,
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_faccessat(int dfd, const char __user *filename, int mode);
diff --git a/fs/open.c b/fs/open.c
index 8cdb2b675867..0788b3715731 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -958,7 +958,7 @@ EXPORT_SYMBOL(open_with_fake_path);
#define WILL_CREATE(flags) (flags & (O_CREAT | __O_TMPFILE))
#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 = {
.flags = flags & VALID_OPEN_FLAGS,
@@ -974,8 +974,7 @@ static inline struct open_how build_open_how(int flags, umode_t mode)
return how;
}
-static inline int build_open_flags(const struct open_how *how,
- struct open_flags *op)
+inline int build_open_flags(const struct open_how *how, struct open_flags *op)
{
int flags = how->flags;
int lookup_flags = 0;