[PATCH] nvme: enable FDP support

Viacheslav Dubeyko slava at dubeyko.com
Tue May 14 12:00:48 PDT 2024



> On May 14, 2024, at 9:47 PM, Kanchan Joshi <joshiiitr at gmail.com> wrote:
> 
> On Mon, May 13, 2024 at 2:04 AM Viacheslav Dubeyko <slava at dubeyko.com> wrote:
>> 
>> 
>> 
>>> On May 10, 2024, at 4:40 PM, Kanchan Joshi <joshi.k at samsung.com> wrote:
>>> 
>>> 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.
>>> 
>>> Fetches the placement-identifiers (plids) if the device supports FDP.
>>> And map the incoming write-hints to plids.
>>> 
>> 
>> 
>> Great! Thanks for sharing  the patch.
>> 
>> Do  we have documentation that explains how, for example, kernel-space
>> file system can work with block layer to employ FDP?
> 
> This is primarily for user driven/exposed hints. For file system
> driven hints, the scheme is really file system specific and therefore,
> will vary from one to another.
> F2FS is one (and only at the moment) example. Its 'fs-based' policy
> can act as a reference for one way to go about it.

Yes, I completely see the point. I would like to employ the FDP in my
kernel-space file system (SSDFS). And I have a vision how I can do it.
But I simply would like to see some documentation with the explanation of
API and limitations of FDP for the case of kernel-space file systems.

Thanks,
Slava.




More information about the Linux-nvme mailing list