diff options
author | 2023-01-21 07:50:18 +0100 | |
---|---|---|
committer | 2023-02-15 19:38:52 +0100 | |
commit | 69ccf3f4244abc5f6d73ca5d8caf6b42a1db42c6 (patch) | |
tree | 60bfdf0a168ccbee436da4297f39b18a43ee2d24 /fs/btrfs/extent_io.c | |
parent | btrfs: handle checksum generation in the storage layer (diff) | |
download | linux-69ccf3f4244abc5f6d73ca5d8caf6b42a1db42c6.tar.gz linux-69ccf3f4244abc5f6d73ca5d8caf6b42a1db42c6.tar.bz2 linux-69ccf3f4244abc5f6d73ca5d8caf6b42a1db42c6.zip |
btrfs: handle recording of zoned writes in the storage layer
Move the code that splits the ordered extents and records the physical
location for them to the storage layer so that the higher level consumers
don't have to care about physical block numbers at all. This will also
allow to eventually remove accounting for the zone append write sizes in
the upper layer with a little bit more block layer work.
Reviewed-by: Naohiro Aota <naohiro.aota@wdc.com>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/extent_io.c')
-rw-r--r-- | fs/btrfs/extent_io.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index 41bcc0bfe56a..2983fe2e10fe 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c @@ -586,7 +586,6 @@ static void end_bio_extent_writepage(struct btrfs_bio *bbio) u64 start; u64 end; struct bvec_iter_all iter_all; - bool first_bvec = true; ASSERT(!bio_flagged(bio, BIO_CLONED)); bio_for_each_segment_all(bvec, bio, iter_all) { @@ -608,11 +607,6 @@ static void end_bio_extent_writepage(struct btrfs_bio *bbio) start = page_offset(page) + bvec->bv_offset; end = start + bvec->bv_len - 1; - if (first_bvec) { - btrfs_record_physical_zoned(inode, start, bio); - first_bvec = false; - } - end_extent_writepage(page, error, start, end); btrfs_page_clear_writeback(fs_info, page, start, bvec->bv_len); |