+ a filename for each of them to override the default. If
+ the ioengine used is 'net', the filename is the host, port,
+ and protocol to use in the format of =host/port/protocol.
+ See ioengine=net for more. If the ioengine is file based, you
+ can specify a number of files by separating the names with a
+ ':' colon. So if you wanted a job to open /dev/sda and /dev/sdb
+ as the two working files, you would use
+ filename=/dev/sda:/dev/sdb. '-' is a reserved name, meaning
+ stdin or stdout. Which of the two depends on the read/write
+ direction set.
+
+opendir=str Tell fio to recursively add any file it can find in this
+ directory and down the file system tree.
+
+lockfile=str Fio defaults to not doing any locking files before it does
+ IO to them. If a file or file descriptor is shared, fio
+ can serialize IO to that file to make the end result
+ consistent. This is usual for emulating real workloads that
+ share files. The lock modes are:
+
+ none No locking. The default.
+ exclusive Only one thread/process may do IO,
+ excluding all others.
+ readwrite Read-write locking on the file. Many
+ readers may access the file at the
+ same time, but writes get exclusive
+ access.
+
+ The option may be post-fixed with a lock batch number. If
+ set, then each thread/process may do that amount of IOs to
+ the file before giving up the lock. Since lock acquisition is
+ expensive, batching the lock/unlocks will speed up IO.
+
+readwrite=str