1*788c47fcSHans Rosenfeld.\" 2*788c47fcSHans Rosenfeld.\" This file and its contents are supplied under the terms of the 3*788c47fcSHans Rosenfeld.\" Common Development and Distribution License ("CDDL"), version 1.0. 4*788c47fcSHans Rosenfeld.\" You may only use this file in accordance with the terms of version 5*788c47fcSHans Rosenfeld.\" 1.0 of the CDDL. 6*788c47fcSHans Rosenfeld.\" 7*788c47fcSHans Rosenfeld.\" A full copy of the text of the CDDL should have accompanied this 8*788c47fcSHans Rosenfeld.\" source. A copy of the CDDL is also available via the Internet at 9*788c47fcSHans Rosenfeld.\" http://www.illumos.org/license/CDDL. 10*788c47fcSHans Rosenfeld.\" 11*788c47fcSHans Rosenfeld.\" 12*788c47fcSHans Rosenfeld.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved. 13*788c47fcSHans Rosenfeld.\" 14*788c47fcSHans Rosenfeld.Dd July 20, 2015 15*788c47fcSHans Rosenfeld.Dt NVME 7D 16*788c47fcSHans Rosenfeld.Os 17*788c47fcSHans Rosenfeld.Sh NAME 18*788c47fcSHans Rosenfeld.Nm nvme 19*788c47fcSHans Rosenfeld.Nd Intel NVMe compliant storage driver 20*788c47fcSHans Rosenfeld.Sh DESCRIPTION 21*788c47fcSHans RosenfeldThe 22*788c47fcSHans Rosenfeld.Nm 23*788c47fcSHans Rosenfelddriver uses the 24*788c47fcSHans Rosenfeld.Xr blkdev 7D 25*788c47fcSHans Rosenfeldframework to provide access to 26*788c47fcSHans Rosenfeld.Tn Intel 27*788c47fcSHans RosenfeldNVMe compliant solid-state storage devices. 28*788c47fcSHans Rosenfeld.Lp 29*788c47fcSHans RosenfeldNVMe devices supporting multiple namespaces will present each 30*788c47fcSHans Rosenfeldnamespace as its own 31*788c47fcSHans Rosenfeld.Xr blkdev 7D 32*788c47fcSHans Rosenfeldinstance in the system. 33*788c47fcSHans Rosenfeld. 34*788c47fcSHans Rosenfeld.Sh CONFIGURATION 35*788c47fcSHans RosenfeldThe 36*788c47fcSHans Rosenfeld.Nm 37*788c47fcSHans Rosenfelddriver can be configured by defining properties in the \fBnvme.conf\fR 38*788c47fcSHans Rosenfeldfile. The parameters are considered an unstable interface, subject to 39*788c47fcSHans Rosenfeldchange without notice. The following properties are currently 40*788c47fcSHans Rosenfeldsupported: 41*788c47fcSHans Rosenfeld.Bl -tag -width Va 42*788c47fcSHans Rosenfeld.It Va strict-version 43*788c47fcSHans RosenfeldThis can be set to 0 to allow 44*788c47fcSHans Rosenfeld.Nm 45*788c47fcSHans Rosenfeldto attach to devices supporting newer version of the NVMe 46*788c47fcSHans Rosenfeldspecification. The default value is 1, limiting 47*788c47fcSHans Rosenfeld.Nm 48*788c47fcSHans Rosenfeldto work with devices up to specification version 1.0. 49*788c47fcSHans Rosenfeld.It Va ignore-unknown-vendor-status 50*788c47fcSHans RosenfeldThis can be set to 1 to allow 51*788c47fcSHans Rosenfeld.Nm 52*788c47fcSHans Rosenfeldto continue operating even if it receives an unknown vendor command 53*788c47fcSHans Rosenfeldstatus. 54*788c47fcSHans Rosenfeld.It Va admin-queue-len 55*788c47fcSHans RosenfeldThis is the number of entries in the admin command queue. Legal values 56*788c47fcSHans Rosenfeldare between 16 and 4096, the default value is 256. 57*788c47fcSHans Rosenfeld.It Va io-queue-len 58*788c47fcSHans RosenfeldThis is the number of entries in each I/O command queue. Legal values 59*788c47fcSHans Rosenfeldare between 16 and 65536, the default value is 1024. 60*788c47fcSHans Rosenfeld.It Va async-event-limit 61*788c47fcSHans RosenfeldThis is the maximum number of asynchronous event requests issued by 62*788c47fcSHans Rosenfeldthe driver. Asynchronous events are used to report error conditions. 63*788c47fcSHans RosenfeldThe driver will never use more asynchronous events than this value, or 64*788c47fcSHans Rosenfeldwhat the hardware supports if it is less, or what 1/10th of the admin 65*788c47fcSHans Rosenfeldqueue length if it is less. 66*788c47fcSHans Rosenfeld.El 67*788c47fcSHans Rosenfeld. 68*788c47fcSHans Rosenfeld.Sh FILES 69*788c47fcSHans Rosenfeld.Bl -tag -compact -width Pa 70*788c47fcSHans Rosenfeld.It Pa /dev/dsk/cntnd0sn 71*788c47fcSHans RosenfeldBlock device minor nodes. 72*788c47fcSHans Rosenfeld.It Pa /dev/rdsk/cntnd0sn 73*788c47fcSHans RosenfeldRaw block device minor nodes. 74*788c47fcSHans Rosenfeld.El 75*788c47fcSHans Rosenfeld.Lp 76*788c47fcSHans RosenfeldIn the device minor nodes, the following substitutions may occur: 77*788c47fcSHans Rosenfeld.Bl -tag -offset indent -width Va 78*788c47fcSHans Rosenfeld.It Va cn 79*788c47fcSHans RosenfeldA controller number, typically one for each 80*788c47fcSHans Rosenfeld.Nm 81*788c47fcSHans Rosenfelddevice found. Controller numbers are dynamically assigned by the 82*788c47fcSHans Rosenfeldsystem. 83*788c47fcSHans Rosenfeld.It Va tn 84*788c47fcSHans RosenfeldThe target number, this corresponds to the namespace ID used by the 85*788c47fcSHans Rosenfeldhardware. Namespace ID 0 is reserved, hence target numbers start with 86*788c47fcSHans Rosenfeld1. 87*788c47fcSHans Rosenfeld.It Va sn 88*788c47fcSHans RosenfeldThis is the 89*788c47fcSHans Rosenfeld.Em slice 90*788c47fcSHans Rosenfeldnumber, representing a subset of the disk. See 91*788c47fcSHans Rosenfeld.Xr dkio 7I . 92*788c47fcSHans Rosenfeld.El 93*788c47fcSHans Rosenfeld. 94*788c47fcSHans Rosenfeld.Sh SEE ALSO 95*788c47fcSHans Rosenfeld.Xr blkdev 7D 96