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>
This commit is contained in:
parent
d63d1b5edb
commit
35cb6d54c1
|
@ -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);
|
||||||
#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)
|
||||||
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;
|
||||||
|
|
Loading…
Reference in New Issue