mbox series

[00/24] btrfs: cleanups and small fixes mostly around block reserves

Message ID cover.1679326426.git.fdmanana@suse.com (mailing list archive)
Headers show
Series btrfs: cleanups and small fixes mostly around block reserves | expand

Message

Filipe Manana March 21, 2023, 11:13 a.m. UTC
From: Filipe Manana <fdmanana@suse.com>

A set of cleanups and small fixes that started as part of a larger work,
mostly around block reserves and space reservation, but as they are mostly
trivial and independent of the rest of that work, I'm sending them out
separately. More details on the individual changelogs.

Filipe Manana (24):
  btrfs: pass a bool to btrfs_block_rsv_migrate() at evict_refill_and_join()
  btrfs: pass a bool size update argument to btrfs_block_rsv_add_bytes()
  btrfs: remove check for NULL block reserve at btrfs_block_rsv_check()
  btrfs: update documentation for BTRFS_RESERVE_FLUSH_EVICT flush method
  btrfs: update flush method assertion when reserving space
  btrfs: initialize ret to -ENOSPC at __reserve_bytes()
  btrfs: simplify btrfs_should_throttle_delayed_refs()
  btrfs: collapse should_end_transaction() into btrfs_should_end_transaction()
  btrfs: remove bytes_used argument from btrfs_make_block_group()
  btrfs: count extents before taking inode's spinlock when reserving metadata
  btrfs: remove redundant counter check at btrfs_truncate_inode_items()
  btrfs: simplify btrfs_block_rsv_refill()
  btrfs: remove obsolete delayed ref throttling logic when truncating items
  btrfs: don't throttle on delayed items when evicting deleted inode
  btrfs: calculate the right space for a single delayed ref when refilling
  btrfs: accurately calculate number of delayed refs when flushing
  btrfs: constify fs_info argument of the metadata size calculation helpers
  btrfs: constify fs_info argument for the reclaim items calculation helpers
  btrfs: add helper to calculate space for delayed references
  btrfs: calculate correct amount of space for delayed reference when evicting
  btrfs: fix calculation of the global block reserve's size
  btrfs: use a constant for the number of metadata units needed for an unlink
  btrfs: calculate the right space for delayed refs when updating global reserve
  btrfs: simplify exit paths of btrfs_evict_inode()

 fs/btrfs/block-group.c    |  7 ++----
 fs/btrfs/block-group.h    |  2 +-
 fs/btrfs/block-rsv.c      | 21 +++++++----------
 fs/btrfs/block-rsv.h      |  2 +-
 fs/btrfs/delalloc-space.c |  2 +-
 fs/btrfs/delayed-ref.c    | 49 ++++-----------------------------------
 fs/btrfs/delayed-ref.h    | 22 +++++++++++++++++-
 fs/btrfs/disk-io.c        |  1 -
 fs/btrfs/extent-tree.c    | 27 ++-------------------
 fs/btrfs/fs.h             | 17 +++++++++++---
 fs/btrfs/inode-item.c     | 15 +++++-------
 fs/btrfs/inode.c          | 43 ++++++++++++++++------------------
 fs/btrfs/space-info.c     | 32 +++++++++++++++++++++----
 fs/btrfs/space-info.h     |  1 +
 fs/btrfs/transaction.c    | 15 ++++--------
 fs/btrfs/volumes.c        |  2 +-
 16 files changed, 115 insertions(+), 143 deletions(-)

Comments

