Message ID | fb36e9a074e51af822fe97f2759e62394ec17eaf.1624871611.git.johannes.thumshirn@wdc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | btrfs: zoned: remove fs_info->max_zone_append_size | expand |
On 28/6/21 5:13 pm, Johannes Thumshirn wrote: > Remove fs_info->max_zone_append_size, it doesn't serve any purpose. > Commit 862931c76327 (btrfs: introduce max_zone_append_size) add it. The purpose of it is to limit all IO append size. So now, we shall only track the max_zone_append_size in device->zone_info->max_zone_append_size, which is per device. btrfs_check_zoned_mode() found the lowest of these per device max_zone_append_size but it didn't do much about it. It looks like I am missing the big picture. Thanks, Anand > Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> > --- > fs/btrfs/ctree.h | 2 -- > fs/btrfs/extent_io.c | 1 - > fs/btrfs/zoned.c | 4 ---- > 3 files changed, 7 deletions(-) > > diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h > index d7ef4d7d2c1a..7a9cf4d12157 100644 > --- a/fs/btrfs/ctree.h > +++ b/fs/btrfs/ctree.h > @@ -1014,8 +1014,6 @@ struct btrfs_fs_info { > u64 zoned; > }; > > - /* Max size to emit ZONE_APPEND write command */ > - u64 max_zone_append_size; > struct mutex zoned_meta_io_lock; > spinlock_t treelog_bg_lock; > u64 treelog_bg; > diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c > index 9e81d25dea70..1f947e24091a 100644 > --- a/fs/btrfs/extent_io.c > +++ b/fs/btrfs/extent_io.c > @@ -3266,7 +3266,6 @@ static int calc_bio_boundaries(struct btrfs_bio_ctrl *bio_ctrl, > return 0; > } > > - ASSERT(fs_info->max_zone_append_size > 0); > /* Ordered extent not yet created, so we're good */ > ordered = btrfs_lookup_ordered_extent(inode, logical); > if (!ordered) { > diff --git a/fs/btrfs/zoned.c b/fs/btrfs/zoned.c > index 297c0b1c0634..fa481d1ce524 100644 > --- a/fs/btrfs/zoned.c > +++ b/fs/btrfs/zoned.c > @@ -619,7 +619,6 @@ int btrfs_check_zoned_mode(struct btrfs_fs_info *fs_info) > } > > fs_info->zone_size = zone_size; > - fs_info->max_zone_append_size = max_zone_append_size; > fs_info->fs_devices->chunk_alloc_policy = BTRFS_CHUNK_ALLOC_ZONED; > > /* > @@ -1318,9 +1317,6 @@ bool btrfs_use_zone_append(struct btrfs_inode *inode, u64 start) > if (!btrfs_is_zoned(fs_info)) > return false; > > - if (!fs_info->max_zone_append_size) > - return false; > - > if (!is_data_inode(&inode->vfs_inode)) > return false; > >
On 28/06/2021 12:39, Anand Jain wrote: > On 28/6/21 5:13 pm, Johannes Thumshirn wrote: >> Remove fs_info->max_zone_append_size, it doesn't serve any purpose. >> > > > Commit 862931c76327 (btrfs: introduce max_zone_append_size) add it. > The purpose of it is to limit all IO append size. So now, we shall > only track the max_zone_append_size in > device->zone_info->max_zone_append_size, which is per device. > > btrfs_check_zoned_mode() found the lowest of these per device > max_zone_append_size but it didn't do much about it. Exactly. We don't do anything with it, so it's completely unneeded. Also as the max_zone_append_size is per device it doesn't make much sense to track it globally. It is basically set but never read.
On 28/6/21 7:12 pm, Johannes Thumshirn wrote: > On 28/06/2021 12:39, Anand Jain wrote: >> On 28/6/21 5:13 pm, Johannes Thumshirn wrote: >>> Remove fs_info->max_zone_append_size, it doesn't serve any purpose. >>> >> >> >> Commit 862931c76327 (btrfs: introduce max_zone_append_size) add it. >> The purpose of it is to limit all IO append size. So now, we shall >> only track the max_zone_append_size in >> device->zone_info->max_zone_append_size, which is per device. >> >> btrfs_check_zoned_mode() found the lowest of these per device >> max_zone_append_size but it didn't do much about it. > > Exactly. We don't do anything with it, so it's completely unneeded. Also > as the max_zone_append_size is per device it doesn't make much sense to > track it globally. It is basically set but never read. > Oh. Ok. Looks good from this POV. Reviewed-by: Anand Jain <anand.jain@oracle.com> Thanks, Anand
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h index d7ef4d7d2c1a..7a9cf4d12157 100644 --- a/fs/btrfs/ctree.h +++ b/fs/btrfs/ctree.h @@ -1014,8 +1014,6 @@ struct btrfs_fs_info { u64 zoned; }; - /* Max size to emit ZONE_APPEND write command */ - u64 max_zone_append_size; struct mutex zoned_meta_io_lock; spinlock_t treelog_bg_lock; u64 treelog_bg; diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index 9e81d25dea70..1f947e24091a 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c @@ -3266,7 +3266,6 @@ static int calc_bio_boundaries(struct btrfs_bio_ctrl *bio_ctrl, return 0; } - ASSERT(fs_info->max_zone_append_size > 0); /* Ordered extent not yet created, so we're good */ ordered = btrfs_lookup_ordered_extent(inode, logical); if (!ordered) { diff --git a/fs/btrfs/zoned.c b/fs/btrfs/zoned.c index 297c0b1c0634..fa481d1ce524 100644 --- a/fs/btrfs/zoned.c +++ b/fs/btrfs/zoned.c @@ -619,7 +619,6 @@ int btrfs_check_zoned_mode(struct btrfs_fs_info *fs_info) } fs_info->zone_size = zone_size; - fs_info->max_zone_append_size = max_zone_append_size; fs_info->fs_devices->chunk_alloc_policy = BTRFS_CHUNK_ALLOC_ZONED; /* @@ -1318,9 +1317,6 @@ bool btrfs_use_zone_append(struct btrfs_inode *inode, u64 start) if (!btrfs_is_zoned(fs_info)) return false; - if (!fs_info->max_zone_append_size) - return false; - if (!is_data_inode(&inode->vfs_inode)) return false;
Remove fs_info->max_zone_append_size, it doesn't serve any purpose. Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> --- fs/btrfs/ctree.h | 2 -- fs/btrfs/extent_io.c | 1 - fs/btrfs/zoned.c | 4 ---- 3 files changed, 7 deletions(-)