On Sat, Jun 21 2008, Miklos Szeredi wrote:
From: Miklos Szeredi <redacted>
The 'confirm' operation was only used for splicing from page cache, to
wait for read on a page to finish. But generic_file_splice_read()
already blocks on readahead reads, so it seems logical to block on the
rare and slow single page reads too.
So wait for readpage to finish inside __generic_file_splice_read() and
remove the 'confirm' method.
This also fixes short return counts when the filesystem (e.g. fuse)
invalidates the page between insertation and removal.
One of the basic goals of splice is to allow the pipe buffer to only be
consisten when a consumer asks for it, otherwise the filling will always
be sync. There should be no blocking on reads in the splice-in path,
only on consumption for splice-out.
So nack on this one, too.
--
Jens Axboe
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>