mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
fs/pipe: set FMODE_NOWAIT in create_pipe_files()
Rather than have the caller set the FMODE_NOWAIT flags for both output files, move it to create_pipe_files() where other f_mode flags are set anyway with stream_open(). With that, both __do_pipe_flags() and io_pipe() can remove the manual setting of the NOWAIT flags. No intended functional changes, just a code cleanup. Signed-off-by: Jens Axboe <axboe@kernel.dk> Link: https://lore.kernel.org/1f0473f8-69f3-4eb1-aa77-3334c6a71d24@kernel.dk Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
cd95e366c9
commit
dd765ba872
@ -963,6 +963,11 @@ int create_pipe_files(struct file **res, int flags)
|
||||
res[1] = f;
|
||||
stream_open(inode, res[0]);
|
||||
stream_open(inode, res[1]);
|
||||
|
||||
/* pipe groks IOCB_NOWAIT */
|
||||
res[0]->f_mode |= FMODE_NOWAIT;
|
||||
res[1]->f_mode |= FMODE_NOWAIT;
|
||||
|
||||
/*
|
||||
* Disable permission and pre-content events, but enable legacy
|
||||
* inotify events for legacy users.
|
||||
@ -997,9 +1002,6 @@ static int __do_pipe_flags(int *fd, struct file **files, int flags)
|
||||
audit_fd_pair(fdr, fdw);
|
||||
fd[0] = fdr;
|
||||
fd[1] = fdw;
|
||||
/* pipe groks IOCB_NOWAIT */
|
||||
files[0]->f_mode |= FMODE_NOWAIT;
|
||||
files[1]->f_mode |= FMODE_NOWAIT;
|
||||
return 0;
|
||||
|
||||
err_fdr:
|
||||
|
@ -416,8 +416,6 @@ int io_pipe(struct io_kiocb *req, unsigned int issue_flags)
|
||||
ret = create_pipe_files(files, p->flags);
|
||||
if (ret)
|
||||
return ret;
|
||||
files[0]->f_mode |= FMODE_NOWAIT;
|
||||
files[1]->f_mode |= FMODE_NOWAIT;
|
||||
|
||||
if (!!p->file_slot)
|
||||
ret = io_pipe_fixed(req, files, issue_flags);
|
||||
|
Loading…
Reference in New Issue
Block a user