Tao Ma
2009-Jun-19 07:36 UTC
[Ocfs2-devel] [PATCH] ocfs2: Update atime in splice read if necessary.
We should call ocfs2_inode_lock_atime instead of ocfs2_inode_lock in ocfs2_file_splice_read like we do in ocfs2_file_aio_read so that we can update atime in splice read if necessary. Signed-off-by: Tao Ma <tao.ma at oracle.com> --- fs/ocfs2/file.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c index 775ac34..95cba48 100644 --- a/fs/ocfs2/file.c +++ b/fs/ocfs2/file.c @@ -2025,7 +2025,7 @@ static ssize_t ocfs2_file_splice_read(struct file *in, size_t len, unsigned int flags) { - int ret = 0; + int ret = 0, lock_level = 0; struct inode *inode = in->f_path.dentry->d_inode; mlog_entry("(0x%p, 0x%p, %u, '%.*s')\n", in, pipe, @@ -2036,12 +2036,12 @@ static ssize_t ocfs2_file_splice_read(struct file *in, /* * See the comment in ocfs2_file_aio_read() */ - ret = ocfs2_inode_lock(inode, NULL, 0); + ret = ocfs2_inode_lock_atime(inode, in->f_vfsmnt, &lock_level); if (ret < 0) { mlog_errno(ret); goto bail; } - ocfs2_inode_unlock(inode, 0); + ocfs2_inode_unlock(inode, lock_level); ret = generic_file_splice_read(in, ppos, pipe, len, flags); -- 1.6.2.rc2.16.gf474c
Sunil Mushran
2009-Jun-19 20:25 UTC
[Ocfs2-devel] [PATCH] ocfs2: Update atime in splice read if necessary.
Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com> Tao Ma wrote:> We should call ocfs2_inode_lock_atime instead of ocfs2_inode_lock > in ocfs2_file_splice_read like we do in ocfs2_file_aio_read so > that we can update atime in splice read if necessary. > > Signed-off-by: Tao Ma <tao.ma at oracle.com> > --- > fs/ocfs2/file.c | 6 +++--- > 1 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c > index 775ac34..95cba48 100644 > --- a/fs/ocfs2/file.c > +++ b/fs/ocfs2/file.c > @@ -2025,7 +2025,7 @@ static ssize_t ocfs2_file_splice_read(struct file *in, > size_t len, > unsigned int flags) > { > - int ret = 0; > + int ret = 0, lock_level = 0; > struct inode *inode = in->f_path.dentry->d_inode; > > mlog_entry("(0x%p, 0x%p, %u, '%.*s')\n", in, pipe, > @@ -2036,12 +2036,12 @@ static ssize_t ocfs2_file_splice_read(struct file *in, > /* > * See the comment in ocfs2_file_aio_read() > */ > - ret = ocfs2_inode_lock(inode, NULL, 0); > + ret = ocfs2_inode_lock_atime(inode, in->f_vfsmnt, &lock_level); > if (ret < 0) { > mlog_errno(ret); > goto bail; > } > - ocfs2_inode_unlock(inode, 0); > + ocfs2_inode_unlock(inode, lock_level); > > ret = generic_file_splice_read(in, ppos, pipe, len, flags); > >
Joel Becker
2009-Jun-19 23:32 UTC
[Ocfs2-devel] [PATCH] ocfs2: Update atime in splice read if necessary.
On Fri, Jun 19, 2009 at 03:36:52PM +0800, Tao Ma wrote:> We should call ocfs2_inode_lock_atime instead of ocfs2_inode_lock > in ocfs2_file_splice_read like we do in ocfs2_file_aio_read so > that we can update atime in splice read if necessary. > > Signed-off-by: Tao Ma <tao.ma at oracle.com>This is now in the fixes branch of ocfs2.git. Joel -- "Heav'n hath no rage like love to hatred turn'd, nor Hell a fury, like a woman scorn'd." - William Congreve Joel Becker Principal Software Developer Oracle E-mail: joel.becker at oracle.com Phone: (650) 506-8127
Apparently Analagous Threads
- [PATCH v21 22/30] ocfs2: Provide a splice-read stub
- [PATCH V5 19/30] ocfs2: add support for read_iter, write_iter, and direct_IO_bvec
- [PATCH V8 21/33] ocfs2: add support for read_iter and write_iter
- [PATCH v20 19/32] ocfs2: Provide a splice-read stub
- [PATCH 0/2] OCFS2 lockdep support