[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+55aFxtvMqHgHmHCcszV_QKQ2BY0wzenmrvc6BYN+tLFxesMA@mail.gmail.com>
Date: Mon, 11 Jan 2016 17:20:42 -0800
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Dave Chinner <david@...morbit.com>
Cc: Benjamin LaHaise <bcrl@...ck.org>, linux-aio@...ck.org,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux API <linux-api@...r.kernel.org>,
linux-mm <linux-mm@...ck.org>,
Alexander Viro <viro@...iv.linux.org.uk>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH 07/13] aio: enabled thread based async fsync
On Mon, Jan 11, 2016 at 5:11 PM, Dave Chinner <david@...morbit.com> wrote:
>
> Insufficient. Needs the range to be passed through and call
> vfs_fsync_range(), as I implemented here:
And I think that's insufficient *also*.
What you actually want is "sync_file_range()", with the full set of arguments.
Yes, really. Sometimes you want to start the writeback, sometimes you
want to wait for it. Sometimes you want both.
For example, if you are doing your own manual write-behind logic, it
is not sufficient for "wait for data". What you want is "start IO on
new data" followed by "wait for old data to have been written out".
I think this only strengthens my "stop with the idiotic
special-case-AIO magic already" argument. If we want something more
generic than the usual aio, then we should go all in. Not "let's make
more limited special cases".
Linus
Powered by blists - more mailing lists