-
Notifications
You must be signed in to change notification settings - Fork 85
Home
Dnvme is a driver module targeting the compliance verification of NVM Express (NVMe) compliant hardware. The NVMe home page is http://www.nvmexpress.org.
Dnvme logic is platform specific which supports kernel versions 2.6.35 and higher. It has been developed against the tnvme (user space test application targeting the compliance verification of NVM Express (NVMe) at https://github.com/nvmecompliance/tnvme) on qnvme (NVM Express Device Emulation in QEMU at https://github.com/nvmeqemu/nvmeqemu) for Ubuntu distributions only. However the driver design is pretty generic and should support other platforms by just small changes in the required kernel API's depending upon kernel versions.
Dnvme is a test driver with a goal to verify hardware compliance against a written set of specifications. Functionality, not speed, was the main target for the driver. It was seen that satisfying both speed and functionality could not be addressed simultaneously in all aspects of this design. Thus when a decision had to be made as to which one to choose, functionality always won. As a result we ended up making dnvme driver a character driver rather than a block driver with an advanced range of IOCTL's to improve user space control required for testing.
[Design]