On 26.08.2024 22:36, Kanchan Joshi wrote:
Current write-hint infrastructure supports 6 temperature-based data life hints. The series extends the infrastructure with a new temperature-agnostic placement-type hint. New fcntl codes F_{SET/GET}_RW_HINT_EX allow to send the hint type/value on file. See patch #3 commit description for the details. Overall this creates 128 placement hint values [*] that users can pass. Patch #5 adds the ability to map these new hint values to nvme-specific placement-identifiers. Patch #4 restricts SCSI to use only life hint values. Patch #1 and #2 are simple prep patches. [*] While the user-interface can support more, this limit is due to the in-kernel plumbing consideration of the inode size. Pahole showed 32-bit hole in the inode, but the code had this comment too: /* 32-bit hole reserved for expanding i_fsnotify_mask */ Not must, but it will be good to know if a byte (or two) can be used here. Changes since v3: - 4 new patches to introduce write-placement hints - Make nvme patch use the placement hints rather than write-life hints Changes since v2: - Base it on nvme-6.11 and resolve a merge conflict Changes since v1: - Reduce the fetched plids from 128 to 6 (Keith) - Use struct_size for a calculation (Keith) - Handle robot/sparse warning Kanchan Joshi (4): fs, block: refactor enum rw_hint fcntl: rename rw_hint_* to rw_life_hint_* fcntl: add F_{SET/GET}_RW_HINT_EX nvme: enable FDP support Nitesh Shetty (1): sd: limit to use write life hints drivers/nvme/host/core.c | 81 ++++++++++++++++++++++++++++++++++++++ drivers/nvme/host/nvme.h | 4 ++ drivers/scsi/sd.c | 7 ++-- fs/buffer.c | 4 +- fs/f2fs/f2fs.h | 4 +- fs/f2fs/segment.c | 4 +- fs/fcntl.c | 79 ++++++++++++++++++++++++++++++++++--- include/linux/blk-mq.h | 2 +- include/linux/blk_types.h | 2 +- include/linux/fs.h | 2 +- include/linux/nvme.h | 19 +++++++++ include/linux/rw_hint.h | 20 +++++++--- include/uapi/linux/fcntl.h | 14 +++++++ 13 files changed, 218 insertions(+), 24 deletions(-) -- 2.25.1
Keith, Christoph, Martin Does this approach align with the offline conversation we had arund FMS? Comments on the list would help us move forward with this series. We would like to move the folks that are using off-tree patches for FDP to mainline support. Thanks, Javier