]> www.infradead.org Git - users/jedix/linux-maple.git/commit
btrfs: pass write-hint for buffered IO
authorJing Xia <j.xia@samsung.com>
Tue, 3 Sep 2024 05:40:12 +0000 (13:40 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 13 Jan 2025 13:53:21 +0000 (14:53 +0100)
commit2fa07d7a0f0084d9777f076a154ad10e759ba731
tree724a6ad3e6b856a10b5255eebc4fe0eae9f1bd7c
parent3681dbe0afeef3946b71a7af05e31375d6e70b90
btrfs: pass write-hint for buffered IO

Commit 449813515d3e ("block, fs: Restore the per-bio/request data
lifetime fields") restored write-hint support in btrfs. But that is
applicable only for direct IO. This patch supports passing
write-hint for buffered IO from btrfs file system to block layer
by filling bi_write_hint of struct bio in alloc_new_bio().

There's an ongoing discussion which devices can use that,
https://lore.kernel.org/all/20240910150200.6589-6-joshi.k@samsung.com,
in SCSI there's support using sd_group_number() and
sd_setup_rw32_cmnd().

The hint goes from the application directly to the block device so it's
up to the application to set up everything properly to utilize the
different hint classes.

Link: https://lore.kernel.org/all/20240910150200.6589-6-joshi.k@samsung.com
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Jing Xia <j.xia@samsung.com>
[ Add more context and use case. ]
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/extent_io.c