Josef Bacik March 22, 2023, 2:37 p.m. UTC | #1
On Tue, Mar 21, 2023 at 11:13:36AM +0000, fdmanana@kernel.org wrote:
> From: Filipe Manana <fdmanana@suse.com>
> 
> A set of cleanups and small fixes that started as part of a larger work,
> mostly around block reserves and space reservation, but as they are mostly
> trivial and independent of the rest of that work, I'm sending them out
> separately. More details on the individual changelogs.
> 
> Filipe Manana (24):
>   btrfs: pass a bool to btrfs_block_rsv_migrate() at evict_refill_and_join()
>   btrfs: pass a bool size update argument to btrfs_block_rsv_add_bytes()
>   btrfs: remove check for NULL block reserve at btrfs_block_rsv_check()
>   btrfs: update documentation for BTRFS_RESERVE_FLUSH_EVICT flush method
>   btrfs: update flush method assertion when reserving space
>   btrfs: initialize ret to -ENOSPC at __reserve_bytes()
>   btrfs: simplify btrfs_should_throttle_delayed_refs()
>   btrfs: collapse should_end_transaction() into btrfs_should_end_transaction()
>   btrfs: remove bytes_used argument from btrfs_make_block_group()
>   btrfs: count extents before taking inode's spinlock when reserving metadata
>   btrfs: remove redundant counter check at btrfs_truncate_inode_items()
>   btrfs: simplify btrfs_block_rsv_refill()
>   btrfs: remove obsolete delayed ref throttling logic when truncating items
>   btrfs: don't throttle on delayed items when evicting deleted inode
>   btrfs: calculate the right space for a single delayed ref when refilling
>   btrfs: accurately calculate number of delayed refs when flushing
>   btrfs: constify fs_info argument of the metadata size calculation helpers
>   btrfs: constify fs_info argument for the reclaim items calculation helpers
>   btrfs: add helper to calculate space for delayed references
>   btrfs: calculate correct amount of space for delayed reference when evicting
>   btrfs: fix calculation of the global block reserve's size
>   btrfs: use a constant for the number of metadata units needed for an unlink
>   btrfs: calculate the right space for delayed refs when updating global reserve
>   btrfs: simplify exit paths of btrfs_evict_inode()
> 
>  fs/btrfs/block-group.c    |  7 ++----
>  fs/btrfs/block-group.h    |  2 +-
>  fs/btrfs/block-rsv.c      | 21 +++++++----------
>  fs/btrfs/block-rsv.h      |  2 +-
>  fs/btrfs/delalloc-space.c |  2 +-
>  fs/btrfs/delayed-ref.c    | 49 ++++-----------------------------------
>  fs/btrfs/delayed-ref.h    | 22 +++++++++++++++++-
>  fs/btrfs/disk-io.c        |  1 -
>  fs/btrfs/extent-tree.c    | 27 ++-------------------
>  fs/btrfs/fs.h             | 17 +++++++++++---
>  fs/btrfs/inode-item.c     | 15 +++++-------
>  fs/btrfs/inode.c          | 43 ++++++++++++++++------------------
>  fs/btrfs/space-info.c     | 32 +++++++++++++++++++++----
>  fs/btrfs/space-info.h     |  1 +
>  fs/btrfs/transaction.c    | 15 ++++--------
>  fs/btrfs/volumes.c        |  2 +-
>  16 files changed, 115 insertions(+), 143 deletions(-)

I reviewed this last night but I don't see my reply, so apologies if this is the
second email.  You can add

Reviewed-by: Josef Bacik <josef@toxicpanda.com>

to this series, thanks,

Josef
David Sterba March 23, 2023, 7:35 p.m. UTC | #2
On Tue, Mar 21, 2023 at 11:13:36AM +0000, fdmanana@kernel.org wrote:
> From: Filipe Manana <fdmanana@suse.com>
> 
> A set of cleanups and small fixes that started as part of a larger work,
> mostly around block reserves and space reservation, but as they are mostly
> trivial and independent of the rest of that work, I'm sending them out
> separately. More details on the individual changelogs.
> 
> Filipe Manana (24):
>   btrfs: pass a bool to btrfs_block_rsv_migrate() at evict_refill_and_join()
>   btrfs: pass a bool size update argument to btrfs_block_rsv_add_bytes()
>   btrfs: remove check for NULL block reserve at btrfs_block_rsv_check()
>   btrfs: update documentation for BTRFS_RESERVE_FLUSH_EVICT flush method
>   btrfs: update flush method assertion when reserving space
>   btrfs: initialize ret to -ENOSPC at __reserve_bytes()
>   btrfs: simplify btrfs_should_throttle_delayed_refs()
>   btrfs: collapse should_end_transaction() into btrfs_should_end_transaction()
>   btrfs: remove bytes_used argument from btrfs_make_block_group()
>   btrfs: count extents before taking inode's spinlock when reserving metadata
>   btrfs: remove redundant counter check at btrfs_truncate_inode_items()
>   btrfs: simplify btrfs_block_rsv_refill()
>   btrfs: remove obsolete delayed ref throttling logic when truncating items
>   btrfs: don't throttle on delayed items when evicting deleted inode
>   btrfs: calculate the right space for a single delayed ref when refilling
>   btrfs: accurately calculate number of delayed refs when flushing
>   btrfs: constify fs_info argument of the metadata size calculation helpers
>   btrfs: constify fs_info argument for the reclaim items calculation helpers
>   btrfs: add helper to calculate space for delayed references
>   btrfs: calculate correct amount of space for delayed reference when evicting
>   btrfs: fix calculation of the global block reserve's size
>   btrfs: use a constant for the number of metadata units needed for an unlink
>   btrfs: calculate the right space for delayed refs when updating global reserve
>   btrfs: simplify exit paths of btrfs_evict_inode()

Added to misc-next, thanks.