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