Module Name:    src
Committed By:   jdolecek
Date:           Fri Oct 21 20:55:26 UTC 2016

Modified Files:
        src/share/man/man4: nvme.4

Log Message:
update according to latest changes


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/share/man/man4/nvme.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/man/man4/nvme.4
diff -u src/share/man/man4/nvme.4:1.7 src/share/man/man4/nvme.4:1.8
--- src/share/man/man4/nvme.4:1.7	Sat Oct  8 17:46:06 2016
+++ src/share/man/man4/nvme.4	Fri Oct 21 20:55:25 2016
@@ -1,4 +1,4 @@
-.\"	$NetBSD: nvme.4,v 1.7 2016/10/08 17:46:06 jdolecek Exp $
+.\"	$NetBSD: nvme.4,v 1.8 2016/10/21 20:55:25 jdolecek Exp $
 .\"	$OpenBSD: nvme.4,v 1.2 2016/04/14 11:53:37 jmc Exp $
 .\"
 .\" Copyright (c) 2016 David Gwynne <d...@openbsd.org>
@@ -15,7 +15,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd October 8, 2016
+.Dd October 21, 2016
 .Dt NVME 4
 .Os
 .Sh NAME
@@ -55,27 +55,25 @@ MSI-X can have up to 2k.
 Each I/O queue pair has a separate command circular buffer.
 The
 .Nm
-specification allows up to 64k commands per queue, the driver currently allocates
-1024 items per queue by default.
+specification allows up to 64k commands per queue, the driver currently
+allocates 1024 entries per queue, or controller maximum, whatever is smaller. 
 Command submissions are done always on the current CPU, the command completion
 interrupt is handled on the CPU corresponding to the I/O queue ID
 - first I/O queue on CPU0, second I/O queue on CPU1, etc.
-Admin queue command completion is not tied to any CPU, it's handled by
-any CPU.
+Admin queue command completion is handled by CPU0 by default.
 To keep lock contention to minimum, it is recommended to keep this assignment,
 even though it is possible to reassign the interrupt handlers differently
 using
 .Xr intrctl 8 .
-The driver also uses soft interrupts to process command completions, in order to
-increase the total system I/O capacity and throughput.
 .Pp
 On systems without MSI, the driver uses a single HW interrupt handler for
 both admin and standard I/O commands.
-Command submissions are done on the current CPU, the command completion interrupt
-is handled on any available CPU.
+Command submissions are done on the current CPU, the command completion
+interrupt is handled on CPU0 by default.
 This leads to some lock contention, especially on command ccbs.
-Also, command completion handling must be done within the HW interrupt
-handler.
+.Pp
+The driver offloads command completion processing to soft interrupt,
+in order to increase the total system I/O capacity and throughput.
 .Sh FILES
 .Bl -tag -width /dev/nvmeX -compact
 .It Pa /dev/nvme*

Reply via email to