From: Josef Bacik <josef@toxicpanda.com>
To: Christoph Hellwig <hch@lst.de>
Cc: Chris Mason <clm@fb.com>, David Sterba <dsterba@suse.com>,
Naohiro Aota <naohiro.aota@wdc.com>,
linux-btrfs@vger.kernel.org
Subject: Re: [PATCH 2/7] btrfs; rename the disk_bytenr in strut btrfs_ordered_extent
Date: Mon, 12 Dec 2022 13:58:06 -0500 [thread overview]
Message-ID: <Y5d5vuENR9vIltLs@localhost.localdomain> (raw)
In-Reply-To: <20221212073724.12637-3-hch@lst.de>
On Mon, Dec 12, 2022 at 08:37:19AM +0100, Christoph Hellwig wrote:
> Rename the disk_bytenr field to logical to make it clear it holds
> a btrfs logical address.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
> fs/btrfs/inode.c | 18 +++++++++---------
> fs/btrfs/ordered-data.c | 10 +++++-----
> fs/btrfs/ordered-data.h | 2 +-
> fs/btrfs/relocation.c | 2 +-
> fs/btrfs/zoned.c | 4 ++--
> include/trace/events/btrfs.h | 2 +-
> 6 files changed, 19 insertions(+), 19 deletions(-)
>
> diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
> index 373b7281f5c7dd..3a3a3e0e9484c6 100644
> --- a/fs/btrfs/inode.c
> +++ b/fs/btrfs/inode.c
> @@ -2667,9 +2667,9 @@ blk_status_t btrfs_extract_ordered_extent(struct btrfs_bio *bbio)
> goto out;
> }
>
> - ordered_end = ordered->disk_bytenr + ordered->disk_num_bytes;
> + ordered_end = ordered->logical + ordered->disk_num_bytes;
> /* bio must be in one ordered extent */
> - if (WARN_ON_ONCE(start < ordered->disk_bytenr || end > ordered_end)) {
> + if (WARN_ON_ONCE(start < ordered->logical || end > ordered_end)) {
> ret = -EINVAL;
> goto out;
> }
> @@ -2681,7 +2681,7 @@ blk_status_t btrfs_extract_ordered_extent(struct btrfs_bio *bbio)
> }
>
> file_len = ordered->num_bytes;
> - pre = start - ordered->disk_bytenr;
> + pre = start - ordered->logical;
> post = ordered_end - end;
>
> ret = btrfs_split_ordered_extent(ordered, pre, post);
> @@ -3094,7 +3094,7 @@ static int insert_ordered_extent_file_extent(struct btrfs_trans_handle *trans,
>
> memset(&stack_fi, 0, sizeof(stack_fi));
> btrfs_set_stack_file_extent_type(&stack_fi, BTRFS_FILE_EXTENT_REG);
> - btrfs_set_stack_file_extent_disk_bytenr(&stack_fi, oe->disk_bytenr);
> + btrfs_set_stack_file_extent_disk_bytenr(&stack_fi, oe->logical);
> btrfs_set_stack_file_extent_disk_num_bytes(&stack_fi,
> oe->disk_num_bytes);
> btrfs_set_stack_file_extent_offset(&stack_fi, oe->offset);
> @@ -3165,7 +3165,7 @@ int btrfs_finish_ordered_io(struct btrfs_ordered_extent *ordered_extent)
> /* A valid bdev implies a write on a sequential zone */
> if (ordered_extent->bdev) {
> btrfs_rewrite_logical_zoned(ordered_extent);
> - btrfs_zone_finish_endio(fs_info, ordered_extent->disk_bytenr,
> + btrfs_zone_finish_endio(fs_info, ordered_extent->logical,
> ordered_extent->disk_num_bytes);
> }
>
> @@ -3220,7 +3220,7 @@ int btrfs_finish_ordered_io(struct btrfs_ordered_extent *ordered_extent)
> ordered_extent->file_offset,
> ordered_extent->file_offset +
> logical_len);
> - btrfs_zoned_release_data_reloc_bg(fs_info, ordered_extent->disk_bytenr,
> + btrfs_zoned_release_data_reloc_bg(fs_info, ordered_extent->logical,
> ordered_extent->disk_num_bytes);
> } else {
> BUG_ON(root == fs_info->tree_root);
> @@ -3228,7 +3228,7 @@ int btrfs_finish_ordered_io(struct btrfs_ordered_extent *ordered_extent)
> if (!ret) {
> clear_reserved_extent = false;
> btrfs_release_delalloc_bytes(fs_info,
> - ordered_extent->disk_bytenr,
> + ordered_extent->logical,
> ordered_extent->disk_num_bytes);
> }
> }
> @@ -3312,11 +3312,11 @@ int btrfs_finish_ordered_io(struct btrfs_ordered_extent *ordered_extent)
> */
> if (ret && btrfs_test_opt(fs_info, DISCARD_SYNC))
> btrfs_discard_extent(fs_info,
> - ordered_extent->disk_bytenr,
> + ordered_extent->logical,
> ordered_extent->disk_num_bytes,
> NULL);
> btrfs_free_reserved_extent(fs_info,
> - ordered_extent->disk_bytenr,
> + ordered_extent->logical,
> ordered_extent->disk_num_bytes, 1);
> }
> }
> diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c
> index 4bed0839b64033..72e1acd4624169 100644
> --- a/fs/btrfs/ordered-data.c
> +++ b/fs/btrfs/ordered-data.c
> @@ -199,7 +199,7 @@ int btrfs_add_ordered_extent(struct btrfs_inode *inode, u64 file_offset,
> entry->file_offset = file_offset;
> entry->num_bytes = num_bytes;
> entry->ram_bytes = ram_bytes;
> - entry->disk_bytenr = disk_bytenr;
> + entry->logical = disk_bytenr;
> entry->disk_num_bytes = disk_num_bytes;
> entry->offset = offset;
> entry->bytes_left = num_bytes;
> @@ -642,8 +642,8 @@ u64 btrfs_wait_ordered_extents(struct btrfs_root *root, u64 nr,
> ordered = list_first_entry(&splice, struct btrfs_ordered_extent,
> root_extent_list);
>
> - if (range_end <= ordered->disk_bytenr ||
> - ordered->disk_bytenr + ordered->disk_num_bytes <= range_start) {
> + if (range_end <= ordered->logical ||
> + ordered->logical + ordered->disk_num_bytes <= range_start) {
> list_move_tail(&ordered->root_extent_list, &skipped);
> cond_resched_lock(&root->ordered_extent_lock);
> continue;
> @@ -1098,7 +1098,7 @@ static int clone_ordered_extent(struct btrfs_ordered_extent *ordered, u64 pos,
> struct inode *inode = ordered->inode;
> struct btrfs_fs_info *fs_info = BTRFS_I(inode)->root->fs_info;
> u64 file_offset = ordered->file_offset + pos;
> - u64 disk_bytenr = ordered->disk_bytenr + pos;
> + u64 disk_bytenr = ordered->logical + pos;
> unsigned long flags = ordered->flags & BTRFS_ORDERED_TYPE_FLAGS;
>
> /*
> @@ -1133,7 +1133,7 @@ int btrfs_split_ordered_extent(struct btrfs_ordered_extent *ordered, u64 pre,
> tree->last = NULL;
>
> ordered->file_offset += pre;
> - ordered->disk_bytenr += pre;
> + ordered->logical += pre;
> ordered->num_bytes -= (pre + post);
> ordered->disk_num_bytes -= (pre + post);
> ordered->bytes_left -= (pre + post);
> diff --git a/fs/btrfs/ordered-data.h b/fs/btrfs/ordered-data.h
> index 89f82b78f590f3..71f200b14a9369 100644
> --- a/fs/btrfs/ordered-data.h
> +++ b/fs/btrfs/ordered-data.h
> @@ -96,7 +96,7 @@ struct btrfs_ordered_extent {
> */
> u64 num_bytes;
> u64 ram_bytes;
> - u64 disk_bytenr;
> + u64 logical;
There's a comment above here that reads
/*
* These fields directly correspond to the same fields in
* btrfs_file_extent_item.
*/
which with this change is no longer true. Please update the comment
appropriately, other than that the change is reasonable to me, you can add
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
once you've updated the patch. Thanks,
Josef
next prev parent reply other threads:[~2022-12-12 19:01 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-12 7:37 small btrfs-zoned fixlets and optimizations Christoph Hellwig
2022-12-12 7:37 ` [PATCH 1/7] btrfs: use file_offset to limit bios size in calc_bio_boundaries Christoph Hellwig
2022-12-12 18:54 ` Josef Bacik
2022-12-13 14:08 ` Christoph Hellwig
2022-12-12 7:37 ` [PATCH 2/7] btrfs; rename the disk_bytenr in strut btrfs_ordered_extent Christoph Hellwig
2022-12-12 18:58 ` Josef Bacik [this message]
2022-12-13 14:08 ` Christoph Hellwig
2022-12-14 17:01 ` Josef Bacik
2022-12-12 7:37 ` [PATCH 3/7] btrfs: set bbio->file_offset in alloc_new_bio Christoph Hellwig
2022-12-12 7:37 ` [PATCH 4/7] btrfs: pass a btrfs_bio to btrfs_use_append Christoph Hellwig
2022-12-12 12:01 ` Johannes Thumshirn
2022-12-12 7:37 ` [PATCH 5/7] btrfs: never return true for reads in btrfs_use_zone_append Christoph Hellwig
2022-12-12 12:02 ` Johannes Thumshirn
2022-12-12 7:37 ` [PATCH 6/7] btrfs: don't rely on unchanging ->bi_bdev for zone append remaps Christoph Hellwig
2022-12-12 7:37 ` [PATCH 7/7] btrfs: remove the bdev argument to btrfs_rmap_block Christoph Hellwig
2022-12-12 18:59 ` small btrfs-zoned fixlets and optimizations Josef Bacik
2023-02-09 20:13 ` David Sterba
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y5d5vuENR9vIltLs@localhost.localdomain \
--to=josef@toxicpanda.com \
--cc=clm@fb.com \
--cc=dsterba@suse.com \
--cc=hch@lst.de \
--cc=linux-btrfs@vger.kernel.org \
--cc=naohiro.aota@wdc.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox