Christoph Hellwig, on 07/30/2010 05:34 PM wrote:
On Fri, Jul 30, 2010 at 05:25:52PM +0400, Vladislav Bolkhovitin wrote:
Sure. It was only a naive example to illustrate my points. But the FS is
still waiting for the requests, so "draining" its "local queue"?
Yes, just a much smaller queue in general.
To present a typical case, fsync() on a regular file that has a few
dirty pages on it using XFS.
We use filemap_write_and_wait to write out those few pages and wait
for it. And after that we only need to issue a SYNCHRONIZE_CACHE
and we'd be done. Right now the draining semantics of the (empty)
barrier means we also need to wait for all other I/O in the system
to finish, which is rather suboptimal.
Yes, but why not to make step further and allow to completely eliminate
the waiting/draining using ORDERED requests? Current advanced storage
hardware allows that.
Vlad
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html