From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Chinner Subject: Re: [RFC] fs io with struct page instead of iovecs Date: Thu, 8 Nov 2007 07:44:57 +1100 Message-ID: <20071107204457.GL995458@sgi.com> References: <11943998113245-git-send-email-zach.brown@oracle.com> <1194454245.26782.32.camel@dyn9047017100.beaverton.ibm.com> <4731EF8D.5090701@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Badari Pulavarty , linux-fsdevel , Christoph Hellwig , David Chinner To: Zach Brown Return-path: Received: from netops-testserver-3-out.sgi.com ([192.48.171.28]:49991 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753842AbXKGUpV (ORCPT ); Wed, 7 Nov 2007 15:45:21 -0500 Content-Disposition: inline In-Reply-To: <4731EF8D.5090701@oracle.com> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Wed, Nov 07, 2007 at 09:02:05AM -0800, Zach Brown wrote: > Badari Pulavarty wrote: > > On Tue, 2007-11-06 at 17:43 -0800, Zach Brown wrote: > >> At the FS meeting at LCE there was some talk of doing O_DIRECT writes from the > >> kernel with pages instead of with iovecs. T > > > > Why ? Whats the use case ? > > Well, I think there's a few: > > There are existing callers which hold a kmap() across ->write, which > isn't great. ecryptfs() does this. That's mentioned in the patch > series. Arguably loopback should be using this instead of copying some > fs paths and trying to call aop methods directly. > > I seem to remember Christoph and David having stories of knfsd folks in > SGI wanting to do O_DIRECT writes from knfsd? (If not, *I* kind of want > to, after rolling some patches to align net rx descriptors :)). The main reason is to remove the serialised writer problem when multiple clients are writing to the one file. With XFS and direct I/O, we can have multiple concurrent writers to the one file and have it scale rather than be limited to what a single cpu holding the i_mutex can do.... > Lustre shows us that there is a point at which you can't saturate your > network and storage if your cpu is copying all the data. Buy more CPUs ;) Cheers, Dave. -- Dave Chinner Principal Engineer SGI Australian Software Group