Skip to content

nvme driver

Ping Huang edited this page Apr 5, 2016 · 3 revisions

This driver is compatible with NVMe SPEC 1.0e.

Features

+---------------------------------------------------------------+
| Multiple Queues              |              Yes               |
+------------------------------+--------------------------------+
| Queue Arbitration            | Round Robin; 1x1 for SQ and CQ |
+------------------------------+--------------------------------+
| Interrupt                    |             MSI-x              |
+------------------------------+--------------------------------+
| Admin Pass Through           |              Yes               |
+------------------------------+--------------------------------+
| Multiple Namespaces          |              No                |
+------------------------------+--------------------------------+
| SMART                        |              Yes               |
+------------------------------+--------------------------------+
| Hotplug                      | Yes (But not for AIC device)   |
+------------------------------+--------------------------------+
| Firmware Update              |              Yes               |
+------------------------------+--------------------------------+
| End-to-End Data Protection   |              No                |
+------------------------------+--------------------------------+
| Power Management             |              No                |
+------------------------------+--------------------------------+
| SR-IOV                       |              No                |
+------------------------------+--------------------------------+
| Format                       |              Yes               |
+------------------------------+--------------------------------+
| Security Send/Receive        |              No                |
+------------------------------+--------------------------------+
| Core Dump                    |              Yes               |
+------------------------------+--------------------------------+
| Boot                         |              Yes               |
+---------------------------------------------------------------+

Driver Architecture

NVMe Driver Architecture

  • Native Model: Register/unregister driver and bring up device
  • VMKLinux MOdel: Deprecated
  • OS Libs: Provide OS related resource, such as heap, lock, interrupt...
  • Mgmt: Management interface to pass through admin command
  • SCSI Emulation Layer: The storage stack of ESXi is SCSI based, responsible for translating SCSI to NVMe command
  • NVMe Core: NVMe related stuff, such as queue construction, command issue, register read/write...
Clone this wiki locally