Re: [PATCH v4 0/5] Write-placement hints and FDP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux