nvme: add support for streams and directives write-stream
authorJens Axboe <axboe@kernel.dk>
Tue, 27 Jun 2017 18:03:06 +0000 (12:03 -0600)
committerJens Axboe <axboe@kernel.dk>
Tue, 27 Jun 2017 18:03:06 +0000 (12:03 -0600)
commitfffa9ea153e2e78e373f02b5447ab588057c7c4d
treebe446c2b4f4f34ff1c28b3c066f6b5614130277a
parent2a436fe83a6484cdf791d4934a98a0c0b5d6de49
nvme: add support for streams and directives

This adds support for Directives in NVMe, particular for the Streams
directive. Support for Directives is a new feature in NVMe 1.3. It
allows a user to pass in information about where to store the data, so
that it the device can do so most effiently. If an application is
managing and writing data with different life times, mixing differently
retentioned data onto the same locations on flash can cause write
amplification to grow. This, in turn, will reduce performance and life
time of the device.

Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/core.c
drivers/nvme/host/nvme.h
include/linux/nvme.h