From: chenqiwu <[email protected]>
Remove trivial nowait check for buffered read/write, since
buffered read is checked in generic_file_read_iter()->
generic_file_buffered_read(), buffered write is checked in
generic_write_checks().
Signed-off-by: chenqiwu <[email protected]>
---
fs/ocfs2/file.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index 9876db5..6a5e3b0 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -2298,9 +2298,6 @@ static ssize_t ocfs2_file_write_iter(struct kiocb *iocb,
file->f_path.dentry->d_name.name,
(unsigned int)from->nr_segs); /* GRRRRR */
- if (!direct_io && nowait)
- return -EOPNOTSUPP;
-
if (count == 0)
return 0;
@@ -2453,9 +2450,6 @@ static ssize_t ocfs2_file_read_iter(struct kiocb *iocb,
goto bail;
}
- if (!direct_io && nowait)
- return -EOPNOTSUPP;
-
/*
* buffered reads protect themselves in ->readpage(). O_DIRECT reads
* need locks to protect pending reads from racing with truncate.
--
1.9.1
On 20/2/1 15:12, [email protected] wrote:
> From: chenqiwu <[email protected]>
>
> Remove trivial nowait check for buffered read/write, since
> buffered read is checked in generic_file_read_iter()->
> generic_file_buffered_read(), buffered write is checked in
> generic_write_checks().
>
You are right, but check it at the beginning of
ocfs2_file_[read|write]_iter() will save much effort for lock ops, so
I'd like to leave them there.
Thanks,
Joseph