lkml.org 
[lkml]   [2012]   [Feb]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [RFC PATCH 22/22] nfs: add support for read_iter, write_iter
Date
On Mon, 2012-02-27 at 15:19 -0600, Dave Kleikamp wrote:
> This patch implements the read_iter and write_iter file operations which
> allow kernel code to initiate directIO. This allows the loop device to
> read and write directly to the server, bypassing the page cache.
>
> Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
> Cc: Zach Brown <zab@zabbo.net>
> Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
> Cc: linux-nfs@vger.kernel.org

Performance is going to be absolutely terrible for O_DIRECT bvecs if you
send just one page per RPC call. We are working on merging the O_DIRECT
and page cache code in order to give O_DIRECT the ability to coalesce
requests and do pNFS, and I'm hoping that code will be available soon.

In the meantime, wouldn't it be possible to add basic coalescing to
nfs_direct_read_schedule_bvec/nfs_direct_write_schedule_bvec more or
less in the same way that we do for multi-page iovec segments?
i.e. if the next bvec is contiguous with the previous, and the resulting
RPC read length < rsize / write length < wsize, then add it to the same
RPC call.

--
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com

\
 
 \ /
  Last update: 2012-02-27 23:11    [W:0.256 / U:0.332 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site