Re: [PATCH v3 0/3] btrfs: btrfs_bio and btrfs_io_bio rename

David Sterba
2021-09-17T11:39:42Z

On Wed, Sep 15, 2021 at 03:17:15PM +0800, Qu Wenruo wrote:
> The branch can be fetched from github, and is the preferred way to grab
> the code, as this patchset changed quite a lot of code.
> https://github.com/adam900710/linux/tree/chunk_refactor
>
> There are two structure, btrfs_io_bio and btrfs_bio, which have very
> similar names but completely different meanings.
>
> Btrfs_io_bio mostly works at logical bytenr layer (its
> bio->bi_iter.bi_sector points to btrfs logical bytenr), and just
> contains extra info like csum and mirror_num.
>
> And btrfs_io_bio is in fact the most utilized bio, as all data/metadata
> IO is using btrfs_io_bio.
>
> While btrfs_bio is completely a helper structure for mirrored IO
> submission (utilized by SINGLE/DUP/RAID1/RAID10), and contains RAID56
> maps for RAID56 (it doesn't utilize this structure for IO submission
> tracking).
>
> Such naming is completely anti-human.
>
> So this patchset will do the following renaming:
>
> - btrfs_bio -> btrfs_io_context
> Since it's not really used by all bios (only mirrored profiles utilize
> it), and it contains extra info for RAID56, it's not proper to name it
> with _bio suffix.
>
> Later we can integrate btrfs_io_context pointer into the new
> btrfs_bio.
>
> - btrfs_io_bio -> btrfs_logical_bio
> It is intentional not to reuse "btrfs_bio", which could cause
> confusion for later backport.
>
> Changelog:
> v2:
> - Rename btrfs_bio to btrfs_io_context (bioc)
> - Rename btrfs_io_bio to btrfs_bio
> Both suggested by Nikolay
>
> v3:
> - Fixes whiespace problems
> Caused by "dwi" vim commands
>
> - Update several modified comments
>
> - Rename btrfs_io_bio to btrfs_logical_bio
> To avoid backport confusion.
>
> Qu Wenruo (3):
> btrfs: rename btrfs_bio to btrfs_io_context
> btrfs: remove btrfs_bio_alloc() helper
> btrfs: rename struct btrfs_io_bio to btrfs_logical_bio

Added to misc-next, thanks.