NFSTEST_DIO(1)nfstest_dio 1.0.1 NFSTEST_DIO(1)NAMEnfstest_dio - Direct I/O tests
SYNOPSISnfstest_dio--server <server> [options]
DESCRIPTION
Functional direct I/O tests verify that every READ/WRITE is sent to the
server instead of the client caching the requests. Client bypasses read
ahead by sending the READ with only the requested bytes. Verify the
client correctly handles eof marker when reading the whole file. Verify
client ignores delegation while writing a file.
Direct I/O on pNFS tests verify the client sends the READ/WRITE to the
correct DS or the MDS if using a PAGESIZE aligned buffer or not,
respectively.
Direct I/O data correctness tests verify that a file written with
buffered I/O is read correctly with direct I/O. Verify that a file
written with direct I/O is read correctly with buffered I/O.
Vectored I/O tests verify coalescence of multiple vectors into one
READ/WRITE packet when all vectors are PAGESIZE aligned. Vectors with
different alignments are sent on separate packets.
Valid for NFSv4.0 and NFSv4.1 including pNFS.
OPTIONS--version
show program's version number and exit
-h, --help
show this help message and exit
-f FILE, --file=FILE
Options file
-s SERVER, --server=SERVER
Server name or IP address
-p PORT, --port=PORT
NFS server port [default: 2049]
--nfsversion=NFSVERSION
NFS version [default: 4]
--minorversion=MINORVERSION
Minor version [default: 1]
-e EXPORT, --export=EXPORT
Exported file system to mount [default: '/']
-m MTPOINT, --mtpoint=MTPOINT
Mount point [default: '/mnt/t']
--datadir=DATADIR
Data directory where files are created [default: '']
-o MTOPTS, --mtopts=MTOPTS
Mount options [default: 'hard,intr']
-i INTERFACE, --interface=INTERFACE
Device interface [default: 'eth0']
-v VERBOSE, --verbose=VERBOSE
Verbose level [default: 'none']
--nocleanup
Do not cleanup
--rmtraces
Remove trace files [default: remove trace files if no errors]
--keeptraces
Do not remove any trace files [default: remove trace files if no
errors]
--createlog
Create log file
--bugmsgs=BUGMSGS
File containing test messages to mark as bugs if they failed
--ignore
Ignore all bugs given by bugmsgs
--nomount
Do not mount server
--basename=BASENAME
Base name for all files and logs [default: automatically gener‐
ated]
--tverbose=TVERBOSE
Verbose level for test messages [default: '1']
--filesize=FILESIZE
File size to use for test files [default: 262144]
--nfiles=NFILES
Number of files to create [default: 2]
--rsize=RSIZE
Read size to use when reading files [default: 4096]
--wsize=WSIZE
Write size to use when writing files [default: 4096]
--iodelay=IODELAY
Seconds to delay I/O operations [default: 0.1]
--offset-delta=OFFSET_DELTA
Read/Write offset delta [default: 4096]
--warnings
Display warnings
--nfsdebug=NFSDEBUG
Set NFS kernel debug flags and save log messages [default: '']
--rpcdebug=RPCDEBUG
Set RPC kernel debug flags and save log messages [default: '']
--sudo=SUDO
Full path of binary for sudo [default: '/usr/bin/sudo']
--tcpdump=TCPDUMP
Full path of binary for tcpdump [default: '/usr/sbin/tcpdump']
--iptables=IPTABLES
Full path of binary for iptables [default: '/sbin/iptables']
--messages=MESSAGES
Full path of log messages file [default: '/var/log/messages']
--tmpdir=TMPDIR
Temporary directory [default: '/tmp']
--runtest=RUNTEST
Comma separated list of tests to run [default: 'all']
--iotype=IOTYPE
List of I/O types to test [default: 'read,write']
--biotype=BIOTYPE
List of buffered I/O types to test [default: 'none,read,write']
--withdeleg=WITHDELEG
Use delegation on tests [default: both without and with delega‐
tion]
TESTS
eof
Verify eof marker is handled correctly when reading the end of the
file.
correctness
Verify data correctness when reading/writing using direct I/O. File
created with buffered I/O is read correctly with direct I/O. File cre‐
ated with direct I/O is read correctly with buffered I/O.
fstat
Verify fstat() gets correct file size after writing.
read
Verify READ is sent after writing when the file is open for both read
and write.
read_ahead
Verify READ is sent with only the requested bytes bypassing read ahead.
basic
Verify a packet is sent for each I/O request.
rsize
Verify multiple READ packets are sent for each read request having
request size > rsize.
wsize
Verify multiple WRITE packets are sent for each write request having
request size > wsize
aligned
Verify packet is sent to correct DS server when using a memory which is
PAGESIZE aligned.
nonaligned
Verify packet is sent to the MDS when using a memory which is not PAGE‐
SIZE aligned.
diffalign
Verify packets are sent to both the MDS and correct DS on same open
using buffers with different alignments.
stripesize
Verify multiple packets are sent for each request having the request
size greater than stripe size.
vectored_io
Verify vectored I/O functionality.
EXAMPLES
The only required option is --server
$ nfstest_dio--server 192.168.0.11
NOTES
The user id in the local host must have access to run commands as root
using the 'sudo' command without the need for a password.
SEE ALSOnfstest.test_util(1), nfstest_cache(1), nfstest_delegation(1),
nfstest_pnfs(1), nfstest_posix(1)BUGS
No known bugs.
AUTHOR
Jorge Mora (mora@netapp.com)
NFStest 1.0.2 10 April 2013 NFSTEST_DIO(1)