+.. option:: xnvme_async=str : [xnvme]
+
+ Select the xnvme async command interface. This can take these values.
+
+ **emu**
+ This is default and used to emulate asynchronous I/O.
+ **thrpool**
+ Use thread pool for Asynchronous I/O.
+ **io_uring**
+ Use Linux io_uring/liburing for Asynchronous I/O.
+ **libaio**
+ Use Linux aio for Asynchronous I/O.
+ **posix**
+ Use POSIX aio for Asynchronous I/O.
+ **nil**
+ Use nil-io; For introspective perf. evaluation
+
+.. option:: xnvme_sync=str : [xnvme]
+
+ Select the xnvme synchronous command interface. This can take these values.
+
+ **nvme**
+ This is default and uses Linux NVMe Driver ioctl() for synchronous I/O.
+ **psync**
+ Use pread()/write() for synchronous I/O.
+
+.. option:: xnvme_admin=str : [xnvme]
+
+ Select the xnvme admin command interface. This can take these values.
+
+ **nvme**
+ This is default and uses linux NVMe Driver ioctl() for admin commands.
+ **block**
+ Use Linux Block Layer ioctl() and sysfs for admin commands.
+ **file_as_ns**
+ Use file-stat to construct NVMe idfy responses.
+
+.. option:: xnvme_dev_nsid=int : [xnvme]
+
+ xnvme namespace identifier, for userspace NVMe driver.
+
+.. option:: xnvme_iovec=int : [xnvme]
+
+ If this option is set. xnvme will use vectored read/write commands.
+