diff mbox series

[12/12] btrfs: use _offset helpers instead of offsetof in generic_bin_search

Message ID 51de9fc987057bc50097fd217e8a3fa51068a49c.1646692306.git.josef@toxicpanda.com (mailing list archive)
State New, archived
Headers show
Series btrfs: item helper prep work for snapshot_id | expand

Commit Message

Josef Bacik March 7, 2022, 10:33 p.m. UTC
The starting offset for the items/keys are going to be dependent on
extent tree v2, use the helpers instead of offsetof directly.

Signed-off-by: Josef Bacik <josef@toxicpanda.com>
---
 fs/btrfs/ctree.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Nikolay Borisov March 9, 2022, 1:51 p.m. UTC | #1
On 8.03.22 г. 0:33 ч., Josef Bacik wrote:
> The starting offset for the items/keys are going to be dependent on
> extent tree v2, use the helpers instead of offsetof directly.
> 
> Signed-off-by: Josef Bacik <josef@toxicpanda.com>
> ---
>   fs/btrfs/ctree.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
> index 1a6f24baf33b..6e8c02eec548 100644
> --- a/fs/btrfs/ctree.c
> +++ b/fs/btrfs/ctree.c
> @@ -781,10 +781,10 @@ static noinline int generic_bin_search(struct extent_buffer *eb, int low,
>   	}
>   
>   	if (btrfs_header_level(eb) == 0) {
> -		p = offsetof(struct btrfs_leaf, items);
> +		p = btrfs_item_nr_offset(eb, 0);

nit: This could be switched to BTRFS_LEAF_DATA_OFFSET.

>   		item_size = sizeof(struct btrfs_item);
>   	} else {
> -		p = offsetof(struct btrfs_node, ptrs);
> +		p = btrfs_node_key_ptr_offset(eb, 0);
>   		item_size = sizeof(struct btrfs_key_ptr);
>   	}
>
diff mbox series

Patch

diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
index 1a6f24baf33b..6e8c02eec548 100644
--- a/fs/btrfs/ctree.c
+++ b/fs/btrfs/ctree.c
@@ -781,10 +781,10 @@  static noinline int generic_bin_search(struct extent_buffer *eb, int low,
 	}
 
 	if (btrfs_header_level(eb) == 0) {
-		p = offsetof(struct btrfs_leaf, items);
+		p = btrfs_item_nr_offset(eb, 0);
 		item_size = sizeof(struct btrfs_item);
 	} else {
-		p = offsetof(struct btrfs_node, ptrs);
+		p = btrfs_node_key_ptr_offset(eb, 0);
 		item_size = sizeof(struct btrfs_key_ptr);
 	}