nvme: add support for streams and directives
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:05:56 +0000 (12:05 -0600)
commitf5d118406247acfc4fc481e441e01ea4d6318fdc
tree876a519c0799d1ce9d51d904f63ec2e2e27a36ce
parente6959b9350c6135b260d7b561153d9ad6c5d49ff
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