Re: [PATCH V4 2/2] fs/ext4/fsync.c: generic_file_fsync call based on barrier flag

From: Fabian Frederick
Date: Mon May 12 2014 - 01:24:15 EST


On Mon, 12 May 2014 11:24:26 +0800
Ming Lei <tom.leiming@xxxxxxxxx> wrote:

> On Sun, May 11, 2014 at 1:06 AM, Fabian Frederick <fabf@xxxxxxxxx> wrote:
> > generic_file_fsync has been updated to issue a flush for
> > older filesystems.
> >
> > This patch tests for barrier flag in ext4 mount flags
> > and calls the right function.
> >
> > Suggested-by: Jan Kara <jack@xxxxxxx>
> > Suggested-by: Christoph Hellwig <hch@xxxxxxxxxxxxx>
> > Cc: Jan Kara <jack@xxxxxxx>
> > Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
> > Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
> > Cc: "Theodore Ts'o" <tytso@xxxxxxx>
> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > Signed-off-by: Fabian Frederick <fabf@xxxxxxxxx>
> > ---
> > fs/ext4/fsync.c | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/fs/ext4/fsync.c b/fs/ext4/fsync.c
> > index a8bc47f..fa82c0a 100644
> > --- a/fs/ext4/fsync.c
> > +++ b/fs/ext4/fsync.c
> > @@ -108,6 +108,10 @@ int ext4_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
> >
> > if (!journal) {
> > ret = generic_file_fsync(file, start, end, datasync);
>
> Forget to remove above line?
Oops, of course ! Thanks a lot, I've sent a new version :)

Regards,
Fabian

>
> > + if (test_opt(inode->i_sb, BARRIER))
> > + ret = generic_file_fsync(file, start, end, datasync);
> > + else
> > + ret = __generic_file_fsync(file, start, end, datasync);
> > if (!ret && !hlist_empty(&inode->i_dentry))
> > ret = ext4_sync_parent(inode);
> > goto out;
>
>
>
> Thanks,
> --
> Ming Lei
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/