diff mbox series

btrfs: zoned: remove fs_info->max_zone_append_size

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

Commit Message

Johannes Thumshirn June 28, 2021, 9:13 a.m. UTC
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(-)

Comments

Anand Jain June 28, 2021, 10:38 a.m. UTC | #1
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;
>   
>
Johannes Thumshirn June 28, 2021, 11:12 a.m. UTC | #2
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.
Anand Jain June 28, 2021, 11:42 a.m. UTC | #3
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 mbox series

Patch

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;