]> www.infradead.org Git - nvme.git/commit
nvme: enable FDP support nvme-fdp
authorKanchan Joshi <joshi.k@samsung.com>
Tue, 2 Jul 2024 10:26:19 +0000 (15:56 +0530)
committerKeith Busch <kbusch@kernel.org>
Mon, 8 Jul 2024 17:34:45 +0000 (10:34 -0700)
commit266c0b5092161ad0e83155552944f223e8ef1680
tree06e47409923cd2c85652717584d22475af728fe7
parent89f58f96d1e2357601c092d85b40a2109cf25ef3
nvme: enable FDP support

Flexible Data Placement (FDP), as ratified in TP 4146a, allows the host
to control the placement of logical blocks so as to reduce the SSD WAF.

Userspace can send the data lifetime information using the write hints.
The SCSI driver (sd) can already pass this information to the SCSI
devices. This patch does the same for NVMe.

Fetch the placement-identifiers if the device supports FDP.
The incoming write-hint is mapped to a placement-identifier, which in
turn is set in the DSPEC field of the write command.

Signed-off-by: Kanchan Joshi <joshi.k@samsung.com>
Signed-off-by: Hui Qi <hui81.qi@samsung.com>
Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
Nacked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
drivers/nvme/host/core.c
drivers/nvme/host/nvme.h
include/linux/nvme.h