.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "do_nfs_direct_IO" "" "06 October 2005" "" ""
.SH NAME
do_nfs_direct_IO \- Read or write data without caching
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
int do_nfs_direct_IO (int \fIrw\fB, const struct inode * \fIinode\fB, const struct rpc_cred * \fIcred\fB, const struct iovec * \fIiov\fB, loff_t \fIoffset\fB, unsigned long \fInr_segs\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIrw\fB\fR
-- undescribed --
.TP
\fB\fIinode\fB\fR
inode of target file
.TP
\fB\fIcred\fB\fR
credentials of user who requested I/O
.TP
\fB\fIiov\fB\fR
array of vectors that define I/O buffer
.TP
\fB\fIoffset\fB\fR
-- undescribed --
.TP
\fB\fInr_segs\fB\fR
-- undescribed --
.SH "OFFSET"
.PP
where in file to begin the read
.SH "NR_SEGS"
.PP
size of iovec array
.PP
Break the passed-in iovec into a series of page-sized or smaller
requests, where each page is mapped for direct user-land I/O.
.PP
For each of these pages, create an NFS page request and
append it to an automatic list of page requests.
.PP
When all page requests have been queued, start the I/O on the
whole list. The underlying routines coalesce the pages on the
list into a bunch of asynchronous ``r/wsize'' network requests.
.PP
I/O completion automatically unmaps and releases the pages.