From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jens Axboe Subject: Re: [rfc patch 3/4] splice: remove confirm from pipe_buf_operations Date: Tue, 24 Jun 2008 10:04:41 +0200 Message-ID: <20080624080440.GJ20851@kernel.dk> References: <20080621154607.154640724@szeredi.hu> <20080621154726.494538562@szeredi.hu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, torvalds@linux-foundation.org To: Miklos Szeredi Return-path: Received: from brick.kernel.dk ([87.55.233.238]:15483 "EHLO kernel.dk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752200AbYFXIEm (ORCPT ); Tue, 24 Jun 2008 04:04:42 -0400 Content-Disposition: inline In-Reply-To: <20080621154726.494538562@szeredi.hu> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Sat, Jun 21 2008, Miklos Szeredi wrote: > From: Miklos Szeredi > > 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